Linux Foundation: Bugs Can Be Made Shallow With Proper Funding
jones_supa writes The record amount of security challenges in 2014 undermined the confidence many had in high quality of open source software. Jim Zemlin, executive director of the Linux Foundation, addressed the issue head-on during last week's Linux Collaboration Summit. Zemlin quoted the oft-repeated Linus' law, which states that given enough eyes, all bugs are shallow. "In these cases the eyeballs weren't really looking", Zemlin said. "Modern software security is hard because modern software is very complex," he continued. Such complexity requires dedicated engineers, and thus the solution is to fund projects that need help. To date, the foundation's Core Infrastructure Initiative has helped out the NTP, OpenSSL and GnuPG projects, with more likely to come. The second key initiative is the Core Infrastructure Census, which aims to find the next Heartbleed before it occurs. The census is looking to find underfunded projects and those that may not have enough eyeballs looking at the code today."
Spending resources on 'finding the next Heartbleed' bug... I fail to see the advantage of finding it by a coordinated search as opposed to someone just stumble on it (as long as the bugs are reported responsibly of course).
Software can't be made secure afterwards, it must be the the primary goal.
I've been using Linux for an awfully long time, since the mid 1990s (Yggdrasil, then Debian). Over time, as Linux has gotten more and funding, it has gotten worse and worse. I initially switched to Linux because it generally just worked, and it worked better than many of the alternatives. But now it's just getting fucking horrible. I mean, look at systemd. Normal users, and especially power users, don't want it. It just causes problem after problem for many people. Yet we have corporate interests and corporate-funded developers forcing it on us, even forcing it into community-oriented distros like Debian. GNOME and Firefox are other great examples of community-based open source projects that got co-opted by money and ruined, to the most recent versions of both being almost totally unusable. On the other hand, we see projects that get less commercial interest, like Slackware and Xfce, producing the most usable and reliable open source software systems around. Linux was better when there wasn't so much money floating around. Back then it was about creating great software, and doing things right. Now it's about everything but that.
Even for non-security bugs, the many-eyes hypothesis contains a large dose of wishful thinking, but at least in that case most eyes are looking with the same purpose. When it comes to security, however, it is a race between black-hat and white-hat eyes, and the former only have to win once.
Bugs can be made shallow?
On Linux, bugs are only skin deep
Why have bugs at all?
Maybe Linus isn't cursing at the developers with enough frequency or intensity?
Is there a way to re-engineer operating systems so that some parts are strictly read-only (like, baked in ROM chips); other parts difficult to change (flash them?), and so on? Right now, it seems all data, programs and operating system components are equally vulnerable to writes by viruses. How many people would be harmed if some basic components of XP had been burned into ROM? Then anti-virus programs could hook into those "fortified" modules to maitain or restore the integrity of other parts.
Modern software security is hard because modern software is complex.
Doesn't that just about say it all? More eyes don't solve complexity issues, only more brains and better architecture.
That is all.
.
Maybe a more cost-efficient approach to spending the Foundation's money would be to determine how and why the bugs get into the code in the first place, and reduce their occurrence as early in the development cycle as possible.
The earlier in the development cycle a bug is eliminated, the cheaper it is to eliminate the bug.
> The solution is to fund projects that need help
But then it's not FOSS anymore? How will they resolve this massive ethical dilemma?
Tempting offer, but I think I'll pass.
There is a way to properly test software. But it is insanely expensive. Real mission critical software (like airborne systems) has standards for code verification that are pretty tough. For example per standard DO-178B, required is complete structural coverage analysis; object code analysis; worst case throughput analysis; stack analysis, etc.
There's no way that volunteer programs can find funding for this or human resources to do this. Although many companies do contribute to various open source programs, the level of testing required to remove most of bugs is extremely costly. Who's going to pay for software to be nearly perfect, if it is not required of it? Truth it, pretty much nobody outside mission critical software does this kind of testing.
Well, finally today they do. LLVM is good for catching unsafe casts and such, which can hide buffer overflows.
Take off every 'sig' !!
How do you expect a compiler to figure out that the asymmetrical public key cryptography package you wrote has a security flaw because you implemented an algorithm improperly? Do you really think compilers can understand what code is doing at the systems level?
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
I missed you, man. What happened, anyway? Why did you disappear?
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
No reason to leave me hanging. I expect you to respond to EVERY post I make. Don't slack!
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
undermined the confidence many had in high quality of open source
protip: only naive college-level awareness fanboys thought that. Everyone else was aware of the illusion of security in Linux and knew it was mostly through obscurity that it was not the victim of attacks. It's not just a lot of eyeballs btw, but the right eyeballs. And reviewing shipped code for security is usually the last thing foss people spend their time on.