Slashdot Mirror


Open Source Security: Still A Myth

jpkunst writes "John Viega (coauthor of a.o. Building Secure Software) argues in Open Source Securitey: Still A Myth at O'Reilly's onlamp.com that "open source software may currently be less secure than its commercial counterparts.". According to him, there may be "more eyeballs" looking at open source software, but he does not believe those eyeballs are looking for security problems in a structured way."

43 of 502 comments (clear)

  1. Still... by bustersnyvel · · Score: 5, Insightful

    ... once something is actually found, it's fixed a lot faster than in most commercial software.

    1. Re:Still... by bustersnyvel · · Score: 4, Interesting

      That's true for small home-projects, but not for projects like Mozilla, Gnome, OpenOffice.org, Gimp, etc.

    2. Re:Still... by echeslack · · Score: 5, Insightful

      I think it may also have to do with the variety of testing. I admit that you are probably right, a lot of OSS vendors don't do extensive testing, but for a lot of them they don't have to. If the vulnerability only affects one product on one hardware platform, you have to test various configurations, but you have at least 1 order of magnitude less testing to do than, say, Microsoft might have for a fix that crosses multiple versions of windows, and may affect PCs, PDAs, etc.

      Also, if bugs are found by those in the community, the fix may have time to be tested before it is widely publicized. It seems (just from observing announcements, nothing scientific) that a lot of Microsoft vulnerabilities are discovered by third parties that cannot go and fix them while in OSS they tend to be discovered by people in the security sector, but often they may provide a fix at the time of announcement or not announce until a fix is in cvs.

    3. Re:Still... by erktrek · · Score: 5, Insightful

      What about the "just get it done we have a deadline to meet and screw everything else" mentality of commercial vendors?

      One of the big shockers out of college and into the big bad business world was the idea of "good enough" versus "doing it right".

      E.

    4. Re:Still... by LnxAddct · · Score: 5, Insightful

      *cough* Service Pack 2 *cough*
      *cough* Disable javascript which is essential to many business's core web applications*cough*
      *cough*Break standard compliant web sites and standards because we can*cough*
      *cough* I could go all day coughing under my breath about things MS breaks and on purpose*cough*

      Real operating systems aren't so independent on every other piece that by changing one component, you may break many unrelated components. I don't know about other Open Source vendors, but Red Hat does extremely intensive testing, I would assume Novell does too. The nice thing is, it usually goes significantly quicker because if they update a web browser, they don't need to make sure it doens't break the Office Suite, Mail Client and File Browser.
      Regards,
      Steve

    5. Re:Still... by Silver+Sloth · · Score: 5, Insightful

      In my experience most good coders are very proud of their work. Whilst the commercial coders may have to let work that they know is shoddy and full of holes go because they have to meet a dead line OSS coders are looking for peer approval and you don't get that with buggy code. Imagine the shortcuts that are being taken by M$ as the pressure to get Longhorn out in time rises

      --
      init 11 - for when you need that edge.
    6. Re:Still... by Khazunga · · Score: 4, Insightful
      Care to leave a link to the study for analysis?

      It's a well known fact that MS 'hides' bugs from public view until they're fixed. These submarine bugs surface really close to the fix date and skew stats. OSS has the extreme opposite effect, since it relies on public announcement of bugs for fixing them.

      --
      If at first you don't succeed, skydiving is not for you
    7. Re:Still... by Anonymous Coward · · Score: 5, Insightful


      One of the big shockers out of college and into the big bad business world was the idea of "good enough" versus "doing it right".

      If you think this mindset does not exist in OSS than you are naive. Do you honestly think that OSS software is released without the developers knowing that it contains bugs? OSS developers don't write flawless code. Therefore any OSS code released to the public has been deemed to have reached a point of "Good Enough".

    8. Re:Still... by Jakhel · · Score: 5, Interesting

      You know it's funny that you say that. I was in a software project management class my senior year in college. We were required to create a piece of software that did specific functions and turn it in at the end of the semester. Becuase this was a group project, all groups ended up missing some deadlines here or there, which inevitably cost them man hours in the long run (we were required to keep track fo cost). After about the 3rd missed deadline by groups (due to bug workouts, people not doing their part, etc.), my professory, a former IBM employee, told us a story.

      He said one year, he was heading up a project that involved writing software for IBM machines. They were nearing the release date and still had dozens (if not more) of bugs to work out. He went to his boss, a B-school guy, and said "look, I know we're close to the deadline, but there are still many bugs that we really need to work out before this thing ships. We don't want to release a product that costs this much and still has some things wrong with him".

      Now keep in mind that there were hundreds, if not thousands of companies ready to buy the machines as soon as it was released. They had orders from companies around the world. Because they were competing with other companies selling similar products, the need to meet the deadline was even more important.

      Back to the story, his boss looked at him and said "so you mean to tell me that you think we should delay the release of a product that has the potential, and is almost guaranteed, to earn us hundreds of millions of dollars for a few bugs? I don't think so. We'll release the product and support it later on. Tech support will cost us less in the long run than delays at this point".

      So they released the product, sent developer level techs around the world after companies began to complain about the bugs, and that was that.

      Moral of the story? Sometimes, from a busines stand point, you should release the product and support its bugs later on. But that usually depends on the amount of competition in the market and money that is riding on the product. Yeah it sucks from a developers stand point, but developers dont make business decisions in the real world.

      See Examples. HL2, DNF, etc.

  2. Securitey by whitelabrat · · Score: 5, Funny

    Looks like geeks with spelling skills are still a Myth too?

  3. More Eyeballs by sobriquet · · Score: 4, Insightful

    What about more eyeballs meaning a faster fix?

    1. Re:More Eyeballs by DogDude · · Score: 5, Insightful

      What about more eyeballs meaning a faster fix?

      But again, the problem is the problems are not being found in the first place. Look for example, at Sendmail. It's 25 years old, but is *still* a buggy, buggy app. It STILL isn't secure and bug-free. The inevitable comparison with MS willl come up, so let's look at that. First off, MS hasn't even been *around* for 25 years. As far as specific products go... with all of its patches, W2K is generally considered quite stable, and relatively secure (again, with all of its patches in place). W2K is about 5 years old at this point.

      So, I think that this article has some merit.

      --
      I don't respond to AC's.
    2. Re:More Eyeballs by gowen · · Score: 5, Insightful

      Actually, the comparison between Sendmail and Windows 95/98/ME is a good one. They're both from a more innocent time, when code could pretty much trust everything it was being fed. As such, there was little or no security designed into them, and it has had to be bolted on from the outside, in.

      And look at the success they've achieved with that style. If we learn anything from Sendmail, its that security must be designed in, rather than an afterthought.

      --
      Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
    3. Re:More Eyeballs by Six+Nines · · Score: 4, Informative

      A couple of nits to pick...

      1) MSFT is about to celebrate its 30th anniversary (founded 1975, incorporated 1981).

      2) Windows has been around for 20 years (Windows 1.0 was beta tested in 1983-1984, released 1985).

      3) The Windows NT/2000/XP code base is almost 12 years old (NT 3.1 was released in 1993).

      4) Persistently buggy apps are found among both open- and closed-source software. There's no monoply on spaghetti code.

  4. Sure, but there's still a difference.. by DrEldarion · · Score: 4, Insightful

    The difference is that when a security hole IS found (whether it be by the good guys or the bad guys), it gets patched VERY quickly compared to commercial software...

  5. Closed source speel chacker by w.p.richardson · · Score: 4, Funny

    Still as much of a myth as "Securitey"?

    --

    Curb CO2 emissions: Kill yourself today!

  6. I have one word for you by spif · · Score: 4, Informative

    OpenBSD.

    Developers! Developers! Developers! Developers!

    --
    fnord.
    1. Re:I have one word for you by Sexy+Commando · · Score: 5, Insightful
      You have just made an example that software which eyeballs proactively looking for security holes is more secure. That is why OpenBSD stands out as one of the most secure OS.

      Busy eyeballs are better than idling eyeballs.

  7. OSS users/coders still close them up faster... by garcia · · Score: 5, Insightful

    Others will say, "Open source developers are more clued in to security issues due to a better sense of community, and their software is more secure as a result."

    He's right. They may not be looking for security holes and they may not find them because of all the "eyeballs" but they will certainly fix them and release a patch to the community shortly after it is discovered.

    Now, even if MSFT did release a patch right away it wouldn't make much of a difference as most people don't update their software. The OSS community, OTOH, is still mostly comprised of people that have a Clue and those people generally patch immediately.

    So while what the article states is true currently the OSS community does respond faster and with less problems than their counterparts on the other side of the fence.

  8. Go team go! by Maagma · · Score: 5, Funny

    Securitey, it's like 'Security' but with an extra 'e' for effort!

  9. Wrong by MikeMacK · · Score: 4, Insightful
    They are worried that open source developers are too much "hacker" and too little "engineer," cobbling together solutions without going through a structured software engineering process (such as requirements, specification, and analysis).

    They believe it, but offer no proof. You don't create an OS kernel by hacking in bits of code, you don't create any complex software by just "hacking" it together. Mozilla, OpenOffice, KDE, GNOME, all the major pieces of Linux software, in my opinion, are very structured and follow a solid design process.

  10. I believe it by Judg3 · · Score: 4, Interesting

    I'm going to venture a guess that upwards of 90% of the linux community just assumes that the package they downloaded is secure, simple due to the fact it is open source. They don't look at the source code, because they either wouldn't understand or they just think "Hey, it's open source and popular, therefore someone must have poured through the code".

    I'd love to be in charge of a popular project and embed something into the code that isn't a trojan or hack but a simple sentence or two. Something like "Congratulations - you've actually audited this code. Please email me@address for your $50 reward (To the first person only)".

    Maybe if we occasionally put these little rewards into the code, people would be more apt to pour through them.

    Then again, I'm not a programmer so I'm probably going to get a lot of "This idea sucks because of ...." posts hehe.

    --
    Looking for hardware (Currently need: Large Etch-a-Sketch) Have one? See my journal!
    1. Re:I believe it by savagedome · · Score: 4, Insightful

      Jesus no. If that happens, I will be grepping for "rewards" and similar strings without actually doing anything. The people incharge of big/popular/successful project already take care of these things to being with during the 'design' phase. That is also a part of the reason that these projects are big/popular/successful to begin with. Look at Apache and you will get the idea. More eyeballs != More security. But its the whole flexibility that once something is found, even you can write an internal patch if you are an org running open source software in case you don't feel like waiting even a day or two for the community to release it.

  11. You better read it... by danielrm26 · · Score: 5, Interesting

    At the end of the article (I read it for some reason) the author seems to somewhat agree that open-source code is at least equal with - if not superior to - proprietary code. This seems to fly in the face of his initial statements.

    This is a common writing technique -- get a reaction based on title and initial statements, and then bring the real argument later on. Just don't walk away thinking this guy is saying open-source code has worse security overall based on the title; that's not what he said.

    --
    dmiessler.com -- grep understanding knowledge
  12. I would have to say by GillBates0 · · Score: 5, Interesting
    I believe that in the long run, open source software does have the potential to be more secure than closed systems, since open source projects can do everything commercial projects can. When high-quality analysis tools become more common, hopefully the "many eyeballs" phenomenon will work. Still, when it comes to security, money looks like it will be a big catalyst for positive change--and the open source community is largely insulated from it.

    the article is a balanced and well-written one. From the title and summary, I concluded that this was possibly one of those "Rob Enderle" type Microsoft FUD, but surprisingly the author seems to know what he's talking about and comes up with a pretty balanced argument - the above excerpt is one of the examples.

    I agree with some of the conclusions/suggestions like a more structured approach and software engineering techniques, but the fact remains that most software hobbyists (the principal contributors to open source software) *firmly* dislike process and red-tape. And they're right, since they're pursuing a hobby, they should be able to do what they like as they see fit.

    But then, he's obviously more qualified than the other Microsoft apologists which've written "knowledgeable" articles about open source insecurity.

    John Viega is Chief Scientist of Secure Software, and the coauthor of "Building Secure Software" (Addison-Wesley) and "Network Security with OpenSSL" (O'Reilly).

    --
    An Indian-American Hindu committed to non-violent thought/speech/action alarmed by the global explosion of radical Islam
  13. And closed-source? by Anonymous Coward · · Score: 5, Interesting

    Sure most people aren't looking at security in open source in a structued way, but some people are. Plus, open source can still be better if nobody is looking at closed source security at all. I know where I work, security defects become fodder for amusement at meetings, rather than seious issues to fix.

    No I won't say where I work, but it's not MS.

  14. Boggle by miu · · Score: 4, Insightful
    However, commercial organizations are more likely to take security seriously, simply because they are more likely to have paying customers demanding some level of security assurance.

    Has this guy been working with better vendors than I have? I had to deal with vendors on a regular basis who let some pretty awful stuff slip through QA and some of them could be very defensive about accepting that a bug existed. I had to threaten to shut down multi-hundred thousand dollar contracts to get action sometimes, twice I actually did call bullshit on a vendor and abort the contract.

    Money provides a stick to get vendors to fix their problems, but they still have human beings working on their products, and like all human beings they make mistakes, get defensive, have better things to do with their time, etc. Also success (money) can breed indifference in a vendor, once you have a good portion of the market and have people locked into your offerings you have to be just good enough to keep the cost of the customers irritation with you lower than the cost of switching to another product.

    --

    [Set Cain on fire and steal his lute.]
  15. Structured vs. Free-Ranging by Vexler · · Score: 4, Insightful
    In a recent /. story, a small group of programmer had a monster time tackling an off-by-one problem in the OpenBSD kernel - one that is touted as one of the most secure OS's in the world. Judging from the way this particular bug was tracked down and analyzed, it's safe to say that this was a set of eyeballs that had some degree of coordination and management to it.

    The problem, as the author points out, is that many eyeballs do not equal "eyeballs in depth" or "coordinated eyeballs". The housefly has thousands of "eyes", yet that doesn't make it necessarily more visually acute (contrast it with, say, the eagle or the falcon).

    I would suggest that, if you are going to code a secure product, that the people and processes that make up the audit team should themselves be auditted. The flowchart of security shouldn't start at the product itself; it should start at the people and processes that produce the product. Otherwise, what you would end up is a lot of people "reaching for the low-hanging fruit" (as the article suggest), making flashy features work, while the obscurer and necessary work get ignored or done poorly. Security must be managed from top down, not invented along the way by coders.

  16. Dammit by GauteL · · Score: 4, Funny

    You will respect my securitey!

  17. One thing he (and Microsoft) is missing by dpilot · · Score: 5, Insightful

    There's something FAR more important about security than the code, the number of eyeballs looking at it, or even the skill of those eyeballs.

    Trust. More specifically doing away with Trust.

    I had a minor epiphany yesterday, read about Microsoft's DRM efforts, and realizing what may be fundamentally wrong with their security. IMHO, Microsoft believes that bad security is due to bugs, and that if they can squash their bugs, they will be able to have secure code, AND be able to TRUST the computer that their code is operating on. I'll even let them consider an insecure algorithm a bug, for the sake of this discussion. I think they really believe they can eventually ship sufficiently bug-free code to be considered Trustworthy in execution.

    Contrast that with the attitude toward security that has grown in the Open Source arena. No matter how good you get, bugs will *always* be found. No matter how secure you think your system is, *someone* can always get in. Finally, you have to consider *all* avenues of attack, not just the technical/cracking ones.

    Some descendents of these attitudes:
    Without physical control, the rest of the security is worthless.
    Human engineering is probably the biggest security hole.
    Consider security as a value proposition, in two ways:
    1: Can I make it sufficiently expensive that they'll attack someone else, instead of me?
    2: How much do I want to spend on security, and how do I balance that with a recovery plan?
    Security isn't a "nail it down, once" thing, it's a process, and includes evolution.
    Bugs will happen, so put security in layers, to try and eliminate single-point-of-failure issues.

    It's not so much the code, or the eyeball count, or the specific eyeballs. It's the attitude.

    --
    The living have better things to do than to continue hating the dead.
  18. No Responsibility by DreadSpoon · · Score: 4, Insightful

    Actually, if my experiences are any indication, most corporate development teams don't have much care for security concerns. There are several reasons.

    1) Incompetence. HR departments don't know how to hire coders. They often think a degree means you know what you're doing. Portfolios are rarely asked for, likely because even if they were, the HR departments wouldn't know what the hell to do with them or how to evaluate them.

    2) Time to market. Open Source does things when they're ready. Even projects with time-based releases do a "whatever is ready in that time" release, not a, "we're going to do a, b, c in this time." The rush to get to market doesn't leave a lot of time for security and bug fixing. After all, you can release a patch later, after the profit has started rolling in, right?

    3) No corporate incentive. The product has a bug or security hole. Unless it becomes a big deal in the media, why bother paying programmer time to fix it? Your customers are already customers. You've already been paid. Without service contracts, fixing bugs just doesn't have any monetary incentive.

    4) No programmer incentive. How many corporate programmers have any reason to put any pride into their work? None of the customers are going to know their name, think about hiring them on a side contract, etc. When software I write entirely for Free has a bug, I know my reputation is at stake, and there's a feeling of "how could I be so dumb, I have to fix this and make things right" feeling. I don't get that feeling for corporate work; if they want it fixed, they can pay me, otherwise, the bug can stay and I can get on with my life.

    5) Security Through Obscurity. Why fix something nobody knows about? Not only are you not going to get money from your customers for your efforts/programmer-paychecks, you're not even going to get any PR bonuses.

    There are many companies where the above don't apply. Good companies have good HR departments that bring in the other developers into the hiring process to select new employees that are actually skilled. Some companies have corporate pride and worry about quality as well as the bottom line. The above problems are not _rules_, they just common patterns I've noticed in my work, and in the work of others.

  19. Meaningless as phrased by Beryllium+Sphere(tm) · · Score: 4, Insightful

    Discussing "the security of open source software" is like discussing "the structural strength of green objects". There are too many projects with different goals and different team cultures.

    "What approach do I pick to make $PROJECT most secure?" is a meaningful question. Even more meaningful is "What approach do I pick to make $PROJECT most trustworthy?"

    Open source is the answer to both. For a security-critical application like PGP it's imperative to get multiple independent reviews from fresh perspectives. Open source is a necessary but not sufficient criterion for being able to accomplish that.

  20. By definition by Progman3K · · Score: 4, Insightful

    MOST bugs or flaws that lead to exploits are things that CANNOT be found by using a "structured" method.

    Otherwise, you could write a tool that probes for those.

    The effect would be that that class of exploit would disappear.

    Usually, exploits are much trickier (chaotic, even) than that to find and are usually found "in the field" by actually using the software under a variety of conditions when all the "eyeballs" have failed.

    But trying to be controversial to sell a book never hurt...

    Move along, nothing to see here.

    --
    I don't know the meaning of the word 'don't' - J
  21. And it's gettting worse. by Anonymous Coward · · Score: 4, Interesting
    Every darn distro seems to have funny GUI windows that pop up asking for root passwords these days.

    Distros getting users into the habit of typing in root passwords everey time the GUI pops up a window is asking for big trouble.

    C'mon redhat or suse or debian or someone.

    Please please give me a distro where I don't _need_ to be root to install typical unprivileged packages like upgrading a browser. How about install them under '/usr/local' with permissions where anyone in the group 'local' can install them, or hohw about in my home directory. And yes, I know about "configure --prefix=$HOME". That doesn't solve the problem of not having the benefits of a package manager.

  22. Missing the point by einhverfr · · Score: 4, Insightful

    I actually think the parent poster and the parent article both miss the point to some extent, though the article is closer to the mark.

    Open source is not a magic bullet that will automatically solve all our security problems, as much as I advocate open source software, and open source software is not automatically more secure. The reason why this falsity perpetuates is that people tend to think of security in terms of buffer overruns instead of a secure structure. No development methodology can ensure this secure structure because it is an issue which is either solved in the design phase or not at all.

    The question shouldn't be "Can this software be compromised" because you should assume that all software can be, but rather "what happens if this software is compromised." Some open source projects are very good at this, and some aren't.

    It is also true that for some projects (like OpenSSL), this question is irrellevant because the primary usefulness is as a library, so the application will have no security itself. But these are the exceptions rather than the rule.

    Compare the security of Sendmail (open source) to Postfix (also open source). Which is more secure by design? Compare Apache to IIS. Which is more secure by design? (IIS drops permissions after authentication, Apache does so before). Compare Sendmail's security design to IIS. Which is more secure by design?

    Open source is important even from a security viewpoint as it allows us to better understand the architecture of the program we are considering and make educated choices about whether we can run it in a secure manner. However, it is no magic answer and just because something is open source does not guarantee its security.

    --

    LedgerSMB: Open source Accounting/ERP
  23. Security means... by CSG_SurferDude · · Score: 4, Insightful

    $RantMode=on

    Computer security means many things, but can be summed up simply as: The protection of the information and physical assets of a computer system.

    As a reminder, this means Hardware AND Software security.

    As a Real-world security geek, it appears to me that the three worst software issues are:

    1. Viruses/trojans via email
    2. Viruses propagating on their own
    3. Viruses/trojans via web pages

    Please note that "Crackers hacking into your system in order to steal trade secrets" isn't even on the list.

    So, no matter which of the top three you care to rant about having security issues in your software, they ALL can be solved with the same two pieces of software on either your own PC, or on a corporate side, ie: Firewall softare (set to deny all unless allowed), and any reasonably competent virus checker (Scan local drives/emails/web pages before loading to the browser)

    So, the real question is not which has more bugs, closed source, or open source, but is instead "Why don't more users have those two pieces of software?"

    Maybe, instead of beating each other up about security flaws in software, maybe we could all spend some small amount of our time educating the users to get these two packages, and to keep them up to date.

    Imagine if a million geeks all spent an extra 15 minutes while visiting their friends and relatives to educate them about this?

    $RantMode=off

  24. John Viega and Mailman by waldoj · · Score: 5, Informative
    For those who are or would assail John Viega's credibility, I should remind you who he is.

    Most notable for the purpose of this discussion, Viega is the creator of Mailman, the fantastically-popular GPLd mailing list management software. All was good and well with his view of the many-eyeballs theory until, one day, he found a huge, glaring, holy-shit hole in Mailman a few years ago. He was so alarmed that nobody had ever spotted this that, after fixing it, he reflected on what he'd learned and turned it into a thoughtful article, The Myth of Open Source Security. As he wrote:
    "For three years, until March 2000, Mailman had a handful of glaring security problems in code that I wrote before I knew much about security. An attacker could use these security holes to gain access to the operating system on Linux computers running the program.

    "These were not obscure bugs: anyone armed with the Unix command grep and an iota of security knowledge could have found them in seconds. Even though Mailman was downloaded and installed thousands of times during that time period, no one reported a thing. I finally realized there were problems as I started to learn more about security. Everyone using Mailman, apparently, assumed that someone else had done the proper security auditing, when, in fact, no one had."
    Again, Mailman was and is an extremely popular program -- this was not a problem of obscurity.

    So, the OnLamp.com article under discussion here is a follow-up to his original article, as he points out in the opening to the new article (but people apparently aren't reading.) As you can imagine, Viega is no rabid anti-OSS guy -- he's, in fact, the very model of what we want our developers to be. He writes good software, admits it when he writes bad software, and tells it like it is, even when we don't want to hear it.

    (Disclaimers, such as they are: Viega is an adjunct professor at Virginia Tech, where I attend school, and I was the earliest alpha-tester of Mailman, in the late 90s.)

    -Waldo Jaquith
  25. OpenBSD is a good example by harlows_monkeys · · Score: 4, Informative
    OpenBSD is probably the most secure free OS, yet it has fewer people looking at it than Linux or FreeBSD. Fewer eyeballs are looking at OpenBSD, but they are very good eyeballs.

    Another good example is Kerberos. It's been around a long time, looked at by researchers, students, open source developers, and closed source developers using it as a reference for implementing their versions. Yet, major flaws that weren't subtle have taken a long time to find.

  26. One word - Sendmail by Animats · · Score: 4, Interesting
    Twenty years of buffer overflows.

    Any questions?

    One real problem with open source is that it's really tough to fix a fundamental architectural problem by ongoing patching. If the problem is too big for one person to rewrite in a short period of time, it's unlikely to ever get fixed.

    If the Linux world is to become secure, get behind NSA Secure Linux and push. Make apps work within the NSA Secure Linux mandatory security model. That has a chance of working.

  27. Even Worse by Salamander · · Score: 5, Insightful

    I was struck by something while reading this passage:

    Most people who look at the source code for open source software don't explicitly look for security bugs. Instead they likely have in mind a particular piece of functionality that they want to augment

    Not only is that sort of developer not looking for security bugs, but they're pretty likely to be just getting their feet wet working on that project and might well introduce a bug. Then, there's a significant possibility that nobody else cares about the feature that one developer added to scratch their own itch, so nobody's going to look at the code that implements it. Yes, there are more eyeballs, but those eyeballs are not evenly distributed. There are certain pieces of code that everybody is looking at, and there are vast tracts of code that practically nobody is looking at - none with an eye toward security. How many Linux drivers have you looked at? I'll bet the majority of the people reading this haven't really looked at any Linux kernel/driver code whatsoever. Have you looked at the code for Apache? Perl/Python/Ruby? MySQL? Gcc? Open-source users outnumber programmers a hundred to one, and each developer has a fairly narrow area that they're either interested in looking at or qualified to look at, so the number of eyeballs on some piece of code implementing an unpopular feature in a popular package is nowhere near what some people seem to think. It might be dozens, it might be one, and quite often it will be zero once the guy who wrote it moved on to something else. That's no better than the almost-always-one you'll get with commercial software, and sometimes it's worse.

    --
    Slashdot - News for Herds. Stuff that Splatters.
  28. That's completely untrue. by jidar · · Score: 4, Insightful
    That's true for small home-projects, but not for projects like Mozilla, Gnome, OpenOffice.org, Gimp, etc.


    This isn't even close to being true. Why are you spreading this misinformation? Serious security problems in large open source projects are very competitive with smaller projects in their bug fix and turn around. Nearly every majory security problem is fixed the day it hits the media. Most often when /. has a story on a new security bug in something big like Apache, Mozilla, or the Linux kernel you can find a link to a patch in the story itself, and if not it's always in a comment below.
    There may be exceptions, but they are rare.
    --
    Sigs are awesome huh?
  29. Structured code auditing by Brandybuck · · Score: 4, Insightful

    ...but he does not believe those eyeballs are looking for security problems in a structured way.

    As a developer of proprietary software (hey, no flames, it's my job), I can assure you that there is very little structured security analysis of closed source software. Some closed software may be rigorously audited because of its nature, but the same holds true in Open Source (OpenBSD). You're not going to see any security audits for non-security software. You might see a few half-hearted attempts at it (like Microsoft's month long fix-fest), and very localized panic attacks when vulnerabilities are made public, but for the most part it's an ignored area of development.

    "Security through obscurity" is still king, because the people making software security decisions in commercial firms generally don't know any other way. They also do not see the financial value in secure software, because it's not something that the customer will pay extra for in non-security related software. Then there's the problem of ignorant coders.

    We have all gone through the phase where we think we know about security and encryption. In a proprietary environment such a security ignoramus can reach chief software architect level. In my own work I've seen three "clever" encryption schemes by senior developers that were complete jokes. One scheme even produced *sequential* keys it was so bad. In the Open Source community such security hubris is slapped down quickly.

    In short, the author is wrong. Open Source is not inherently more secure than proprietary software, but the open development model encourages a higher level of security analysis.

    --
    Don't blame me, I didn't vote for either of them!
  30. I'd like to take issue with F/OSS patch time.. by bmajik · · Score: 4, Insightful

    There is the commonly held position that many F/OSS projects get source patches out the doro very quickly.

    That's true.

    One problem with this is people compare the time-to-released-source-patch-on-a-mailing-list-or -in-cvs to the time it takes for something tos how up on windows update.

    I don't think that's fair for the following reasons:

    1) Patch Quality.
    It is clear that the volume of basic testing done on many instant-turn-around source patches is zero.

    Comparatively, as often as an MS patch manages to break something somewhere, consider how much worse it would be if there weren't a few days of targeted regression testing being done. The official recommendation from MS is to test patches before putting them into production, but there have been a relatively low number of patch recalls from MS.

    Finally, i think it bears mentioning that with F/OSS, the initial patch is sometimes re-written over the course of several days until something proper actually is agreed upon and that's the code that actually ends up living with the product.

    So i'd consider these source level patches to very often be of "here is something that appears to close the hole and not break anything i tried, good luck!" quality.

    2) Patch Applicability
    When a hole is discovered in apache, the time it took for an apache developer to submit a source diff is NOT the same deliverable as what you're getting from a commercial vendor patch. A source level patch only does me any good if i am running a source-built tarball in production, and i am relatively current with whatever source base the patch is applied against, and i can handle the manual patch/compile/make install process (and if something goes wrong, i've got to backout the patch and compile/make install _again_)

    Most people, especially running production machines, are not running built-from-source software. You install Redhat. You want apache ? You use the redhat apache package. You now need to wait for the updated redhat apache package to get the bugfix, or, you get the latest cvs snap and build from source. Now you've got a lovely problem because the way redhat (or any distro) builds apache is different from the defaults, so you have to go and figure out how your distro likes to build its packages, OR, you need to accept the build defaults and rebase your config files to the new settings.

    So really, the vendor binary package is what many people need to wait for before they can truly patch thier machines. THe source diff is nice, but not something they can easily consume

    I think between these two points, it's pretty unfair to compare time-to-patch between MS and someone-posted-a-diff-somewhere.

    I think if you look at the time from vuln report to updated binary tarball being released by some of the linux distros, you'll be surprised.

    --
    My opinions are my own, and do not necessarily represent those of my employer.