Slashdot Mirror


Security of Open vs. Closed Source Software

morhoj writes "Cambridge University researcher Ross Anderson just released a paper concluding that open source and closed source software are equally secure. Can't find a copy of the paper online yet, but I thought this would make for an interesting morning conversation. You may not agree with him, but anyone who's on the BugTraq List can tell you that open source software isn't as bug free as we would all like to think." I found Anderson's paper, so read it for yourself. There are some other interesting papers being presented at the conference as well.

132 of 349 comments (clear)

  1. MBTF My Ass by Anonymous Coward · · Score: 2, Interesting

    The Manufacturer's Estimated Time Before Failure is for physical goods - things that naturally wear out. Not software, which is at the very least a loose mathematical desctiption of a repeatable process. Software and security don't "wear out". If they seem to, they were broken in the first place.

    I hope that was just CNet editorialization, and isn't indicative of the rest of this paper.

    1. Re:MBTF My Ass by schon · · Score: 2

      the security was not broken as of the time of release

      Ehrm, BULLSHIT.

      By your logic, ALL vulnerabilities don't exist until someone discovers them.. at which point, one has to ask, if they didn't exist, then how were they found?

      "If you can't see something, then that means that it doesn't exist."

      No, the vulnerability always existed, just because nobody found it doesn't mean that it wasn't there.

    2. Re:MBTF My Ass by reflective+recursion · · Score: 2

      I agree, but only slightly. Physically, the exploit was always there. But there is this big dark cloud known as "security knowledge." In this "security knowledge" cloud, the exploit was _not_ there.

      This "security knowledge" cloud represents everything the "Securers" know about security and also everything the "Exploiters" know about security. Occasionally the Exploiters learn a new technique. This technique can be a whole new exploit paradigm, such as distributed denial-of-service, or it can be a simple software bug exploit. Securers _always_ learn about security from Exploiters. When Securers learn that Exploiters know of a new tactic, only _then_ does it change from a bug or misdesign to a security issue.

      So, in conclusion: the _vulnerability_ only existed when a person with an Exploiter-like mind discovered the bug/misdesign and linked it together with an _exploit_. The bug/misdesign was always there, though. Just not the knowledge of how to use it as an exploit. From this you can infer that no system is truely 100% safe at any given time. Security can only be judged or measured by how many _known_ security issues a system currently prevents.

      --
      Dijkstra Considered Dead
    3. Re:MBTF My Ass by bwt · · Score: 2

      I agree completely.

      A better model would hypothesize that the initial programmer creates bugs at a constant rate. In reliability terms the "hazard rate" would be flat.

      This would say a given piece of code has a finite number of bugs proportional to either the number of lines or to the time spent coding (without debugging). Debugging should be modelled as a separate process that removes bugs at a rate proportional to the bug density and time spent debugging.

      Under this kind of model, the critical number is the mean time to zero bugs, which is going to depend on the ratio of debuggers to coders, and open source enables this to soar, while in proprietary systems it's something around 1, maybe 2 if you do code reviews.

    4. Re:MBTF My Ass by hendridm · · Score: 2

      They may not be "broken to begin with", but they can certainly be "more vulnerable to begin with". That fact that Windows opens the entire hard drive on a default installation and gives everyone Full Control seems like a ticking timebomb to me.

      I run Windows on my desktop, but I fix the default permissions and install all the updates/patches I can find, so it CAN be secure. The fact that it is wide open by default is troubling.

      It's not just Windows - MacOS does the same thing. However, it seems most crackers are trying to break open Windows.

    5. Re:MBTF My Ass by Anonymous+Brave+Guy · · Score: 2
      A better model would hypothesize that the initial programmer creates bugs at a constant rate. In reliability terms the "hazard rate" would be flat.

      Why would that be a better model? Do you have any evidence to support such a theory? Or did you just pluck a reasonable-sounding hypothesis out of the air and state it as fact?

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    6. Re:MBTF My Ass by swillden · · Score: 3, Insightful

      The Manufacturer's Estimated Time Before Failure is for physical goods - things that naturally wear out. Not software, which is at the very least a loose mathematical desctiption of a repeatable process.

      Read the paper, there's a link to a PDF in the story.

      The paper does indeed use an MTBF-type model to analyze bugs, and there is a significant body of research which supports this approach. As the author says:

      Safety-critical software engineers have known for years that for a large, complex system to have a mean time before failure (MTBF) of (say) 100,000 hours, it must be subject to at least that many hours of testing [4]. This was first observed by Adams in 1985 in a study of the bug history of IBM mainframe operating systems [5], and has been confirmed by extensive empirical investigations since. The first theoretical model explaining it was published in 1996 by Bishop and Bloomfield [6].

      It's certainly not obvious that this model invented for physical goods applies to software, but there is substantial research to show that it does. If you can really demonstrate otherwise, I highly recommend that you get familiar with the literature and then publish your own research paper that explains why it is not an appropriate model. If you can propose a significantly better one, you'll have advanced the state of software engineering and you'll probably be well on your way to a cushy professorship somewhere.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    7. Re:MBTF My Ass by markmoss · · Score: 2

      for a large, complex system to have a mean time before failure (MTBF) of (say) 100,000 hours, it must be subject to at least that many hours of testing

      This seems to assume that you are testing the quality into the system, rather than getting quality by design + inspection. We all know how important design is, whether or not we do it correctly... And it's been very well demonstrated that code inspections find more bugs than testing. Since open-source invites the whole world to inspect your code, did Anderson just miss it's biggest advantage? And still come out with security(open source) == security(by obscurity)?

      I've only read the first two pages of that 13 page pdf so far, so this opinion is subject to revision.

    8. Re:MBTF My Ass by bwt · · Score: 2

      Why would that be a better model? Do you have any evidence to support such a theory? Or did you just pluck a reasonable-sounding hypothesis out of the air and state it as fact?

      I wish I could claim to have plucked it "out of the air", but hazard rate modelling is a very standard technique in reliability engineering. The only other element of the model is that I'm saying that programmers create bugs as discrete occurances at a measurable rate. Unless the programmer is just learning to program or his mind is slipping at the end of his career, there is really little reason to belief the hazard isn't flat on mid-range timescales. It might drift down slightly from year to year as experience grows, but over the lifespan of an individual project modelling it as flat is the approach that nearly any reliability engineer would take.

      It is actually rather preposterous for anyone to claim that if more people engage in debugging per original unit of programming, that the number of surviving bugs will not be less. It is very clear that this ratio is greater with open source development models than proprietary.

    9. Re:MBTF My Ass by Anonymous+Brave+Guy · · Score: 2
      1. It isn't fatally flawed like anything based on mean-time-to-failure.

      You haven't provided any evidence to contradict that analysis, while Anderson cites empirical evidence supporting it.

      2. It corresponds (roughly) to every programmer's inner experience.

      My experience, as a professional programmer, is that the rate of generation of bugs is often far from linear in the time spent developing.

      3. There's no objective evidence to contradict the programmer's intution.

      There is plenty of evidence to contradict it, and some of it even seems to be cited in the original paper.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  2. Might be controversial by q-soe · · Score: 3, Insightful

    But i think security of software is often down to the admin... I mean you can secure any operating system if you know what you are doing and its easy to build an insecure box - linux and windows.

    How secure is an out of the box mandrake install ? or a windows 2000 ?

    A good admin who is a pro will work hard to secure his servers and patch and look after them - a bad admin is a bad admin regardless of the OS

    --
    I refuse to argue with Anonymous Cowards - if you want a discussion get an account....
    1. Re:Might be controversial by demaria · · Score: 4, Insightful

      Patches are a big deal, especially in production environments. You can't just willy nilly upgrade the kernel on a high load and important server. Bigger departments/companies have a change management system in place so that everyone know when any piece of software is upgraded, when it will happen, who is to blame, and why it occured. Patches can cause unexpected problems (like that linux one that corrupted the file system a few months back). This process may take days or weeks to complete.

    2. Re:Might be controversial by josh+crawley · · Score: 2, Insightful

      "A good admin who is a pro will work hard to secure his servers and patch and look after them - a bad admin is a bad admin regardless of the OS"

      I dont agree with that. If the underlying OS is a secure, good OS, then your assertion holds valid. However, if you're using an unsecure OS, say Winnt 4SP6, then it doesn't matter how competant the admin is. He's limited to how good he is by the OS itself.

      Superb admin + superb OS = Superb integration/setup
      ok admin + superb OS = ok integration/setup
      bad admin + superb OS = Honeypot without "the stuff that catches you" (bad)

      Superb admin + craptacular OS = Meciocre integration/setup
      .....

    3. Re:Might be controversial by DrSkwid · · Score: 2

      pure fantasy

      Try the Latest Apache Chunked Encoding bug with a released exploit for OpenBSD.

      How can some mad admin skillz sort that one out save switching off the box?

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    4. Re:Might be controversial by pubjames · · Score: 4, Insightful

      A good admin who is a pro will work hard to secure his servers and patch and look after them - a bad admin is a bad admin regardless of the OS

      Many years ago, anyone who wanted to drive a car also had to be a mechanic. Things needed constantly tweaking, they would break down often and were difficult to start and keep running. These days, if someone had a car that kept breaking down, you wouldn't say to them "well, that's your fault. You're obviously not a good mechanic", you'd say "go out and buy yourself a better car, mate".

      Don't blame the administrators for the primitive state of current computer technology.

    5. Re:Might be controversial by Trepalium · · Score: 3, Insightful

      There's a difference. You're comparing a simple action -- driving a car, to one that is not simple by any means -- administering a network. It's like saying that because everyone knows how to operate a television, they should be able to know how to operate television broadcast equipment. Most people these days can operate a computer, does that mean they'll ever be qualified to manage a network of computers with interdependent services? Probably not.

      --
      I used up all my sick days, so I'm calling in dead.
    6. Re:Might be controversial by reflective+recursion · · Score: 2, Offtopic

      Admin or not: security can only be measured _now_. Not tomorrow. Not 5 minutes from now. In 3 seconds your box could be compromised from an unseen source.

      That is the only thing admins can do: look after their systems. The most important knowledge an admin has is the knowledge of how to detect a security breach and how to cut the system off from the rest of the world _immediately_. After that he must check the system all over, because any number of things could be different and it should not be thought of as the same system.

      --
      Dijkstra Considered Dead
    7. Re:Might be controversial by pubjames · · Score: 2

      There's a difference. You're comparing a simple action -- driving a car, to one that is not simple by any means -- administering a network. It's like saying that because everyone knows how to operate a television, they should be able to know how to operate television broadcast equipment. Most people these days can operate a computer, does that mean they'll ever be qualified to manage a network of computers with interdependent services? Probably not.

      I think you are confusing things as well. Nobody ever mentioned administering a network of computers with interdependent services. The discussion was about a server and it's OS.

      A telephone answering machine is a type of server. I can plug it into a socket and people can call it up and listen to it, even interact with it by pressing keys on their telephone. I don't need to be a telephone engineer to plug one of those in and get it working.

      Basic computer servers should be the same - I need an email server, I plug it into an available network socket, it sends and receives email. Ditto with a web server. It should be secure out of the box, and if it needs patching, it should patch itself. It will be like this one day, in the meantime we just have to put up with the primitive state of things.

    8. Re:Might be controversial by ch-chuck · · Score: 2

      I would say the onus of security rests on the purchaser of license, the company or individual, whether it's the sysadmin or the clu^H^H^H people in management who decide. All software is immune from ALL legal ramifications of useability, security, fitness for marketability blah blah blah (no refunds either), so it comes down to the end user to do their homework, research, labtest, and maintain a relationship with the owners of the software for all updates, patches, issues and news. That is a cost foist on the end users so they might as well face it up front. It's just that *I* trust OSS more than those tricky, lying-to-close-a-sale marketing types. Mgmt may feel more comfortable with the sales flacks with their *.ppt slides for making the choice, altho that starts a bad relation with the sysadmins who always bear the brunt of Mgmt's bad purchasing decisions.

      --
      try { do() || do_not(); } catch (JediException err) { yoda(err); }
    9. Re:Might be controversial by tshak · · Score: 2

      This is a horrible analogy as it trivializes the role that a Server plays and acts as if it's a simple appliance.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    10. Re:Might be controversial by truesaer · · Score: 2

      I think you analogy is flawed....cars only have one configurations for allowing access or not, and that is whether it is locked or not. Better analogy would be security in a large building. Lots of people need to enter for legitamate reasons, but narrow reasons. Security needs to make sure there are cameras in the parking garage, that you have to badge your way in to secure areas, etc. If security opens the building and heads for a strip club thats bad, and if they're vigilant and make sure each person has the correct level of access thats good.

  3. Security Bugs are inevitable by Nerant · · Score: 4, Insightful

    Security bugs in software are inevitable : it is bound to happen , sooner or later. A properly setup system can mitigate some of these problems (ie. chroot, modified security kernels). What my concern is is how long and how public security disclosures are, and how long the affected vendor takes to issue a bugfix.

    --
    Be kind. There are too many mean people out there already.
    1. Re:Security Bugs are inevitable by dnoyeb · · Score: 5, Insightful

      I think we should be careful to draw a distinct line between a Security 'flaw' and a 'bug'.

      A flaw is an error in judgement. A bug is an error in coding. The original poster ended his statement that Open Source has lots of bugs. This is unrelated to security unless they are specifically security related bugs.

      In any event, the speed at which you can lock down the Fort HAS to be a consideration.

      I mean, We have planes flying in Iraq and Afganistan right now. They are being shot at all the time, but they move fast enough to get out of the way. OpenSource moves faster than closed source so I can't possible see how the article writer concluded they were equal.

      Equally buggy, yes. Equally secure, puhleez.

    2. Re:Security Bugs are inevitable by Per+Wigren · · Score: 2

      Security bugs in software are inevitable : it is bound to happen , sooner or later.

      That attitude is a big dangerous IMO.. That is an excuse for programmers to have bad/lazy coding habits and not program with security in mind..

      Developing a good coding habit and learn and use all known techniques for creating secure code is the only good way to minimize security bugs.

      Even in the year 2002, it's still common to find unchecked strcpy's in newly released code..

      WHen you write software you should design it to be run as root on sensitive boxes without a firewall. But then you should run it chroot as a restricted user with minimal permissions anyway...

      And of course, release securityfixes as fast as possible if bugs ARE found...

      --
      My other account has a 3-digit UID.
    3. Re:Security Bugs are inevitable by PhilHibbs · · Score: 3, Insightful
      That is an excuse for programmers to have bad/lazy coding habits and not program with security in mind..
      I disagree entirely - I'm always looking for bugs in my software, because I know that there always will be bugs to find. If you mistakenly believe that perfection can be achieved, you might mistakenly believe that it has been.
    4. Re:Security Bugs are inevitable by _Sprocket_ · · Score: 2


      Yeah, but closed source operates in "stealth mode." Their planes are harder to see because you don't get to see the source. Open source, on the other hand, is like a plane the size of a blimp.


      The analogies in this thread bear little resemblance to the subject at hand. That makes the exercise a bit silly - but no less fun. :)


      Closed Source is less "stealth" and more "electronic warfare" in nature. More specifically, Close Source resembles barrage jamming. The target is certainly visible, but exactly what it is has been obscured. That's not to say such a target can't be attacked. And history has shown Closed Source software taking plenty of hits.


      It is worth stressing that these analogies fail rather miserably. Physical security issues deal with enirely different environments than information security - even electronic warfare which, like other physical secuirty, operates within the realms of physics. Limitations and methods of attack and countermeasure are entirely different.

  4. Of course not... by Dilbert_ · · Score: 3, Insightful

    Of course there are just as many bugs in open source software as in closed source. Most of it is even written by the same people: what they do at work is closed, what they hack upon during the night is open.
    The main difference lies in the speed and motivation to fix the bugs. Open source bugs can be fixed by anyone, but closed source bugs need to be fixed by vendors who are afraid to even admit they exist, for fear of losing customers.

    --
    superblog.org: all your favourite blogs on o
    1. Re:Of course not... by great+throwdini · · Score: 5, Insightful

      Open source bugs can be fixed by anyone, but closed source bugs need to be fixed by vendors [...]

      Correction: open source bugs can be fixed by anyone with requisite knowledge, talent, and time. This would include things such as familiarity with the particular software package, affected platforms, and programming language and the energy and ability to ferret out the bug(s) and apply an appropriate fix. Then one has to factor in that package maintainers may or may not readily allow outside submission (e.g., bigotry, internal/peer review, etc.) of fixes, which may slow, hamper, or block the transmission of fixes. Add into this issues of trust, where a "fix" is offered by someone who lacks proper credentials (official or "street") to someone who has no clue how to evaluate the original issue or the proposed remedy.

      Granted, given the nature of open source software, the population of people who may repair a bug may be larger than that for closed applications, but that doesn't force into being an army of people with the inclination or skills to do so, or an effective and trustworthy means to distribute said fixes.

      I favor the potential for open source to improve response time to bugs, but I don't think one can claim "anyone" can address issues in an appropriate manner. There's no reason a skillful and organized firm couldn't address security concerns for a closed application it offers with any less celerity than maintainers of an open application.

    2. Re:Of course not... by Dilbert_ · · Score: 2

      And what, pray tell me, causes these security problems in open and closed source software? Might it be... bugs?

      Idiots will be modded down without mercy, indeed! Take it away, moderators!

      --
      superblog.org: all your favourite blogs on o
    3. Re:Of course not... by goldspider · · Score: 2

      It sounds like you're not a programmer, because if you were, you'd know there are many other factors that can contribute to security vulnerabilities than programming bugs.

      Included in this are design flaws, development platform limitations, and a host of other factors that I'm not going to bore you with. To say the problem is limited to just programming bugs oversimplifies it, and potentially doesn't address the real problem.

      That's not to say that bugs don't contribute to security vulnerabilities, but this article, I believe, was written to take many factors, not just bugs, into consideration.

      --
      "Ask not what your country can do for you." --John F. Kennedy
    4. Re:Of course not... by DrSkwid · · Score: 2

      The worst security problems are frequently bad design not bad coding.

      try :
      Auto-executing attachments.
      Cross window Javascript exploits.
      Path traversal exploits.

      etc.etc.

      bugs are just one vector.

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  5. Security by Ashcrow · · Score: 3, Insightful

    There will always be software bugs as long as programmers are not perfect. The huge diffrence is the in a closed source environment you'll have to wait for patches from the vendor, or not at all. In the OSS you can patch it yourself, get the unoffical patches for your vendor, get diffrent up-to-date packages, or install the latest version from source.

  6. Buglist by Bloody+Bastard · · Score: 2, Insightful

    OK, Open Source has a lot of bugs, but who does list closed source bugs? I'm sure most of their bugs don't go public, because it is not a good market technique... It isn't fair to compare both lists.

    Just my two cents.

  7. Re:In Other News by tomstdenis · · Score: 2, Interesting

    Anderson's point was not that less is better is that its irrelevent in the long run to compare open and closed source.

    I mostly agree with him however I like open source software for more reasons than just the fact its "more secure". Often OSS software isn't in fact more secure or reliable. Look at mozilla. Its a great project but its not as nice as IE by a long shot. Anyone using 1.1a in Linux will know that [e.g. me! while at the same time 0.9.9 works fine... ???]

    tom

    --
    Someday, I'll have a real sig.
  8. Duh... by sootman · · Score: 5, Insightful

    Security != number of bugs. There's 'severity of bugs' and 'speed of fixes', not to mention the OS's and software's design in the first place--think permissions, user spave vs. kernel space, etc.

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
    1. Re:Duh... by Rogerborg · · Score: 3, Insightful
      • Security != number of bugs.

      Well said. Likewise

      • Time when a white hat hacker reports a security flaw in open source code != time when a black hat hacker notices and exploits a flaw in closed source code
      • Time of public disclosure != either of the above
      • Time when a closed source flaw is reported fixed != time when an open source flaw is demonstrably fixed
      --
      If you were blocking sigs, you wouldn't have to read this.
    2. Re:Duh... by nomadic · · Score: 2

      You're forgetting the one that most people here seem to have forgotten:

      Closed source software ! necessarily = Windows.

      Simple concept, but going by the answers here many people don't quite get it.

    3. Re:Duh... by Tony-A · · Score: 2

      It's really dificult to notice a flaw in CLOSED source code.
      Only if you never use the program.

    4. Re:Duh... by Alan · · Score: 2, Insightful

      You mean silly things like embedding the http parser dll into the kernel to speed up page rendering? Yea, that'd be silly :)

    5. Re:Duh... by Cally · · Score: 2
      Like Tux, you mean? ;p

      Anyway IIS doesn't patch itself into the kernel... does it??!!??

      --
      "None are more hopelessly enslaved than those who falsely believe they are free." -- Goethe
    6. Re:Duh... by Alan · · Score: 2

      Tux is a webserver, not a html renderer :) Also, you have a choice to use tux or not, so if it becomes a security risk, or prone to crashing, you can turn it off. You don't have that choice with windows/IE.

      AFAIK IIS doesn't patch itself into the kernel, but who knows....

    7. Re:Duh... by Xtifr · · Score: 2

      That's "closed-source code", not "closed source-code". I know, you were trying to make a joke, but consider your audience here. If it involves English grammar, it's going to be way over their heads. (Now a joke involving PERL grammar, on the other hand...:)

    8. Re:Duh... by fougasse · · Score: 2

      Yeah, that would be silly. And no operating system I know does it.

      The Windows HTML parser is in DLLs mixed with other OS functions, and it's closely integrated with the file manager/shell (Explorer--though more recent versions of IE run in a separate process from Explorer), but it has always run in user space.

    9. Re:Duh... by Alan · · Score: 2

      Okiedokie then, I was under the obviously wrong impression that that is how it was. Oh well, guess there are other reasons for IE's crashes to blue screen the OS then :)

  9. Another viewpoint by yogi · · Score: 3, Interesting
    Ross Anderson's argument appears to be based around the trade off between massive peer review ( Good Thing! ) and the ease of finding a flaws if you have the source code ( Not so Good Thing ).

    This is certainly true, however there is a large amount of security appears to come from the community / vendor around the code too. Yes, I'm generalising, but open source programmers treat security problems as security issues, rather than as a PR problem. Even though the apache team ( rightly, in my opinion ) criticized ISS for the manner of their reporting, they did also release a full disclosure release, and a suitable, working patch within 36 hours of the issue going public.

    I don't see many vendors responding that quickly, although, to be fair, the apache team did know about the vulnerablity already.

    It's all about the "Window of Exposure" really. Go to Bruce Scheiners Cryptogram page to see some excellent arguments about peer review, and the whole window of exposure idea.

    1. Re:Another viewpoint by GigsVT · · Score: 2, Interesting

      ease of finding a flaws if you have the source code ( Not so Good Thing ).

      This is contradictory to the rest of your post. You mention window of exposure. While you might argue the window of exposure starts with public disclosure, it really does not.

      A flaw that is found in a piece of software often was there for years. The window of exposure actually starts when the flaw is introduced, since from that point forward, there is the possibility of a person or group having knowledge of the flaw and not releasing it.

      It's entirely possible that there is a blackhat group or groups, which we will probably never discover, that is harboring hundreds or thousands of unreleased vulnerabilites. Such a group would have immense power, the ability to disrupt the information systems of nearly every company on the planet, on a whim, or when hired to do so.

      Open source, with it's ease of finding flaws, reduces this "true window" of exposure.

      It's easy to fall into the trap of believing that all security threats are script kiddies running tools against well known vulernabilities, since the majority of the attacks reported are of that nature, but that doesn't mean that the threat of a true blackhat group doesn't exist, and couldn't be devestating.

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
    2. Re:Another viewpoint by angel'o'sphere · · Score: 3, Informative


      Open source, with it's ease of finding flaws, reduces this "true window" of exposure.


      No, this is wrong.

      Open Source INCREASES the window of expousure. With open source everybody, the good "examiner/reviewer" and the bad attacker, has he ability to find a flaw by analyzing source as soon as the source is released.

      With closed source the attacker needs to analyze the assembly code or needs to drive black box attacks from the outside.

      The "window of exposure" is in both caes the same, the flawed system has "a flaw" since it is installed and running somewhere and such it is open for an attack even if no one ever will know how to attack it.

      If YOU like to distinguish between (hypotetical) window of exposure and true window of exposure you have to conclude that the true window of exposure is in OSS bigger.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    3. Re:Another viewpoint by Tony-A · · Score: 2

      Nope. Open Source DECREASES the window of exposure.
      With open source everybody, the good "examiner/reviewer" and the bad attacker, has he ability to find a flaw by analyzing source as soon as the source is released.
      With closed source the attacker needs to analyze the assembly code or needs to drive black box attacks from the outside.

      The latter method is also quite useable with open source. So, other things equal, residual flaws will be discovered earlier with open source and the window of exposure will be smaller with open source.
      the flawed system has "a flaw" since it is installed and running somewhere and such it is open for an attack even if no one ever will know how to attack it.
      Correct. Open source will tend to start out better because the coder knows that the flaws are a bit more exposed and cannot be "safely hidden".

    4. Re:Another viewpoint by angel'o'sphere · · Score: 2


      The time to discover a security hole in OSS is smaller for both black hats and the "good guys". A black hat is more likely to discover a flaw and exploit it quickly, but someone's also more likely to quickly find and fix the same flaw. There's going to be more holes exploited, but the same holes are also likely to be found and fixed much more quickly.

      Interestng, so there is a white hat conspiracy running just analyzing and reviewing all open source source code to find security flaws?

      I did not know that, I thought the talk about security and OSS versus closed source software would be hypotetical only.

      Glad to know someone is indeed reviewing all the stuff on source forge etc. Well, I miss a detailed analysis, easy to read and easy to apply, where can I get it?

      angel'o'sphere

      P.S. the post above is ironical, in case you don't get it. The rest of the posters comment I'm answering to is quite insightfull.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  10. Maybe... by ins0m · · Score: 4, Interesting

    The trade-offs:

    Pros:
    Closed-source: No one can see your code, thus eliminating obvious exploits (buffer overflows, race conditioning, etc.) from being quickly jumped on. Less chance that an external developer will accidentally or intentionally misuse some of your libraries or otherwise write in exploitable code.

    Open-source: Everyone can see your code, thus allowing a multitude of additional glass-box testers to help patch things more quickly to adapt around problems a project leader may/may not see. Quick turnaround on patching of code.

    Cons:
    Closed-source: Limited field of testers; slower turnaround on bug/exploit fixes when even reported (can go on unreported for months, or even when reported, may be ignored or shelved indefinitely).

    Open-source: Since everyone can see your code, some black-hat punk is invariably going to find some exploit and blast your distributions for it. Also, QA is nigh impossible to timely enforce when 100's of developers submit patches, sometimes anonymously.


    Opinion: Both may seem to be even; however, the timeliness of a fix can make all the difference in security, and waiting days vs. weeks or months for a patch can make or break an information-driven business. Also, even if an open-source project is patched with an exploit ingrained, there will still be a quick turnaround on patching it, as there is for any bug. IANA genius, but at least from a business standpoint, it would seem that quick and usually-reliable beats slow but usually-guaranteed.

    --
    Never attribute to Hanlon that which can be adequately attributed to Heinlein.
    1. Re:Maybe... by Wolfier · · Score: 3, Interesting

      It also depends on what systems black hats "like" to exploit.

      For example, more valuable data is stored on MS machines than Linux boxes right now. Of course they're going to sharpen their skills hacking the MS box more.

      In my opinion it also has something to do with the MS-hate common in the hacker communities.

      (I know using MS as an example is not a good one since their software...well, let's not go that way. But my point is, it depends a lot on what the black hats want to do.)

    2. Re:Maybe... by Wolfier · · Score: 2

      Also, it is worth mentioning that closed-source programmers tend to spend more time on bogus features that purport to satisfy legal contracts, clueless marketers, or plain stupidity.

      (e.g. dvd region control, dancing paperclips, copy protection)

      While open-source programmers tend not to be disturbed by these dark forces, thus can potentially spend more time on improving the quality of the code.

    3. Re:Maybe... by sheldon · · Score: 2

      The availability of patches means nothing if the patches are not installed.

      Nearly every exploit I have encountered out in the wild has had patches available for the systems effected months prior. If the patches had been installed everywhere, there would have been no problem.

      So I would have to argue that a question of a few days is statistically irrelevant when compared to the social problem of admins and users not applying the patches.

  11. HA HA HA HA by jackb_guppy · · Score: 2, Insightful
    Idealizing the problem, the researcher defines open-source programs as software in which the bugs are easy to find and closed-source programs as software where the bugs are harder to find. By calculating the average time before a program will fail in each case, he asserts that in the abstract case, both types of programs have the same security.

    If he truely said this... Then the report is laughable.

    1) Windows is open-source, because the bugs are easy to find. But you can not fix them.

    2) He changes all common meanings, so the report can be used as FUD.

    Is he a CS major or MS major? (Martketing Science)

    1. Re:HA HA HA HA by ishark · · Score: 3, Informative

      Idealizing the problem, [....]

      If he truely said this... Then the report is laughable.

      It doesn't take long to verify, you know....

      Acroread->Search->"Idealizing"

      No occurences of 'Idealizing' were found in the document.

      Conclusion: wherever that text comes from, it's not the paper being discussed. More luck next time.

      (-1, Lazy) for not doing the search yourself :)

    2. Re:HA HA HA HA by perky · · Score: 2
      Dear Sirs,

      The current settlement plan between Microsoft and the US Department of Justice, fails to stop the "Monopoly Tending" [sic] of Microsoft. In actually[sic], it helps strengthen Microsoft's Monopoly[sic - capitalisation] to the point of helping Microsoft try to
      destroy the only competitor to they [sic] reign of power -- LINUX.

      The agreement's greatest flaw is the definition of a class of companies that Microsoft "needs" to talk to [sic] ISVs and OEMs and the like.
      I am [sic] and have been [sic] both types of "companies" [sic]. I build my own machines - like a DELL or Gateway. I write code and create Integrated Systems [sic] akin to a [sic] Symantec or a [sic] CSA. But I am also a single person, to[sic] small for Microsoft to talk to, to [sic] small to afford the cost [sic] to go their meetings about their technology. I have for years be [sic] forced to buy Operating Systems [sic] at full retail
      prices, though I build me [sic] own machines.

      I was blocked for years of [sic] getting
      Windows 95 OSR2 -- an OEM only version of the OS containing the newest hardware interfaces.
      By allowing this agreement to contain clauses that "anoint" companies that Microsoft must "talk" to [sic] you have caused Microsoft [sic] greater monopoly power
      by being the "glue" in a cartel of large companies all protecting they [sic] own
      pocketbooks.

      A case in point is IBM. Microsoft was at one time offering [sic] PowerPC Windows NT System. PowerPC is used in IBM's Midrange Machines [sic - capitalisation] and
      Apples [sic] Macintoch. Microsoft pulled the support of that processor. Which [sic]
      give [sic] Intel more years to keep pricing inflated [sic] on its processors - both the x86
      line and the Alpha that Intel was building for DEC. Compaq Computers now own DEC. Instance [sic] Microsoft strengthen two of its best business partners and itself while trying to hurt IBM.


      With NDA [sic] and limited information that Microsoft is required to release. [sic] LINUX will be hurt by not having access to information for compatibility. LINUX is a competing operating system that Microsoft can not [sic] buy or sue into non-existence. Companies, like RedHat, make money is [sic] selling services or easy to install copies of the OS, without having to pay a licensing fee. But LINUX licensee [sic] places a burden on a developer that
      code made available via under it [sic] licensee [sic] is free of other licensing restricting and the full source is available at no extra
      charge. In this way the next developer can improve the code and again pass it on. [sic]Allows for thousands of people to give a little of themselves for the greater good.


      Signing a [sic] NDA or paying for trips to meetings, [sic] places a unfair burden in [sic] small "guys" [sic] like myself to compete, or share what I have learned. Even to share code, since licensing restrictions may get in the
      way. Instances [sic], I am "un-clean" to work on open source projects. I may use some else [sic]IP by accident.


      In the end, the agreement should be blocked and [sic] better settlement be reached. IF [sic] the agreement is kept, then change it so the following happens:


      1) All API's [sic]are published, documented, and examples made available 6 months prior to first general release containing the API's [sic]. Release of API's [sic] is made by any method of Microsoft's choice as long it is also placed on [sic] microsoft.com website, [sic]easily found (example: Search: "API WinXP") and [sic]
      limited to HTML version 3 display standards. Further [sic] not having to register
      with [sic] or agree to a [sic]NDA with Microsoft or any other company to gain access
      to this information. Further to state... an API is not Intellectual Property[sic], but ways to "talk" to a
      program that is[sic].
      2) A Beta version is released and in the hands of all whom [sic] asks [sic] for it, no
      later than 3 months prior the general release or an [sic] product. Any changes to
      that Beta must [sic] in the hands of all who received the original shipping, to [sic] later
      than 2 weeks after the change [sic] were made or 2 weeks prior to general release, which ever [sic] is earlier. An exception is a [sic]emergency release because a [sic] virus [sic]exploit.


      3) Remove any clause that defines who Microsoft has to talk to. Instead place "Any person who wishes [sic] know".
      Change 1, insures [sic] that if I wish to create a product that interacts with a Microsoft product, that I have full and complete information. AND [sic] will not be blocked or restricted by Microsoft. Change 2, [sic] Allows [sic] me to make compatibility tests and modification to my code prior to Microsoft releasing their product. This way my customers are protected from changes that may break code they are running. Change 3,[sic] Allows [sic]anyone who wishes to go a
      technology meeting will [sic] be allowed [sic] IT IS NOT LONGER A "PRIVATE CLUB".


      If in way I can help, please let me know.


      Jack Beglinger

      8900 Keeler Ave

      Skokie, IL

      847-677-2427


      If the parent's author really said that... then he's a fool. Now go and read about Anderson

      --
      "The new wave is not value-added; it's garbage-subtracted" - Esther Dyson, Dec 1994
  12. Which tend to be patched faster? by Pentalon · · Score: 4, Insightful

    I haven't read the paper yet, but I would say that if generally any two particular pieces of software have the same number of bugs or security issues, the open source software will benefit technical server groups more for the ability of those groups to analyze the code and make their own fixes if necessary, and for the way in which the community generally very quickly responds to discovered flaws. Closed source software does not tend to respond as fast or offer the flexibility of allowing users to analyze the code. Of course, I haven't read the paper yet. Maybe they take that into account.

    1. Re:Which tend to be patched faster? by tshak · · Score: 2

      As posted earlier by another user, many corporations have change management restrictions that will not allow an install of a patch that's "hot off the compiler". Many patches that comeout within 24-48 hours in OSS have not gone through the necessary regression testing that a closed-source patch may have recieved. In this case, the only benefit you have with OSS is the choice to use an unstable patch, however, I know few admins who would make such a choice. So, while I agree that there may be a benefit with OSS in this regard, I contend that the benefit is minimal and pratically none in larger organizations.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
  13. Oversimplified, abstract, and useless by iiii · · Score: 5, Insightful
    Idealizing the problem, the researcher defines open-source programs as software in which the bugs are easy to find and closed-source programs as software where the bugs are harder to find. By calculating the average time before a program will fail in each case, he asserts that in the abstract case, both types of programs have the same security.

    I am not sure how much value this has. There are a lot of other considerations.

    With open source you have the source, so you can do something about bugs, you can fix them. And you can also look for potential issues in the code. You are in control of your own security. And a potential attacker has no idea what you've done with your particular implementation.

    With closed source you are completely dependent on the vendor to provide fixes. First you have to prove to them that something is wrong, then, if you are lucky, after some period of time, the will provide a udpate which may or may not fix your particular problem. They may not be as motivated as you would be to fix the problem.

    I'll take the Open Source choice any time. That way the people who care about security are the ones in control of security, an arrangement that is likely to work better than any other.

    But at least "he acknowledged that real-world considerations could easily skew his conclusions. "

    --
    Light cup, beer drink, thin so chain, neck turtle fat, man I won't say it again
  14. The old saying... by sootman · · Score: 2, Insightful
    Proprietary programs should mathematically be as secure as those developed under the open-source model, a Cambridge University researcher argued in a paper presented Thursday at a technical conference in Toulouse, France.

    In theory, there's no difference between theory and practice. In practice, there is.

    Supporters in the Linux community have maintained that open-source programs are more secure, while Microsoft's senior vice president for Windows, Jim Allchin, argued in court that opening up Windows code would undermine security.

    The two things are nowhere near the same. 'Open source development' is not at all the same thing as 'closed source development, opened up later.'

    People complain about posting without reading, but that's it--if it's from news.com/ZD/etc., it's wrong. :-)

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
  15. That should read by DeadSea · · Score: 3, Interesting
    Ross Anderson just released a paper concluding that open source and closed source software are equally insecure.

    All software has security vulnerabilities. Software with vulnerabilites is secure as long as nobody knows about the vulnerabalities or nobody exploits the vulnerabilities. Security is a process, not a state. To run a secure system, you have to know as much about the vulnerabilities as the hackers. You have to patch your systems. You have to manage your risk.

    All it takes is one hole in some piece of software that you are running. If somebody knows about it and hacks you you are insecure. There are channels for discussing security vulnerabilities for both open and closed source software. Holes in both open and closed source software get patched. In that respect they are equally secure. There are more holes in both. It doesn't matter how many holes, it only takes one. In that respect they are equally insecure.

  16. Insightful article from IBM Research on this topic by forged · · Score: 2
    There is an article published in 1999 by IBM's John Viega, Senior Research Associate, discussing Open source software: Will it make me secure?.

    While the article is over 2 years old, the logic behind the man's reasonning is still very actual and he raises some good points.

  17. Security isn't the only advantage of OSS by Junior+J.+Junior+III · · Score: 2

    Seriously, all things being equal, wouldn't you want to have access to the source code if you could have it?

    Maybe it's more secure, maybe it isn't. I think security depends as much on the humans who set up and use the system as it does the software. But security is just one selling point.

    If you don't have the source, you can't modify the code. All you can do is configure. (Well, unless you like hacking binary.) But if you have the source, you can de-bug, add features, remove unwanted features, etc.

    And if you don't have the knowledge, skill, or desire to do this on your own, does it hurt you any to have the source available?

    There's another sense in which having the source code makes you more secure: you're not tied to the vendor. If they go out of business, you don't have to go shopping for a new vendor who has a similar product that you'll have to migrate to in order to enjoy upgrades, patches, and tech support. If they decide to add features to a new version that you don't like, you can branch the code off and keep your house version however you like it.

    There's a zillion reasons to prefer open source software. It's not just about security.

    --
    You see? You see? Your stupid minds! Stupid! Stupid!
  18. Bugs are inevitable, of course by unformed · · Score: 2

    I'll accept his statement that both are equally secure, especially because it's 90% based on the administrator. The difference is however, an open-source bug has many more eyes upon the code, and hence can be fixed a lot easier. Also, (though this doesn't pertain to most closed-source products) for programs that were written to be platform-independent, all the fix needs to be is a small .diff file, for the administrators who want to be as secure as possible, and the official builds and packages can be released in appropriate time.

    The other great thing about OS is you -yourself- can fix the bug. No, not everyone is a kernel-hacker, but theres many bugs in small programs too.

    IE: Not too long after I had first installed linux, I found out I couldn't play a certain DVD with any DVD player (Ogle, MPlayer, Xine, etc) although they played all of the others ones perfectly. The program was libdvdread (I believe) was dying on a failed (and completely unnecessary) assert(). So I opened up the sources, commented that line, recompiled, and wa-la, I could watch it now.

    So, yeah, there will always be bugs; some OS products may even have more because they're made by people in their spare time (ie: apps like Ogle); but regardless, because there's many more eyes on it, bugs can (and generally are) fixed a lot quicker....

  19. bugtraq reference by MartinG · · Score: 5, Insightful

    open source software isn't as bug free as we would all like to think.

    All this shows is that open source software has had more bugs discovered and fixed than we would have liked there to have been in the first place. It has no relation at all to the number of remaining undiscovered bugs, and therefore no relation to the security of the software in question.

    It's simple:

    Assumptions:
    1) When written, open source and closed source software have on average the same number of security bugs.

    Observasions:
    1) The number of security bigs in a piece of software only decreases when they are fixed.
    2) A security bug is typically fixed after, and as a result of it being discovered. (they can be fixed by accident, but i will neglect this as it's irrelivent anyway)
    3) Closed source software and open source software can both have bugs discovered by trial and error style cracking.
    4) Open source software can have bugs discovered due the sheer numbers of people with access to the source.

    Conclusion:
    1) I conclude that open source sofware will tend to have any bugs discovered more quickly because there are more ways to discover them, and all ways available to closed source are also available to open source.

    Can anyone fault my reasoning? It seems to me that both start equal on average, but open source will tend to have the bugs removed more quickly.

    --
    -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    1. Re:bugtraq reference by Mr_Silver · · Score: 4, Insightful
      4) Open source software can have bugs discovered due the sheer numbers of people with access to the source.

      True, but just because they can doesn't mean that they do. One of the great myths about open source is that *anyone* can just dip in and discover a bug and how to fix it. That simply isn't true.

      I can find bugs in closed and open source bugs in exactly the same way, by using the product until something wrong or unexpected happens. But just because I have access to the source doesn't mean that I could actually fix the bug.

      If you look at projects such as Apache and Mozilla, they tend to have a number of people who know the code very very well and a few that given a couple of hours might be able to work something out and a very large number of people who, in the whole grand scale of things, are of no use at all in providing a fix to a bug.

      This contrasts to a large number of individuals in an organisation who know the code very well and work with it day in day out.

      Finally let us not forget that whenever people talk about security they often use Apache and IIS as their examples. Be aware that these are not really good examples. Not all OSS projects are of Apache's quality and not all closed projects are of IIS' quality.

      You've ended up picking one of the best in the OSS world vs one of the worst in the closed world. It would be a little like compairing Ford's best car with Vauxhalls worst. Just because the Ford won all the time, does it mean that all Ford's are always better than all Vauxhalls?

      (I think Vauxhall is Opal in the US)

      --
      Avantslash - View Slashdot cleanly on your mobile phone.
    2. Re:bugtraq reference by Mr_Silver · · Score: 2
      This contrasts to a large number of individuals in an organisation who know the code very well and work with it day in day out.

      Whoops, this doesn't contrast at all. What I was trying to say is that in a closed organisation you have a number of people who know the code very well, some that could in a couple of hours and thousands of people who are no help at all.

      In other words, pretty much the same as OSS. Just because in OSS everyone has access to the code doesn't mean that they know where to look and how to fix it.

      --
      Avantslash - View Slashdot cleanly on your mobile phone.
    3. Re:bugtraq reference by MartinG · · Score: 2

      The "large numbers of invididuals who know the code well" applies to close source and open source. Open source in addition has those who do not know it that well, but can fix a few bugs. I'm not suggesting that "just anyone" can fix a bug. In order for my conclusion to be correct, there would only have to be one person who has fixed one bug once that they wouldn't have been able to fix without the source. (and even _I_ fall info that category)

      As you say. You can find bugs in open and closed source in the same way, but some people have two ways of finding bugs.

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    4. Re:bugtraq reference by MartinG · · Score: 2

      Well, I can see where that view comes from and as the size of the source base increases it would appear to be more likely to be true. However, its not true in practice because bugs are quantized.

      The flawed theory:
      Suppose you have a newly written app with bugs in it. The rate of fixing of bugs is proportional to the rate of their discovery, and the rate of discovery is proportional to the number of bugs left[1] This means that after half the bugs are fixed the rate of discovering new bugs will halve, so the rate of fixing them will halve. In other words, its an exponential decrease that will never reach zero.

      That appears to be the theory, and it stands up well when there are hundreds of bugs, but when you get to only a few left (not that you would know when you were there!) then you get a quantization effect, meaning that it is in fact possible to have a bug free application. It's a moot point really though because you can never know when you have got there.

      [1] I have omitted to mention that this is not quite true because some bugs are harder to trigger than others and the easy ones will get fixed first, leaving harder to trigger ones which will not get discovered and fixed as quickly. This is not too important though and means that the whole process would slow down more over time, but otherwise remain unchanged. That is or course unless there are bugs which are so hard to find that they take infinite time to trigger. I assume not. and anyway, would you really feel the need to fix them if they did? :-)

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    5. Re:bugtraq reference by sheldon · · Score: 2

      4) Open source software can have bugs discovered due the sheer numbers of people with access to the source.

      Unforunately this hasn't proven out in practice. Having access to the source doesn't mean that people look at the source. Even if they do, it doesn't mean that they know how to fix the bug correctly.(look at that recent ISS fix for Apache that everybody claimed wasn't a proper fix)

      Again I think we're back to the same fact that there is no fundamental difference. It's important that you remember to disconnect "in theory" from "in practice" in any analysis.

      Plus, just because you are not aware of the inner operations of a company doesn't mean that they aren't, in effect, performing the same basic functions as the open source projects. I'd refer you to that article from the Lotus developer who pointed out how little actual difference there is between commercial approaches and what was described by ESR in his Cathedral paper, but I can't find the damn link right now.

    6. Re:bugtraq reference by MartinG · · Score: 3, Interesting

      CSS will have less bugs discovered for it
      Doesn't that really mean that the bugs will just be discovered more slowly?

      It is harder to find bugs by trial and error than by reviewing the source.

      Can you explain how you arrived at that conclusion.

      MS patches most bugs in their products before their is an exploit

      How can you know that unless you have access to internal Microsoft information? Almost without exception the updates that I have seen from Microsoft are a reaction to problems found by others. The patches I assume you are talking about are the ones MS fix and we never hear of. How do you know they exist?

      I accept your point though that the "2 ways" I talked about of discovering bugs for OSS applies to all people, not just white-hats.

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    7. Re:bugtraq reference by MartinG · · Score: 2

      Having access to the source doesn't mean that people look at the source.

      They don't have to. Only a significant minority have to - and they do.

      The apache exmaple is perfect. Yes, one fix offered was not "proper" (even though it did the job temporarily some say) but the proper fix is available now, and with CSS there likely would not have been any fix so far.

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    8. Re:bugtraq reference by MartinG · · Score: 2

      Open Source can do that but most don't.
      Most don't have to. Even if less than 1% do, my conclusion stands.

      I don't see why you would assume the incidence of bugs in released Closed Source and released Open Source is the same.
      In the absence of any reason to believe otherwise, I chose an unbiased starting point. Do you have any reason to suppose that one starts off with more bugs than the other on average?

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    9. Re:bugtraq reference by Tony-A · · Score: 2

      True, but just because they can doesn't mean that they do. One of the great myths about open source is that *anyone* can just dip in and discover a bug and how to fix it. That simply isn't true.
      Yes, but.
      First thing in eradicating bugs is to be able to reproduce it.
      Then you need to somehow bring together knowledge of the bug and knowledge of the program.
      Open Source increases the options, and over time tends toward more bug-free programs.

    10. Re:bugtraq reference by swillden · · Score: 2
      Well, your original statement was a little bit ambiguous. I chuckled over it because I read it the "wrong" way at first as well. I would rephrase it as:

      "The number of security bugs in a piece of software decreases only when they are fixed."

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    11. Re:bugtraq reference by dirk · · Score: 2

      CSS will have less bugs discovered for it
      Doesn't that really mean that the bugs will just be discovered more slowly?

      They should be discovered less slowly, but if all bugs will not be discovered (which I believe is a reasonable assumption) having 2 ways to find bugs means that more bugs will be found and patched, but having only 1 way to find bugs mean more bugs will go undiscovered.

      It is harder to find bugs by trial and error than by reviewing the source.
      Can you explain how you arrived at that conclusion.


      Many bugs are trivial to find in the source. Something like misassigning a variable would be much easier to find via looking at the source. In trial and error someone basically has to devise and check every possible way to break something, which not only takes time and ingenuity to devise all the tests, but to actually see if it breaks something. For example, if there is a bug in a program that mishandles a filename if it is longer than 128 characters, you can check the source and see potentially see the problem by just reviewing source. To find it through trial and error, someone must think to try a filename longer than 128 characters, and even if it does mishandle it, they have to be able to figure out what happens when it mishandles it, all through trial and error. This would be much simpler to do by stepping through the source.

      MS patches most bugs in their products before their is an exploit
      How can you know that unless you have access to internal Microsoft information? Almost without exception the updates that I have seen from Microsoft are a reaction to problems found by others. The patches I assume you are talking about are the ones MS fix and we never hear of. How do you know they exist?


      They may be found by someone else, but they then report them to MS and they get fixed before there is an exploit in the wild for them. This is no different than a white-hat finding a bug in OSS and releasing a fix. Both fix the bug before there is an exploit available for it. The key is to patch the whole before someone finds a way to take that bug and expand it into a true exploit. Knowing something has a buffer overflow isn't useful until someone has figured out how to make it execute code that will give them root on the system.

      --

      "Information wants to be expensive" - Stewart Brand, the same guy who said "Information wants to be free"
    12. Re:bugtraq reference by Tim+Browse · · Score: 2
      The number of security bugs in a piece of software only decreases when they are fixed.

      That's assuming they really are fixed...

      • "Ed Yourdon reports that when programmers make changes to a program, they typically have a more than 50% chance of making an error the first time."
        -- Code Complete, Steve McConnell

      Tim

    13. Re:bugtraq reference by sheldon · · Score: 2

      They don't have to. Only a significant minority have to - and they do.

      But not in practice. There are certain exceptions to this rule, with say Apache. But if you look at the big picture this generally does not occur.

      It seems one of the problems with the open source claims is that they all rely upon anecdotal evidence, which is not really useful for an intelligent discussion.

    14. Re:bugtraq reference by sheldon · · Score: 2

      An even more important data point is that IIS has a large feature set, whereas Apache has a rather small feature set.

      If one were to also include all of the add-on's to Apache, perl, php as well as comparable ftp, smtp, nntp and such add-ons in your discussion of bugs and so forth you'd find that it's pretty close to IIS in terms of problems. Especially if you used wu-ftpd as part of the comparison.

    15. Re:bugtraq reference by bluGill · · Score: 2

      This contrasts to a large number of individuals in an organisation who know the code very well and work with it day in day out.

      I have to challange this. Where I work I own a section of code, and I'm the only one who can effectively work with it. There are a few people who know some details of narrowing down where the bugs are, but I'm the only one who can really fix them and have confidence that the fix works. I know about the same amount about the code some of my neighbor's wrote, but for most of my neighbors I know nothing about their code. Because I know my parts I'm slightly better than someone off the street, but not much.

      In theory I have access to all the source, I have built all the souce more then once (I own several enumerations that are used by everyone), but that doen'st mean I can open up a random file and fix a bug with any confidence that I didn't introduce more bugs then I fix.

    16. Re:bugtraq reference by JamieF · · Score: 2

      >This contrasts to a large number of individuals in an organisation who
      >know the code very well and work with it day in day out.

      I infer that you mean "at a commercial software company". In my experience, few companies actually do pair programming or even code reviews, so on a project with 100 programmers you have 100 people, each of whom know ~1% of the code. So on average, one set of eyeballs sees the code. Not good. Worse, that one average set of eyeballs isn't attached to one brain - what I mean is, if you had one person reviewing all the source, you could make sure to have them check the entire app for a given kind of bug. Instead you have 100 different brains looking with 100 sets of eyeballs, each at 1% of the code. So something that Betty knows not to do will be done as a matter of personal style by Dave and due to inexperience by Hank.

      At least open-source *allows* more brains and sets of eyeballs to look over the code. In a commercial context either it's baked into the process and is part of the development project plan (making time in the schedule for code reviews and maybe pair programming) or it's not, and if it's not, the alternative is "Stop looking at Dave's code, get your own damn code done and then let's ship this thing."

  20. To be fair. by jellomizer · · Score: 2

    Most of the time when comparing Closed Sourse Security to Open Source Security Most of the time people want to compare Microsoft as a flagship of Closed Source and Poor security. And they use Linux with all the latest patch or Open BSD which is a model of security. I think it would be more fare if you compared Linux as the OS and Solaris as the Closed Source. And check the security for those two in that case you may find less of a gap. Using Microsoft as a judge of anything is really giving closed source a bad name sience they only make junk.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  21. Comment removed by account_deleted · · Score: 3, Interesting

    Comment removed based on user account deletion

  22. From Experience, Open Source is more secure... by linuxrunner · · Score: 2

    I personally run an open source perl portal... Don't worry slashcode, I'm not competing with you :)

    Just recently, a new developer came on board, and really studied the code. He successfully found about 10 odd / abstract ways to exploit the code.

    I might be an ok programmer but I NEVER in my life would have found these. It's just not my specialty....

    Without the code being opensource and open to viewing by others, I never would have thought to look for these types of expoits, and they would have remained in the code. And if someone, with malicious intentions, tried them... I would have been.. in short... screwed!

    NOW...
    Two things happened here to require secure opensource programs. 1) I was willing to quickly make the changes.. and not just quick patches, but really study the code, and look for the best way to fix it.
    2) I had a good samaritan.... He could have been malicious, and had his way. He didn't.

    I personally believe that both are required, and then yes, open source is more secure and will always be.

    --
    www.slightlycrewed.com - Because aren't we all?
  23. As always, the answer is..."It depends" by DeepDarkSky · · Score: 3, Insightful

    Closed source can have fewer bugs (security bugs are merely a special kind of bug) if the company that does the development is discplined and puts the focus on the quality (i.e. minimizing the bugs) of the software. Because they are all in the same organization, and they all follow development standards and methodology and provide good QA testing. That is, if the market and marketing department and the bottom line allows them time to do things correctly, which often is not the case.

    Open Source software often depends on a somewhat less uniform and disciplined (but can often independently more disciplined than their commercial counterparts). There is usually less formal organization. This is where it really depends on the quality of work of the people working on these projects.

    Because Open Source projects are less sensitive to the market and the bottom line (in general, except for the projects undertaken by commercial entities), they are not as likely to have quality problems because of lack of time.

    But to say that Open Source projects have less bugs because more eyes are looking at them is a pretty big assumption. Just because more eyes can look at something doesn't mean more eyes will. The bugs can stay in Open Source projects for years before someone finds a problem - in this case, I'd say it depends on how popular this project is and how attractive is it to people who will look at code and look for problems and can understand what to look for.
    If anything, in a short-cycled, less popular piece of software, a commercial software can have better quality than an open source one if the commercial developers are disciplined and dedicated. It is simply a matter of time.

  24. Is Ross Anderson a CS major or a MS major by jonatha · · Score: 2, Insightful

    He's a well known and highly competent researcher in the security area (especially smartcards).

    He also has a penchant for self-promotion, so the "Marketing Science" suggestion is perhaps not too much of an insult...

    --
    The SCO lawsuit makes me wish my company were in Utah. We need a new building.
  25. bugs and bugfixing by Tom · · Score: 2

    There are essentially two approaches to security: Proactive and reactive.

    Good coding, auditing and QA are proactive. They are expensive, boring, take a lot of time and you are never sure that there's nothing left that slipped through anyway.

    Which is why most code, both free and proprietary software, relies mostly on reactive security (though they will always pay lip service and often more to at least good coding).

    In proactive security, there should be little difference between free and proprietary software, as the bugs are found and fixed before the product gets shipped.

    Free software shines in reactive security, however. The blinding speed with which bugs get fixed is impressive.
    I found that Mozilla overflow that made the news recently, and it took the Mozilla team about a week to come up with a fix. My experience with commercial vendors is that it'll take them a week to come back to you and ask for more details. If they give a damn at all.
    For example, there are critical bugs in IE that have gone unfixed for months and are still there. That outlook==worm problem won't go away this century, either.

    It's not the number of bugs that counts, it's the severity and the speed of bugfixes. Give me 10 light apache bugs that are fixed within the week any day, but keep that 2 critical IIS bugs that take a quarter to fix.

    --
    Assorted stuff I do sometimes: Lemuria.org
  26. Neither, he's a BS major by drew_kime · · Score: 2

    Is he a CS major or MS major? (Martketing Science)

    I'll leave it up to you to decide what the "BS" stands for.

    --
    Nope, no sig
  27. Re:PDF sucks, here is HTML by billnapier · · Score: 2

    Is there a real valid reason for this type of document to be in PDF form?

    Have you looked at your HTML translation? The formula's and stuff at the end are unreadable. To really have done it in HTML they probably should have been rendered as GIF's.

    The paper was probably prepared in LaTeX to begin with. From there it's easy to put it into PostScript or PDF. Frankly, if you're going to be doing academic work, especially work involving lots of formulas, LaTeX is the way to go. Easy to create, really sharp looking, and readable.

  28. A more practical view by Trailer+Trash · · Score: 5, Insightful

    I have been running an ISP now for two and a half years, using Linux and FreeBSD exclusively. In that time, the following items have cropped up that I had to fix:

    1. Bind hole (root exploit at the time, now it's chroot'd and running as named.named)
    2. ftpd (root exploit, I turned ftpd off)
    3. telnetd (root exploit, turned it off, too)
    4. openssh (root exploit, simply recompile of new version)
    5. current Apache bug, which even if it's an exploit is far from root or anything else useful

    That comes down to a problem to be fixed every 6 months or so. This is real world. It doesn't matter a rat's ass to me what all shows up on Bugtraq, what matters is if someone is going to be able to hack my boxes. Most of the "bugs" aren't going to leave me open to remote exploit.

    Given that, it's ludicrous to say that my setup is no more secure than a Windows/IIS setup. IIS updates come out weekly, sometimes requiring reboots. I literally don't have the time that it would take to run Windows here.

    And IIS is probably the most-hacked piece of Windows. Want to compare it to Apache? Apache runs as nobody.nobody on most systems, or perhaps www.www. How about IIS? Hack Apache and you're an unprivileged user who'll have to rehack the box from the inside. Hack IIS and you're the Administrator. Even if Apache was as exploitable as IIS, it still wouldn't be as big a deal.

    Michael

    1. Re:A more practical view by KidSock · · Score: 2

      Hack IIS and you're the Administrator.

      Actually, you can configure the user for IIS too. I don't think it's configured this way by default but I get the impression that it's very easy to inadvertantly set it up to run it as Administrator or SYSTEM rather, which is even worse. I think if you use "impersonation" it has to run as SYSTEM.

    2. Re:A more practical view by JamieF · · Score: 2

      There's a flaw in your argument. First you dismiss all non-remote exploits, then you dismiss Apache remote exploits since they will have to "rehack the box from the inside". Well, here come those non-remote exploits back into the spotlight again. Script kiddies definitely favor the remote root exploit, but nevertheless, if a cracker gets a shell running as "nobody" or "www" that gives them a chance to start hammering on those *local* root exploits.

      It's definitely better from a probability standpoint to run those services as nobody or www anyway, just in case the cracker has a dumb script that expects them to run as root, and will fail otherwise. But don't dismiss all those local exploits that could be used by a non-root remote exploit to get root.

  29. It's Exactly like the Movie Spider-Man by Uggy · · Score: 5, Insightful

    Look... why is it that highly paid movie editors who poured over Spider-Man for many months with millions of dollars, couldn't find what the movie viewing public did in the opening weekend? According to movie-mistakes.com:

    Fans have so far spotted 77 continuity errors, the most flaws identified in an opening weekend, according to Web site movie-mistakes.com.

    Jon Sandys, who runs the site, said the number of mistakes could be a symptom of the movie's popularity.

    "It's obviously possible that it's got a higher than average number of errors, but huge numbers of people are going to see it and that makes for lots of pairs of eyes checking every inch of the screen," he told the Independent newspaper today.

    That sound remarkably familiar to Eric Raymond's Cathedral and the Bazaar? When Spider-Man was checked for bugs by the highly paid editor (programming team) and none were found, did they not exist. Is the movie inherently more flawed when the bugs were found and reported by the viewing public (open source programmers)?


    --
    Toddlers are the stormtroopers of the Lord of Entropy.
    1. Re:It's Exactly like the Movie Spider-Man by SuiteSisterMary · · Score: 2

      The many eyes argument tends to fall apart when you see major bugs in MAJOR OSS software projects, like Apache and SSH, that have survived for years, through entire version numbers. The simple fact of the matter is that any complex system is going to have unforseen interactions.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
  30. Misses the ease of reverse engineering nowdays by arivanov · · Score: 2

    This understimates the ease with which some people reverse engineer closed software for living. As a result the "applying a new abstract attack" example is completely bogus. If you know how a vendor thinks, writes and generally does things then you can apply the attack very soon after its release. It is not significantly more difficult then applying to an open source application. There are other such things as well.

    Otherwise a good read. But the fact that it is written in a where reverse engineering is not a flourishing business definitely shows.

    --
    Baker's Law: Misery no longer loves company. Nowadays it insists on it
    http://www.sigsegv.cx/
  31. As a friend of mine likes to say by hey! · · Score: 2

    "In theory, theory and practice are the same, but in practice they're different."

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  32. Pose a Hypothesis by lucabrasi999 · · Score: 2, Insightful

    Mr. Anderson's paper is only thirteen pages long. A quick review of it shows extensive use of anecdotes and stories. As I learned in High School, the first step of the scientific method is to pose a hypothesis. It seems that he has barely made it past this first step. I say this because his paper appears to be pretty thin on real research. He may have one example with TCPA, but what about all the other open systems? In the end, he may or may not be correct. But let's wait for his peers to have their say in his hypothesis.

  33. Re:In Other News by nil_null · · Score: 2, Insightful

    Look at mozilla. Its a great project but its not as nice as IE by a long shot. Anyone using 1.1a in Linux will know that [e.g. me! while at the same time 0.9.9 works fine... ???]

    I know this is subjective, but I disagree and think IE isn't as nice as Mozilla. Mozilla 1.0 is smooth, much nicer than IE. I didn't think I'd care for tabbed browsing, pop-up disabling, image blocking, and themes but I really have grown used to these things. The only complaint I have is I haven't figured out a way to sort my bookmarks. I've used 1.1alpha and it is buggy, but it is an alpha release and shouldn't be compared.

    Now the security of Mozilla is something that we don't know too much about (or do we?). We all know about IE's security...

    I have a theory: I think open source software is found to be more insecure in the early stages of its development, whereas closed source software is found to be more insecure later in its development. For example, Linux was considered a very insecure OS about 6 years ago, you didn't run it if you cared even a little about security (FreeBSD seemed to have been the choice for secure x86 *NIX). At that time, we didn't hear too much about Windows NT's security (or maybe I wasn't paying attention).

    Things have changed, now people call Linux a secure OS because it has already exposed many of its vulnerabilities, but Windows is known as the insecure OS because its flaws are poping up all over the place. I'm not saying either are more secure (because you can only make an educated guess), but the open source model allows for discovery of vulnerabilities a little quicker and easier than closed source.

  34. Equally secure? by unitron · · Score: 2

    Wouldn't you be better off thinking of them as equally insecure?

    --

    I see even classic Slashdot is now pretty much unusable on dial up anymore.

  35. Windows operating systems re-configure themselves. by Futurepower(R) · · Score: 3, Informative

    "... why do my Win2k installs slow down to a crawl after a few weeks..."

    Windows operating systems re-configure themselves without telling the user. Bill believes he knows better than you.

    I find bugs and insufficiencies in open source software. But generally open source software impresses me as an attempt to do a good job.

    In contrast, Microsoft software seems just sloppy. For example, Microsoft's Internet Explorer has 18 unpatched security bugs (when this was written). These active security risks are different from the recent 15 that have already been fixed. This is sloppiness, not mistakes, and I don't find anything like it in the open source world.

    In case the .PDF article is slashdotted: It is nonsense, written by someone trying to seem well-educated. If you do read it, don't let the math intimidate you, the math is utter nonsense.

    By the way, when Windows becomes slow because it re-configured itself, try this:
    1. Install the latest Windows service packs and patches.
    2. Re-install the latest chipset drivers.
    3. Re-install Microsoft DirectX 8.1 or higher.
    4. Re-install the motherboard manufacturer's ATA storage driver.
    5. You probably won't need to re-install other device drivers, but this is the time to do it.
  36. Show me the Money! by Airline_Sickness_Bag · · Score: 2, Insightful

    Closed source programs are typically not free. If a bug shows up in it, will you have to wait until the next release for the fix, and will you have to pay for it it you don't have maintainence?

    Not to sound cheap, but sometimes it can be a PITA to grab some funds & do the usual hoop jumping to get a purchase order cut. And it
    can take a *long* time, depending on the approval channels.

    With Apache, I had our webserver updated in a few minutes of reading the announcement of the fix.

    -asb

  37. References by anpe · · Score: 2

    If you look at the article's references, you'll see that "The Cathedral and the Bazaar" is quoted along with "Opening the Open Source Debate" from the Toqueville Institution ...

    1. Re:References by imr · · Score: 2

      You should read those too:
      here
      here

  38. Closed doesn't stay that way. by AnotherBlackHat · · Score: 3, Insightful

    Just because Microsoft doesn't publish their source code,
    doesn't mean the source code is not available.
    Crackers aren't afraid to decompile code, or use social engineering to obtain it.
    Non disclosures mean nothing to someone who is writing a virus.

    But it does stop the white hats.

    That asymmetry makes a big difference in the analysis.
    In open source the white hats and black hats are on equal footing.
    In closed source, the black hats have an advantage somewhere
    between alpha and 0, depending on how hard it is to obtain the source.
    Historically, it's been proven over and over that obtaining the source is much easier than the original designers thought,
    which is the reason security through obscurity is treated with such derision in the crypto community.

    Most bugs are found by people running the code.
    Most security holes are found by people who are looking for them.
    Since Black hats have no real difficulty obtaining the source,
    "Closed" source gives them a huge advantage over their white hat counter parts.

    -- this is not a .sig

  39. Conclusion seems right, even if the method isn't by iabervon · · Score: 2

    Software, as written, is just going to have a number of bugs proportional to the amount of code. The number of security holes is proportional to the number of bugs, with some constant depending on language and programming style.

    Then there's testing and debugging. It seems to me that essentially nobody just goes through open source code for fun, trying to find bugs; people who look at the code generally join the projects. So, in either case, the team writing the software is also mostly the team that tests it. So you'd expect about the same results.

    The security advantage to open source is that, if you really care about security, you can examine the source yourself and determine how good it is, to the best of your abilities. With closed-source, you have to trust whoever wrote and tested the software, since you can't do it yourself.

    Of course, almost nobody cares that much. Of course, you can probably bet that if the NSA doesn't change something in the version intended for government agency use, it's right. (Even if the NSA were putting in holes only they know about, they wouldn't leave any pre-existing holes)

  40. Misunderstanding of TCPA by Animats · · Score: 2
    The TCPA "trusted platform" does not improve security. It's only a form of tamper resistance, so that only "approved software" will run. If the "approved software" has a security hole, the TCPA system won't provide any protection.

    The TCPA is basically a boot-loader system that enforces code-signing, using hardware assistance. It's a lot like the XBox boot system, the one that keeps you from running your own programs on an XBox.

  41. Copied from the abstract of the article: by Futurepower(R) · · Score: 2


    Copied from the abstract of the article:

    "However, there are more pressing security problems for the open source community. [Read human community.] The interaction between security and openness is entangled with attempts to use security mechanisms for commercial advantage -- to entrench monopolies, to control copyright, and above all to control interoperability. As an example, I will discuss TCPA, a recent initiative by Intel and others to build DRM [Digital Rights Management] technology into the PC platform. Although advertised as providing increased information security for users, it appears to have more to do with providing commercial advantage for vendors, and may pose an existential threat to open systems."

    The article says nothing sensible about bugs in software. The article mostly discusses issues surrounding efforts to increase the reach of monopolies.

  42. security orthogonal to development model by _|()|\| · · Score: 3, Interesting
    Perhaps you've heard of the programming competition sponsored by Tom DeMarco and Tim Lister in the 80s. They varied the requirements, telling some teams to minimize coding time, others to minimize bugs, etc. The conclusion was that, on the whole, programmers do what they're told. There were some anomalies: one of the rapid development teams had fewer bugs than most, for example.

    I suspect that you can generalize this to security, as well. OpenBSD focuses on security, and it shows. Microsoft doesn't, and it shows. This is not a matter of proprietary v. free.

  43. defining bugs by bilbobuggins · · Score: 2

    remember, there are no security 'bugs' if there are no attacks.
    a bug implies an imperfection in the code that occurs without any outside pressure.
    that being the case, because new bugs get 'created' all the time, the real measure of security is time to response since before the attack existed it could not be protected against.
    in this respect open source is much more secure due to the sheer volume of people who are able to respond. whether it's the original programming team or some hobbyist in zimbabwe, your chances for a quick response are much greater, not to mention you might fix the thing yourself.

  44. The paper is hogwash by a_n_d_e_r_s · · Score: 2

    If one adhere to the authors thinking (which for a very long time has been adcocated by Micosoft and other commercial software companyes) that it are impossible to create 100% correct programs and one only concern oneself with the time period that a securoty exploit is known than the author are mostly correct.

    However if you want a truly secure system you want a system that is proven to be secure. If people shall trust Internet and it's services one need a truly proven secure Internet - in that regard the author is way off and the paper is really unimportant since it talks about a situation that should be purely academic.

    The only way to prove that a system are secure is to release all specifications (ie. source code) and let everybody try and break the system. If noone has broken the system in a couple of years the system is very secure.

    With closed source you can never prove that the system is secure by pounding at it... because it may exist a security hole that only is easy to find if you have the source code.

    It only takes a disgrountled employee to release the source code (ot just the exploit) of the closed-source system and you have a nightmare.

    If you want to have a truly secure system - use proven secure software.

    This is why algorithms for crypto are released so that all crypto experts can try and break it. This is similar to when ESR says that given enough eyeballs any bug is shallow.

    It is possible to write computer programs that are 100% correct. But the only way to ensure that, is to matemathically prove that the program is correct. It exist an academic programming language called Pro that was created for just that purpose - to prove that a computor language are 100% correct according to it's specifications.

    So in theory it is possble to make 100% correct computor programs. The only way to make sure the proof is correct is to also make sure it's secure in practise by letting other try to find errors in the proof. Thus the only way one can get a 100% correct program is the release the source code.

    In practice thare also exists programs that have been proven to be very secure - because the developers where concerned about security - one good example are qmail.

    A different example is Microsoft who recently said that they can't release their source code because it will threathen the USA security. Deep down in Micosoft software exist at least one unexploited security hole. It only requires one person to find it or one former employee of the houndred or maybe shousends Micosoft employess who knows about the security hole to tell others about it.

    If you are using Micosoft closed softeare you are now sitting on a ticking bomb. So anyone interested in a secure system should not use Micosoft software. Since it it well known that there exists a security hole in it that will compromise your security when it is becomes public knowledge. So anyonw concerned with security and uses Micosoft software are ... well just say that thay maybe should change operating system ASAP.

    With open source I know that if anyone has seen a problem it is fixed - for closed source I know that the company will probably not fix it until an exploit is widely known.

    If one wants to be taken serious whan talking about secure software one need to show that the software is secure and not just talk about security and treat is as an PR problem.

    --
    Just saying it like it are.
  45. Re:security and OS's by Pentalon · · Score: 3, Insightful

    While the Mac Classic may not have been rooted, it was also not designed to provide 24/365 network services, multi-user protection, etc. Linux is generally designed as a Unix clone, which was generally designed to provide services to multiple users, either via shells or served some other way over the network (web server, database, thin client server, etc.). In order for Linux to offer this, it has to provide the ability for some people to have access and not others. Any time services like that are offered with selective access, security problems exist -- it's a natural part of trying to identify entities -- everything can be spoofed at some level. Hence the mantra, "Nothing is ever totally secure."

    The Mac Classic (as far as I know) does not offer a web server, network databasing, remote shells, etc. If it does, the Mac OS (9 or before that the Classic runs on) is not stable enough to provide these service reliably: there's no memory protection, and there's no way to log in remotely to fix problems. If those services were provided on the Mac Classic, you would have seen remote root exploits happening.

    Another way of putting it -- what can you do on a rooted Mac Classic? That's like somebody rooting my watch. There's nothing to do with my watch once it's been rooted, and in any case, my watch doesn't really offer the ability for remote control, much less a root environment versus a non-admin environment. Whoever's sitting at my watch (or whoever my watch is sitting on) has control, and there is no other option.

    Also, root exploits are not the only exploits. Crashing a computer remotely is an exploit also (one thing root exploits are used to achieve). Even if the Mac Classic does not offer a remote shell (as far as I know), how hard is it to crash remotely? I worked in a Macintosh computer lab, where the Apples went down constantly because of bad network data. We sometimes couldn't put particular protocols on the ethernet because OS 6/7 couldn't handle it. I suspect that if people tried, it would not have been that hard. (I'm not anti-Apple -- I think that most every kind of computer has appropriate uses).

    Since Mac OS X offers the afore-mentioned services, I suspect that if its use increases, we'll start to see remote exploits happening. This has nothing to do with it being Unix based -- it's a result of what I said before -- any system which offers services or grants selective access based on an identification can and will be exploited.

  46. Answer- Mandrake is more secure than Windows... by aquarian · · Score: 3, Interesting

    If you're asking about an out of the box installation, then Mandrake is more secure than Windows. Mandrake's installer runs a few scripts to stop unnecessary services, close ports, build an appropriate firewall, and otherwise lock things down. The user is prompted for a low, medium, or high level of security. A brief description of each level is offered, so even a clueless user can make the right choice. The user hits a button, and the system does the rest. It's point-and-drool simple, and it works.

    Windows does none of this. Everything but the kitchen sink is installed and running. It's hard to tell what's running, especially if you're not familiar with Windows' cryptic names for all the services. There are no good explanations of what services really are or what they do. Everything is buried 3-4 levels deep, and poorly organized. Unless you're already familiar with it, it's much harder to figure out than Mandrake.

    So yes, Mandrake is more secure. Part of this is the installation itself- it goes through the appropriate steps to build in some security. The other part is general usability. Mandrake wins here, too.

    Don't get me wrong, not all Linux distros are as good in this respect. IMO, Redhat is about as bad as Windows, though it's getting better. Others might be a complete disaster.

  47. Re:The benifits... by nate1138 · · Score: 2

    same goes with the typical e-commerce vendor, who if misses a day of availability needs someone to either sue, or to have fix it.

    That comment is a little inaccurate. When was the last time that a software company got sued for downtime?? I can't think of one instance. Seems to me that most corps and govs that run IIS do so for two reasons:

    1. Slick marketing

    2. The old "no one ever got fired for buying MS argument.

    --
    Where's my lobbyist? Right here.
  48. OSS vs. CSS Security Misses the Point by Anonymous Coward · · Score: 2, Interesting

    Seems to me that neither OS or CS is any kind
    of guarantee of security -- holes can go unnoticed
    in OSS for years, and holes can be found in CSS
    without having the source at all.

    What really matters is *how easily and quickly
    the holes are fixed*. Seems that OSS has CSS
    beat on this issue hands down.

    -- jfh@cise.ufl.edu

  49. He his talking theory by jhines · · Score: 2

    His analysis is based on a mathmatical modeling of the processes.

    I'd say that open source does a better job of actually delivering on the promise of security.

    This article does point out that it can be done, so MS has no reasons not to do a better job.

  50. Small fault in logic. :^) by mactari · · Score: 2

    The only fault is that you assume open source software will have more "bug testers" (ie, anyone with access to the source) by default. In theory, that's not known before the fact. I have to imagine Eudora has more people working on and testing their mail client than Columba (an open source mail client on sourceforge) does. Just because it's closed doesn't mean there are less people working on the piece of software, and therefore has less people that can fix bugs.

    But practically speaking, I think you're on the money. What it boils down to is what people do when they do find bugs in the source. I think M$ would like you to think people will use this open book to start hacking. It would appear that most people bothering to look at open source projects would prefer to submit a patch than to exploit the security bug.

    As long as people patch and don't exploit, and as long as we hold our dicussion to popular open source products and their closed peers (like Apache vs. IIS rather than Eudora vs. Columba), I think your arguement holds.

    Post script...
    Note that it also helps that open source projects tend not to toss legacy code out the door as often, afaict. Once a bug's gone, it's gone, so to speak.

    --

    It's all 0s and 1s. Or it's not.
  51. depends on the software by yzquxnet · · Score: 2

    I've found this to be rather true when is compares to comparing Open source vs Close sourced. When it comes to comparing your big name software, open source takes a lead in security. I guess it has to do with more people poking their heads in the code. There is almost a total reversal when it comes down to small programs. Even custom work. I avoid OSS at all costs. These smaller programs don't get much exposure and hense are usually full of holes and bugs and a rarely ever at V1.0 status. I have had much better luck choosing closed source products in this area. I guess you get what you pay for here. Just my observation.

  52. Re:Windows operating systems re-configure themselv by Anonymous+Brave+Guy · · Score: 2
    In case the .PDF article is slashdotted: It is nonsense, written by someone trying to seem well-educated. If you do read it, don't let the math intimidate you, the math is utter nonsense.

    Since the PDF article isn't /.ed, I suggest anyone interested read it anyway.

    However, I dispute your claim above. The article is well-reasoned (far better than most of the naive counterposts here, many by people who clearly haven't even read the article in question and know precious little about software security research). It is written by an established researcher in the security field (by whom I happen to have been taught, some years ago, so I can vouch for his authenticity). The mathematics provided and the reasoning behind it are supported either directly in the article or in the other cited material, and much of it has been subject to previous peer review and accepted as sound.

    So come on, Futurepower(R)... Do tell us not just that he's wrong, but why. Right now, you're just throwing blind criticism at a well-reasoned and supported piece, for no apparent reason.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  53. The flaw I see by throx · · Score: 2

    The flaw I see in your reasoning is the assumption that the methods of discovery which are common between open and closed source software will find an equal number of bugs.

    Taking Microsoft as an example (although their reputation isn't that great), they have been reported to use 1 dedicated tester for every dedicated programmer. This isn't someone who just uses the software and plays with it a little, this is someone whose job it is to look at the design and actively figure out ways to crash the machine.

    Your average open source project, or even high profile project doesn't have anywhere near this number of dedicated testers because, quite frankly, it's not a fun job. Sure there are plenty of people who use the software for their own uses, but proving something works for you is not stressing the boundary conditions any more than the average user of closed source software would stress those conditions.

    I would suggest you look more closely at the typical development cycles for open and closed source software and note that there is reason to believe that in some cases close source software may indeed be less buggy than open source.

    The "many eyes" theory does help open source, but whether it makes up the difference of having an army of paid and somewhat dedicated testers is an interesting area for debate.

    --

    Fear: When you see B8 00 4C CD 21 and know what it means

  54. Re:Answer- Mandrake is more secure than Windows... by markmoss · · Score: 4, Interesting

    One fundamental difference is that it's perfectly reasonable for a Linux distro to lock down everything by default, so that you've got to make some changes before it's usable for much of anything. (You could play solitaire if the distro included a program...) If you bought Linux, you should know or learn a bit about administering.

    Windows, OTOH, starts with the assumption that a complete idiot will be installing it. If networking is crippled by default, it will probably remain crippled until the user returns the computer because it "won't do X". And it makes the almost-reasonable assumption that with an idiot setting it up and using it, the box won't contain anything worth a good cracker's time. And these assumptions are almost OK; the problem is that (1) when the box is used for something serious, it's hard for even a professional administrator to keep up with all the changes needed to make a system secure, (2) they've made the home system default so wide open that serious crackers can take over hundreds of them at a time and use them in assaults on important targets, and (3) MS is so sloppy that everything is a lot more exposed than they intended...

  55. Re:Windows operating systems re-configure themselv by Futurepower(R) · · Score: 3, Interesting


    "Do tell us not just that he's wrong, but why."

    The mathematics is absolutely stupid! The author assumes that bugs are a random event. But they aren't. Bugs are heavily influenced by sociological factors that affect the outcome by more than a factor of ten. A lot of the bugs you seen in Microsoft Internet Explorer, for example, come from the sloppy practices of programmers who are not particularly interested in what they are doing and who are pushed to a tight schedule, so when they see that something needs to be re-written, they can't re-write it, because they don't have time.

    Remember when Microsoft released Windows 2000? Someone inside Microsoft said that there were still 63,000 bugs (or known shortcomings) in their database. There was no time to finish the job, and Windows 2000 and Windows XP are still quirky. I just reported a bug in Windows XP, again, which I first saw in Windows 98. All of those operating systems re-configure themselves without telling the user. The company just doesn't care enough to do a good job.

    Bugs in software are caused by social factors that we cannot measure. Some programmers write far tighter code than others. Compare the security bugs in OpenBSD and in Windows. OpenBSD is far more secure because the people who control it say they want it that way. Microsoft just announced a greater interest in security, but will the company actually devote resources to fixing the code? That's a sociological issue for a company that has always put money first.

    It is impossible to test reliability into software, or anything! Reliability is due to design decisions, or the lack of them.

    The author says,

    "Reliability growth models seek to make this more precise. Suppose that the probability that the i-th bug remains undetected after t random tests is e-Eit. The models cited above show that, after a long period of testing and bug removal, the net effect of the remaining bugs will under certain assumptions converge to a polynomial rather than exponential distribution. In particular, the probability E of a security failure at time t, at which time n bugs have been removed, is [Equation that Slashdot cannot display: E = 1X i=n+1 e-Eit ~~ K=t] over a wide range of values of t. I give in the appendix a brief proof of why this is the case, following the analysis by Brady, Anderson and Ball [7]. For present purposes, note that this explains the slow reliability growth observed in practice."

    He is just pulling your leg, and probably his own. Note the word "random" in the second sentence. In mathematics that is a technical term, a precisely defined term, and it doesn't apply here.

    The author is just grabbing attention, and it worked. Now he has something to put on his resume, an article in CNET (by someone who doesn't understand the mathematics, but assumes that it must be okay, because it looks so impressive).

    Show me the equation that has a term that explains the difference between OpenBSD (Five years without a remote hole in the default install!) and Windows XP (zero seconds).

    Give the source code of Internet Exploder to the OpenBSD coders, and we will see how random bugs are. They could do what they already did with BSD, examine the code for poor practices, and re-design the parts that need it. Then all the "randomness" would stop happening, as if (in the view of some) by magic.

  56. Two additional factors... by CrystalFalcon · · Score: 2

    Observation 5:
    Several people are paid to peer review closed-source code full time, and these people are paid and trained to specifically look for security bugs. The Open Source movement lacks this feature, where large chunks of code can go unreviewed forever if it's not sexy enough. Additionally, if you don't know how to look for security bugs, you don't see them even if they're right in front of you. It's just not a matter of looking for static buffers.

    Observation 6:
    Closed source software generally isn't as closed as you imagine. For example, the Windows source code is available - under rather strict terms, of course - to a number of large customers, government bodies, and universities. These bodies in general, and universities in particular, generally review the code quite meticuously. So (at least in the case of MS, which is usually the favorite target), I don't see your observation holding all the water it intends to.

  57. Defrag by Futurepower(R) · · Score: 2


    True. Also note that the defrag program in Windows 2000 and Windows XP does not defrag all files. Some will be left with literally hundreds of fragments. To get true defragmentation, it is necessary to buy a third-party defragmenter, like Diskeeper:

    http://www.execsoft.com/diskeeper/dkvsbuiltin/dkvs builtin.asp

    However, program files should not be fragmented in a month. I doubt that the fragmentation of data files would cause significant slowing in only a month.

  58. evidence? by gargle · · Score: 2

    All this is empty theorizing. Is there empirical evidence which demonstrates whether open source or closed source is more secure?

  59. Windows re-configuration occurs when... by Futurepower(R) · · Score: 2

    I agree with you. However, this seems an unlikely answer for the person who posted the comment about the issue. Windows re-configuration occurs when there is some kind of problem or merely a change hardware for example. Windows will pick a new configuration without telling the user. Then, when the hardware is added to the system again, windows may not pick the correct installation, causing numerous hard-to-troubleshoot problems.

  60. An example of re-configuration that affects speed. by Futurepower(R) · · Score: 2

    I just came upon an example of re-configuration. A drive in a removable hard drive drawer was replaced with one of identical make, model, and size. Windows XP Professional re-configured the paging file from drive F: to drive C:. It did so with no message to the user. The system is faster if the paging file is on another drive besides C:. This is the sort of thing that sells Linux.

  61. Re:Windows operating systems re-configure themselv by Anonymous+Brave+Guy · · Score: 2

    You're ignoring the general point about open vs closed development, and picking on MS instead. We know they write crap. That is not a reason to criticise closed development in general.

    Show me the equation that has a term that explains the difference between OpenBSD (Five years without a remote hole in the default install!) and Windows XP (zero seconds).

    How about R = nrH

    where R is the rate of finding bugs overall, n is the number of bugs available to find, r is the rate at which one person finds each bug and H is the number of L337 Hax0rs trying to find the bugs.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  62. The sociology is so important that... by Futurepower(R) · · Score: 2

    I'm not ignoring any point. I'm saying that the sociology is so important that all other factors concerning software reliability are small.

    1. Re:The sociology is so important that... by Anonymous+Brave+Guy · · Score: 2
      I'm saying that the sociology is so important that all other factors concerning software reliability are small.

      I happen to disagree, but even if that were not the case, sociology is a problem for both open and closed development. If you have good leadership in either case, they will avoid dumb bugs like buffer overflows. They are easily prevented, and whether it's the people who add the mods in an open project or the people giving the training and writing the coding standards in a closed project, they should be prevented.

      The problem is with the security flaws -- the things that are coded correctly to spec, where the design itself has a weakness -- and unless you're going to claim that lots of people inherently and routinely review the whole security design of all open developments (all open developments, not just Linux or Apache) then this is just as much a problem for open as closed development.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  63. How to crack any system by Felinoid · · Score: 2

    How this works....

    On open source:
    Look over the source code and find a defect. Make sure it hasn't been discovered and patched and make sure it's in use.

    Use it... then lose it...
    Once you've used it enough times a system admin will report it. He may even fix it himself.
    Once reported using the source code track down the program that caused it. Swap out the buggy program for an alternitive until a patch comes in.

    Poking around dosn't work as your user box isn't going to be as secure as your target computer.

    How this works on closed source:
    Decompile or if your a terrorist who can afford expensive wepons just liccens the source from Microsoft.

    Or you can poke around.

    As only a sellect few have the source the target sysadmin can't fix it.. swaping programs will cost to much so that's not an option.

    Your best bet is to find an ill planned feature. Software companys are reluctent to remove features even when they compramise security. So your crack is likely to continue to work for a very long time.

    In the past larg companys wouldn't use a program or operating system if they couldn't get the source code. They want the ability to fix the code if a defect is found.

    --
    I don't actually exist.
  64. Linear bug rates -- myths behind the maths by Anonymous+Brave+Guy · · Score: 2
    The only other element of the model is that I'm saying that programmers create bugs as discrete occurances at a measurable rate. Unless the programmer is just learning to program or his mind is slipping at the end of his career, there is really little reason to belief the hazard isn't flat on mid-range timescales.

    I have plenty of reason to believe it isn't, from my own personal experience. For a start, we're considering a product, not an individual programmer. As an aside, we now seem to have switched to considering the creation of bugs rather than the creation of security flaws -- i.e. design flaws that allow penetration even when implemented to spec. The creation and detection of bugs, though, depends on many non-linear things. For example...

    1. A high number of bugs are first created near the start of a project, as initial code is written, library code written is pretty untested, prototypes that weren't written to production spec get included anyway, etc. This implies that more testing is needed of this code over the lifetime of the project in order to find and remove these bugs before the product ships. Fortunately, this is often the case, as library code gets reused elsewhere, prototype code gets refactored into a decent design, etc.
    2. Recently changed code often suffers from a disproportionate number of bugs compared to the codebase as a whole, yet in spite of this being well-known, few testing regimes seem to account for it. Managers insist that their test engineers slavishly run the whole unit test seventeen times, but provide no incentive to run proper regression tests to make sure nothing else got broken along the way during the last mods.
    3. If the original designers/architects of a large-scale project managed to form a good framework, there will be more bugs up-front due to the framework's complexity (but these will often be found due to the extensive testing that will perforce take place of that framework code). There will be much less likelihood of certain classes of bug later on, however, as developers can used tried and tested framework features instead of reinventing the wheel too often.

    These, and many other similar effects, could all give rise to a massive degree of nonlinearity in the rate of bug creation. Perhaps more significantly still, the testing strategy must focus on the correct areas at the correct times to maximise bug detection. If you attempt to follow a uniform testing strategy throughout the lifetime of a project, then you will simply not detect bugs as well at certain points, and hence the rate of bugs that slip through will be higher at those points.

    It is actually rather preposterous for anyone to claim that if more people engage in debugging per original unit of programming, that the number of surviving bugs will not be less. It is very clear that this ratio is greater with open source development models than proprietary.

    It is certainly not very clear that this is the case in general. If you take a mainstream application, like Linux or Windows, then it may be so. If we open-sourced the proprietary development we were doing at my old office over the past few years, no-one else other than our competitors would check the code, because no-one else would care. And you can be damn sure that your competitors aren't going to dutifully submit bug reports. Please stop equating "open source" with Linux, Apache, and other widely-used and popular toolkits. The article was discussing closed vs open in general, and its conclusions are general conclusions. Specific examples that happen to start from different initial premises -- notably, "this is a product of wide interest with many people who may be willing to contribute" -- obviously may not follow the general rules, but that doesn't make those rules any less correct in the general case.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  65. The sociology: by Futurepower(R) · · Score: 2

    The sociology: Commercial software authors often write under difficult conditions. They are often forced to release something with which they are not happy. Open Source authors have no other motivation than to do a good job. Everyone who is interested will see their code, forever. The sociology makes a huge difference.

    With Microsoft Windows XP, for example, some of the deliberate design is adversarial to the user's interests. There are more than 12 ways that the OS expects to connect to Microsoft computers.