Slashdot Mirror


Hyper-Threading, Linus Torvalds vs. Colin Percival

OutsideIn writes "The recent Hyper-Threading vulnerability announcement has generated a fair amount of discussion since it was released. KernelTrap has an interesting article quoting Linux creator Linus Torvalds who recently compared the vulnerability to similar issues with early SMP and direct-mapped caches suggesting, "it doesn't seem all that worrying in real life." Colin Percival, who published a recent paper on the vulnerability, strongly disagreed with Linus' assessment saying, "it is at times like this that Linux really suffers from having a single dictator in charge; when Linus doesn't understand a problem, he won't fix it, even if all the cryptographers in the world are standing against him.""

396 comments

  1. He won't fix it? by Morgahastu · · Score: 5, Insightful

    Then somebody else will.

    1. Re:He won't fix it? by lintux · · Score: 2, Insightful

      And how is that somebody else going to make Linus accept the patch?

    2. Re:He won't fix it? by untouchable · · Score: 5, Funny
      Fix what?

      If I remember correctly, there hasn't been a shown exploit for this yet. It's better to wait and see before fixing something that may not matter later.

      --
      As Seen On TV's? Come back!!!
    3. Re:He won't fix it? by Ritz_Just_Ritz · · Score: 1

      If somebody else fixes it (which probably won't be long), Linux still has to agree to make it part of the latest/greatest kernel. I'm not really agreeing with his childish "dictator" accusation, but he does have a point. Linus can be dismissive of patches when it's not something of interest to him or is esoteric enough that he can't (or won't...or doesn't have time to) wrap his brain around it. Not a criticism, mind you...just an observation. Cheers,

    4. Re:He won't fix it? by Anonymous Coward · · Score: 0

      Er, no. It's Linux and the kernel is Linus's baby. He decides what to do with it. If others were to "fix" it, they would be working on a copy, and they would be starting an entirely new fork altogether. I, for one, certainly don't want that to happen.

    5. Re:He won't fix it? by astro_ripper · · Score: 1, Insightful

      Just because Linus doesn't think it's a major issue doesn't mean he won't accept a patch to fix it.

    6. Re:He won't fix it? by Anonymous Coward · · Score: 0

      exactly what i said on kernel trap

    7. Re:He won't fix it? by solafide · · Score: 1

      They won't. It'll just be a addon that every distro uses and advertises. Eventually, it'll be such a selling point of those that do use it that it will not be a vurnurability anymore.

    8. Re:He won't fix it? by Anonymous Coward · · Score: 0

      Why is Linus accepting a patch important? End-users use distributions. Distributions don't simply take whatever Linus blesses. They can and do incorporate their own stuff into the kernel. Even if Linus refused to apply a patch to fix this (and why would he?), the distributions would still apply it and the users wouldn't be any worse off.

      This is how open-source works.

    9. Re:He won't fix it? by Vo0k · · Score: 5, Interesting

      Actually, my bet is it will be fixed in the new CPU revision, by Intel. And eventually Kernel fix dug into the config somewhere next to other "bugfix/support" entries, with note like "Early multithreading Intel Pentium 4 CPUs have a vulnerablity that allows to override privledges of a process. This entry includes a patch for this bug at cost of increasing the kernel size by 32K and slightly slowing it down. If you have an early Pentium 4 processor and run a multi-user system, say Y. If you don't or aren't sure, say N."

      --
      Anagram("United States of America") == "Dine out, taste a Mac, fries"
    10. Re:He won't fix it? by Anonymous Coward · · Score: 0

      This sentence no verb.

    11. Re:He won't fix it? by Niekie · · Score: 3, Insightful

      And it might be best to start researching it as soon as possible before it will be massively exploited by someone who just found out how it works..

    12. Re:He won't fix it? by gl4ss · · Score: 1

      ok..
      now..
      what are the real threats from the vulnurability?

      the author of the paper seems to see there to be some crapload of problems from this, yet I don't quite see it so(the attack route being quite far fetched imho). so much that a lot of other people probably saw this same 'problem' earlier as well but didn't really think of it as anything.

      AND

      is it something that can be done something to in the kernel and not in the suppoesdly vulnurable openssl? like, it is a 'feature' rather than a bug.

      --
      world was created 5 seconds before this post as it is.
    13. Re:He won't fix it? by CaymanIslandCarpedie · · Score: 5, Insightful

      Oh come on man, don't be that guy ;-)

      So MS$ shouldn't fix problems in IE until an exploit has been shown for it?

      It's better to wait and see before fixing something that may not matter later.

      Its better to just fix it and be safe than wait and see if something happens later. It may not be top priority, but remember this "wait and see" approach to security is exactly what got MS$ into so much trouble with users. We don't need the same for Linux.

      --
      "reality has a well-known liberal bias" - Steven Colbert
    14. Re:He won't fix it? by ssj_195 · · Score: 2, Insightful
      If others were to "fix" it, they would be working on a copy, and they would be starting an entirely new fork altogether. I, for one, certainly don't want that to happen.
      I think pretty much every distro in existence maintains its own patchset for the vanilla kernel (effectively maintain their own "fork", I guess), and it is not causing any problems. In brief, if Linus does not accept a useful patch (or essential!), the distros will, and so this "forking", if you can really call it that, will have no negative effect on the end-user.
    15. Re:He won't fix it? by Jugalator · · Score: 4, Interesting

      Why wouldn't he?

      He doesn't say "I don't want a fix for this anywhere in the kernel" anywhere. Just that he doesn't think it's a very critical issue.

      If someone else does the patch for him, why wouldn't he accept it?

      --
      Beware: In C++, your friends can see your privates!
    16. Re:He won't fix it? by A+beautiful+mind · · Score: 2, Insightful

      There is nothing to fix there, most of the coders agreed!

      Some people are just keep pushing their flawed agendas.

      Disclaimer: i did read the whole thread.

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    17. Re:He won't fix it? by Threni · · Score: 5, Funny

      That reminds me of the joke about programmers being in a car, steaming downhill with failed brakes, narrowly avoiding death, then once the car has come to a standstill suggesting that instead of seeing what went wrong they just get back in the car and `see if it happens again`.

    18. Re:He won't fix it? by ysachlandil · · Score: 2, Insightful

      And how will they fix this?

      The only fix that kinda works is disabling hyperthreading. But on a dual core processor the problem is there as well (if there is a shared cache somewhere). And switching of the second core because of that would be stupid.

      The problem Colin points out (getting an RSA key) is a userland problem anyway, so there is nothing to fix for Linus... fixing cache eviction covert channels in the kernel is possible, but not without losing a lot of performance.

      --Blerik

    19. Re:He won't fix it? by Anonymous Coward · · Score: 0

      Fix what?

      If I remember correctly, there hasn't been a shown exploit for this yet. It's better to wait and see before fixing something that may not matter later.


      Are you stupid? You don't wait for an exploit BEFORE you start to fix the problem.

      That's like knowing your front door lock is broke and waiting for someone to break in before you fix it...retard

    20. Re:He won't fix it? by untouchable · · Score: 1, Insightful
      I'm sorry. I don't know who modded me funny, but I wasn't actually trying to be funny.

      From the little bit I understand from the paper (which, when this story was first posted on Slashdot May 13th, wasn't publicly available), it's an extremely low level attack that depends on certain process switching back and forth, without emptying cache. (I think that's the base of it.)

      From what I've learned in software writing, is that it's preferrable to wait and see how much and how bad your software runs or has problems before you start charging into the situation to fix it. Especially something as low level as this, which could have unseen side effects. Especially since this (to me, at least) seems to be more of a hardware problem than software, per se. (But, of course, I could be wrong.)

      Its better to just fix it and be safe than wait and see if something happens later.

      I would think that would only be adviseable only if you (internally) found the bug/security problem. I would put up a notice saying I've heard of this situation, and maybe even come up with an idea for the fix, but definitely wouldn't implement it until I could prove or see proof that said problem exists.


      p.s. Microsoft's reaction is slightly different than what you describe. Microsoft didn't seem to care about bug fixes to IE, period, only fixing them when the griping got too loud and the public started paying more attention to Firefox. There was no motivation to fix IE, not just a 'wait and see' type attitude.

      --
      As Seen On TV's? Come back!!!
    21. Re:He won't fix it? by squiggleslash · · Score: 1
      There's no childish "dictator" accusation in the post, just a lot of Slashdotters who are a little new and unaware of standard terminology within the FOSS crowds. I've posted an explanation here.

      I have one minute to kill before Slashdot will let me post again, so let me add this: these kinds of issues come up a lot these days with old arguments being retread as if for the first time, with a large number of people not understanding basic stuff that's not meant the way it's intended. In some ways, this is a great thing - it suggests that the Free Software and Open Source movements are attracting large numbers of new followers, who see the advantages of code they can change and use to help others. Unwitting flamewars aside, let's hope this continues. It's a shame we can't really give out a "Read this before you start on FOSS" document that explains all of this, as I doubt anyone would read it, and I doubt it'd cover even 1% of what needs to be commented upon.

      --
      You are not alone. This is not normal. None of this is normal.
    22. Re:He won't fix it? by Anonymous Coward · · Score: 0

      you would think this could be done via the bios (upgrade)

    23. Re:He won't fix it? by /ASCII · · Score: 5, Interesting

      I'm not to sure about that. Linus says this is a library issue and I agree. The kernel should not try to fix library bugs.

      What this bug amounts to is this: When a program is performing calculations using secret data like an RSA key, it is important that the data access patterns do not depend on the secret data, since these patterns can be analyzed by an attacker.

      An example of a classical vulnerability of this sort is using the c function strcmp to compare the real and the supplied password. By timing multiple runs you can get a decent estimate of how long time the strcmp function took, which means you can guess which character was first differing character in the password.

      The security flaw in HT is that a process running on a HT CPU can get quite a lot of information about the data access patterns of the process on the other virtual CPU on the same chip. In other words, the severity of any library bugs which cause different access patterns on different secret data has been severly increased.

      --
      Try out fish, the friendly interactive shell.
    24. Re:He won't fix it? by ajs318 · · Score: 1

      Not every distro relies on a heavily-patched kernel. Slackware use a kernel from kernel.org. Debian apply some kernel patches, but you can take an "ordinary" kernel and compile it and Debian userland will run just fine on it anyway.

      Certain distributions {one named after a dog in an orange drink advert springs to mind} have a kernel so full of patches that the userland won't stay up on an "ordinary" kernel.

      It's really only a big deal until some hacker figgers out how to graft the patchset for an older kernel onto the newest kernel. I for one would have no objection if software not compiled on my machine would not run there ..... in fact, a kernel/userland mismatch situation pretty much saved my job once.

      --
      Je fume. Tu fumes. Nous fûmes!
    25. Re:He won't fix it? by antifoidulus · · Score: 4, Insightful

      Heh, this is more than just your average buffer overflow exploit. This fix would have to modify how the OS handles the cache. It's going to probably take more than a quick fix to get rid of the exploit, and the patch could have far reaching reprecussions. All that to fix a security hole that may not even be exploitable in practice....

    26. Re:He won't fix it? by jtshaw · · Score: 1

      Given the way Intel CPU"s work these days... if they fix it in new Pentium 4/Xeons then most likely all they will have to do is issue a microcode update for the older chips with the problem and thus the problem we disapear...

    27. Re:He won't fix it? by Anonymous Coward · · Score: 0

      "will" isn't a verb?

    28. Re:He won't fix it? by cnettel · · Score: 1

      But you don't override priviledges per se. You just indirectly retrieve seemingly innocent data about how long it takes to run your memory access loop repeatedly. The simplest and most obvious, total, solution would be to cut the maximum cache used by any thread in half, while HT is enabled. This would seriously harm HT, though. While simple in theory, it's also not that simple to add back into an existing design, especially if you want to keep the ability to run "full cache" for a single thread.

    29. Re:He won't fix it? by julesh · · Score: 2, Insightful

      It isn't something Intel can fix, except by removing hyperthreading. The fact of the matter is that if you have two processes running simultaneously on the same processor, one of them can determine things about what the other is doing based on how many execution units of what type it seems to have access to, how long data remains in the cache, things like that. It's a fundamental problem that can only be fixed by the OS kernel denying use of hyperthreading to processes that need to be kept separate from one another.

    30. Re:He won't fix it? by caino59 · · Score: 1

      Time to start a FOSS wiki then, no?

    31. Re:He won't fix it? by Anonymous Coward · · Score: 0

      In programming you don't try to fix every single frigging problem. Not if you want to get your software out this century. If it is demonstrated to be a relatively few and far between problem, then it's a waste of tim trying to fix it.

    32. Re:He won't fix it? by julesh · · Score: 1

      This fix would have to modify how the OS handles the cache

      Actually, I believe the best fix is to change the scheduler so that it doesn't schedule processes from different users on the same physical CPU at the same time.

    33. Re:He won't fix it? by Vellmont · · Score: 4, Interesting

      That sounds like it has some non-trivial costs associated with it. That would mean losing performance in many instances where two high-cpu processes want to be exectured on a single physical processor at the same time.

      The best solution is to just fix the crypto libraries as a short term solution, and for Intel to fix the chip in future iterations as a long term solution. Mucking about in the kernel and having other unknown effects seems like a bad approach when the problem can be fixed elsewhere.

      --
      AccountKiller
    34. Re:He won't fix it? by stevesliva · · Score: 1

      That's no disclaimer, man, that's a claimer.

      --
      Who do you get to be an expert to tell you something's not obvious? The least insightful person you can find? -J Roberts
    35. Re:He won't fix it? by log0n · · Score: 1

      By your reasoning, Y2K shouldn't have been addressed until after the fact.

      I remember reading some /. article a while back about CS vs. application programming. This is a pretty good example of why CS is heading down the tubes. Nothing personal...

    36. Re:He won't fix it? by julesh · · Score: 2, Insightful

      The best solution is to just fix the crypto libraries as a short term solution, and for Intel to fix the chip in future iterations as a long term solution.

      Fixing the crypto libraries is actually a non-trivial task. There are many of them and ensuring there is no information leakage is very difficult to achieve.

      Fixing the chip may well be impossible -- it sounds to me like the only way to prevent this kind of thing from being a problem is to give each thread its own instruction fetch pipeline, dedicated execution units and dedicated cache lines. Which is, in effect, dropping HT altogether and switching to dual cores instead.

    37. Re:He won't fix it? by arrowman · · Score: 1
      It's better to wait and see before fixing something that may not matter later.
      Manager@NASA?
    38. Re:He won't fix it? by Chris+Burke · · Score: 1

      Doubtful. Microcode patches are mostly useful for fixing bugs in the way instructions work. It could also turn on/off feature flags in the reset microcode. The problem here is shared data in the cache, which I don't think microcode could fix.

      --

      The enemies of Democracy are
    39. Re:He won't fix it? by A+beautiful+mind · · Score: 1

      You must be new here...this is slashdot, noone RTFA-s.

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    40. Re:He won't fix it? by jrockway · · Score: 4, Insightful

      His comment isn't from a CS perspective, it's from a code monkey perspective. CS people use mathematics to prove their code correct, application programmers write stuff and are happy it works.

      --
      My other car is first.
    41. Re:He won't fix it? by null+etc. · · Score: 5, Insightful
      By timing multiple runs you can get a decent estimate of how long time the strcmp function took, which means you can guess which character was first differing character in the password.

      Can I buy some pot from you?

      Maybe that would work with a ONE MEGAHERTZ PROCESSOR. But do you have any idea how fast processors are these days? And how likely any deviance in the cache state, IO controller state, page faults, multi-user latency, or power management will throw your precious timings right out the window?!?!?!

      I mean, c'mon, think about things before you say them. Even REAL TIME SYSTEMS AT NASA don't run with enough consistency to be able to tell WHICH CHARACTER IN A STRCMP OPERATIONS fails.

    42. Re:He won't fix it? by untouchable · · Score: 1
      By your reasoning, Y2K shouldn't have been addressed until after the fact.

      Please carefully reread what I said. I said
      I would think that would only be adviseable only if you (internally) found the bug/security problem. I would put up a notice saying I've heard of this situation, and maybe even come up with an idea for the fix, but definitely wouldn't implement it until I could prove or see proof that said problem exists.

      If you internally find the bug/hole, fix it. If you can proof to myself said security bug/hole is there, fix it. I never said wait until it's too late. Perhaps I should have made myself more clear on this point.

      --
      As Seen On TV's? Come back!!!
    43. Re:He won't fix it? by dindi · · Score: 0, Redundant

      an even if he does not accept the patch,

      it can sit online somewhere and if someone with a HT machine needs it -> it is available ....

      i don't thenk anyone would refuse a patch that poses a security risk .... if the risk is soooooo smaaaaalll then no fix is needed, but it is appreciated ....

    44. Re:He won't fix it? by bicho · · Score: 1

      Yeah, well, thats why car makers uses dummies.

      --

      errera hunamum ets
    45. Re:He won't fix it? by robertjw · · Score: 2, Interesting

      That reminds me of the joke about programmers being in a car, steaming downhill with failed brakes, narrowly avoiding death, then once the car has come to a standstill suggesting that instead of seeing what went wrong they just get back in the car and `see if it happens again`.

      Programmers hell, most mechanics I know have this attitude. 'Well, it stopped, didn't it. We'll fix it later'

      I wouldn't blame software developers for this attitude, it seems to be common for humans (or at least Americans) as a whole.

    46. Re:He won't fix it? by hey! · · Score: 4, Interesting

      I dunno if I agree, for two reasons. First, you'd be surprised what a sophisticated, determined and deep pocketed adversary can do (e.g., the smart card vulnerabilities that were uncovered a few years ago by analyzing the power consumption).

      Secondly, just because the clock is ticking fast doesn't mean you can't count them as they go by. The same process run at 1Mhz and 1Ghz is going to look substantially the same, because you're monitoring them faster too. If anything, you're less likely to get interrupted by I/O during the process.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    47. Re:He won't fix it? by Anonymous Coward · · Score: 1, Informative

      Bzzt. It doesn't depend on a process switching back and forth, because it makes use of hyperthreading, meaning that as long as there are those two threads running - the attacker and the crypto code - simultaneously, the attacker will see the cache effects of the crypto code.

      Disabling hyperthreading would make it depend on a process switching back and forth, and no process could switch back and forth that quickly (it would be extremely inefficient, so no OS schedules them that way) - so effectively it's unexploitable without hyperthreading.

      Basically the problem is that hyperthreading shares CPU resources between two threads at an extremely low level and thus makes the effects of one thread fairly easy to observe from another. The correct solution is to fix the scheduler to never schedule threads owned by different users on the same hyperthreading core.

      Hyperthreading is probably going away in any case, as it's extremely inefficient. Multiple full cores (which don't have similar problems) are likely the direction of the future.

      It's a genuinely exploitable problem, although it only affects multi-user machines where the users don't trust one another, which means that it isn't a problem for most users.

    48. Re:He won't fix it? by SQL+Error · · Score: 3, Funny

      "Beware of bugs in the above code. I have only proven it correct, not tested it" -- Knuth

    49. Re:He won't fix it? by Anonymous Coward · · Score: 0

      Relax! I am almost done...

    50. Re:He won't fix it? by Austerity+Empowers · · Score: 4, Interesting

      Faster processors also means that you don't need to be as precise. You can search more possibilities faster, but every byte you can chip away helps narrow down the search range.

      It's true that there are various "noisy" and uncontrollable aspects of modern CPUs, but if you take enough measurements and can establish a control, you can get valid information. It will not give you "the answer", it may help you to eliminate a set of data that is "not the answer". That is extremely valuable.

      Some people actually monitor chip power supply variations to try to get this information. I won't pretend to understand how they get meaningful data from this, but it involves knowing the system under attack very well, and wanting the data really, really badly. Hence very high security systems shield their processors magnetically and inject "noisy" (bogus, unrelated) operations to cover this. It sounds like a pipe dream, but I've visited places where these systems are built (think Blue), and read some of the papers describing these exploits.

      His point is valid, ANY information an attacker can get significantly reduces the integrity of the encryption. I just suspect Linus' point is that most (I said most, don't flame me) linux server deployments are geared towards not letting people on the server in the first place. This vulnerability seems to be valuable mostly to people who already have access to the system.

    51. Re:He won't fix it? by stevesliva · · Score: 1

      I know you're being facetious, so I'll reply in kind. You appear to be new here, so I'll fill you in-- every slashdot user has a number that appears after their name in parentheses. They're issued sequentially.

      --
      Who do you get to be an expert to tell you something's not obvious? The least insightful person you can find? -J Roberts
    52. Re:He won't fix it? by cibus · · Score: 0, Flamebait

      I'd like to buy some crack from the people who moderated the parent post to +5 Informative...

    53. Re:He won't fix it? by Afrosheen · · Score: 1

      "This vulnerability seems to be valuable mostly to people who already have access to the system."

      Yep, and like the old maxim goes, there's no security if the attacker has physical access. Alot of this collegiate discussion of measuring voltages and doing fine-grained timing would require having physical access.

    54. Re:He won't fix it? by Anonymous Coward · · Score: 1, Interesting
      Even REAL TIME SYSTEMS AT NASA don't run with enough consistency to be able to tell WHICH CHARACTER IN A STRCMP OPERATIONS fails.
      Utterly wrong. If you need 50 picosecond precision (one clock cycle on a 20 GHz CPU) and the random variance is 1 microsecond (which seems reasonable), then you merely have to run the comparison 400 million times and average the results. That means you can extract the password with at most a few hours of CPU time. And that is a terribly, terribly weak cryptosystem.
    55. Re:He won't fix it? by donleyp · · Score: 2, Informative

      If you had read the original paper, you would know that they created a proof of concept that actually works. They were actually able to grab RSA keys from the other process! So, how is it impossible? It's been done.

      --
      You got any karma man? I really neeed it. Just a little hit! Come on!
    56. Re:He won't fix it? by m50d · · Score: 1

      I disagree with that. I do want that to happen. It seems to have got past the point where Linus running the whole thing is beneficial. I think we need a fork, I really do.

      --
      I am trolling
    57. Re:He won't fix it? by Surt · · Score: 1

      It actually works really well. The thing is, with a one megahertz processor you might get the right result in one try. With a 3 gigahertz processor you try it 3000 times and take an average. Believe me, the more correct string will take slightly longer on average over that many attempts, regardless of cache state etc etc.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    58. Re:He won't fix it? by IIH · · Score: 4, Informative
      I mean, c'mon, think about things before you say them. Even REAL TIME SYSTEMS AT NASA don't run with enough consistency to be able to tell WHICH CHARACTER IN A STRCMP OPERATIONS fails.

      Maybe the original poster was referring to the DEC-10 page fault password insecutity that was based on strcmp returing as soon as it encountered once wrong character, based roughly on the following idea:

      1) Place Password with 1st/2nd character on a page boundry.
      2) Clear cache
      3) Call Password check.
      4) If no page fault occurred, then the 1st char must be wrong, change it and goto 3
      5) if page fault occurred, 1st character is correct (as 2nd char was checked), move password so 2/3 char is on page boundry and repeat.

      In this way, you can reduce the attack by a huge amount, for a n length password the brute force attack needed goes down from 256^n to 256*n.

      So, yes, attacks based on which character in strcmp fails have worked in the past, so it is valid to try and not make the same type of mistake again!

      --
      Exigo spamos et dona ferentes
    59. Re:He won't fix it? by Austerity+Empowers · · Score: 1

      I wouldn't say "collegiate", these are actual attacks done by people with actual knowledge who also do work, unlike most professors and academics. And for the record, encryption is expected to hold even if the attacker has physical access (for a certain time period).

      "Off-topic" would have been a better choice. These discussions are totally unrelated to the Intel bug and the flame war involving our Messiah and That Other Guy Who Said Nasty Things. It's a fun discussion though, and the post to which I responded was somewhat unfair.

    60. Re:He won't fix it? by scosol · · Score: 1

      You simply are wrong- even the most tiny slice of time is meaningful- want a recent real-life example?

      http://cr.yp.to/antiforgery/cachetiming-20050414.p df

      --
      I browse at +5 Flamebait- moderation for all or moderation for none.
    61. Re:He won't fix it? by The_K4 · · Score: 1

      It's a genuinely exploitable problem, although it only affects multi-user machines where the users don't trust one another, which means that it isn't a problem for most users.

      Actually if the computer is infected (or running spyware) this exploit could be harmful to single user machines.....

    62. Re:He won't fix it? by Anonymous Coward · · Score: 0

      show me the maths to prove that a web browser will layout a page correctly. your post seems derogatory to people who don't masturbate over their code that will never be useful to anyone.

    63. Re:He won't fix it? by alexfromspace · · Score: 1

      I think it would be safe to say that there is substantial evidence that this voulnerability is not due to any problem with kernel. But instead this is an issue with hardware virtualization by hardware.

      It is by convention a good software engineering practice to wait with fixes until: (1)it is either established that your system produces the problem, or (2) that by 'temporarily' 'fixing' this problem in your system (which you should not be doing anyway) you can prevent much damage.

      In this case (1) will most likely never be established. (2) however may be, but there is no evidence of it yet.
      It is important to note that the Linux kernel's willingness to go along with (2) is an extremely nice gesture. Therefore any one criticizing it is doing so in either ignorance or malicious intent or both.

    64. Re:He won't fix it? by Anonymous Coward · · Score: 1, Insightful

      > Actually, my bet is it will be fixed in the new CPU revision, by Intel

      No it will not. This CANNOT be fixed. It has nothing to do with privilege escalation, and everything to do with information "leakage" from observable effects. Intel can no more change these observable effects than they can make a CPU that can't be instrumented with performance counters.

      And guess what: linus is right. Linux is not the place to address such issues, because this is only ONE such place where such leakage can occur. Linux is not a military-grade computing system, and if you need such security, you need a dedicated system that NEVER pre-empts a higher-security process to allow a lower-security process to run. The attack is merely harder, not impossible on truly multi-CPU machines.

    65. Re:He won't fix it? by petermgreen · · Score: 1

      lets see
      1: some people read but didn't post or posted as AC for a long time before getting an account (i know i did)
      2: low user ids can be purchesed on ebay
      3: some people may get an account and then forget about it for ages before using it again

      etc

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    66. Re:He won't fix it? by Anonymous Coward · · Score: 0

      > By timing multiple runs you can get a decent estimate
      > of how long time the strcmp function took, which means
      > you can guess which character was first differing character
      > in the password. :> Can I buy some pot from you? :> :> Maybe that would work with a ONE MEGAHERTZ PROCESSOR. :> But do you have any idea how fast processors are these days?

      Disks are slow:
      1. carefully place your password string across a page boundary
      2. trash the system, to make it likely that the pages containing the password are swapped out.
      3. make sure the first page is swapped in.
      4. make system call
      5. check real-time duration of call.

    67. Re:He won't fix it? by jabuzz · · Score: 1

      Actually one core with the full resources of your two cores, that implements a dynamic number of "hyperthreading" cores as the currently running processes allow so as to maximize usage of the available resources is the way to go.

    68. Re:He won't fix it? by Anonymous Coward · · Score: 0

      basic stuff that's not meant the way it's intended.

      Meh?

      Surely 'meant' and 'intended' are synonyms. In which case: basic stuff that's not meant the way it's meant...

      I don't think you meant that the way you intended either!

    69. Re:He won't fix it? by KillShill · · Score: 1

      the best solution is to stop using buggy intel processors.

      intel is the MS of the cpu world after all.

      --
      Science : Proprietary , Knowledge : Open Source
    70. Re:He won't fix it? by Floody · · Score: 1

      In programming you don't try to fix every single frigging problem. Not if you want to get your software out this century. If it is demonstrated to be a relatively few and far between problem, then it's a waste of tim trying to fix it.

      I suspect that this general attitude/belief is primarily responsible for most modern software absolutely and completely sucking.

    71. Re:He won't fix it? by Dog135 · · Score: 2, Interesting

      like the old maxim goes, there's no security if the attacker has physical access

      Yup, if the security is based on a simple string compare, and you have physical access to the machine, all you need to do is modify the assembly. I use to do this to all my old computer games that required me to enter information out of the manual. Just invert the condition of the branch, then jump over the dialog call.

      The way I compare encryption passwords in my programs, is to compare a hash of the end result with a stored one. ("end result" being the string of data that you xor against)

      --
      "That's so plausible, I can't believe it!" - Leela
    72. Re:He won't fix it? by Kjellander · · Score: 1

      I dunno if I agree, for two reasons. First, you'd be surprised what a sophisticated, determined and deep pocketed adversary can do (e.g., the smart card vulnerabilities that were uncovered a few years ago by analyzing the power consumption).

      Or how about when they figured out that modems leaked data being sent through the status LEDS?

      Blinking LEDs leak info

    73. Re:He won't fix it? by ultranova · · Score: 1

      I'm not to sure about that. Linus says this is a library issue and I agree. The kernel should not try to fix library bugs.

      This bug is about a program being able to read data it should not be able to. Memory protection is clearly a kernel issue.

      Then again, it's propably impossible to protect against all possible attacks of this type in kernel level. And yet on third hand (oh no, I've been mutated !) it is also likely impossible to guarantee the data access pattern of some piece of code unless you write it in assembler (after all, the compiler could keep one variable in a register and another in memory, even if they're used exactly similarly. And, obviously, writing parts of a library in assembler is going to hinder portability quite a bit.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    74. Re:He won't fix it? by wirelessbuzzers · · Score: 2, Insightful

      Yep, and like the old maxim goes, there's no security if the attacker has physical access. Alot of this collegiate discussion of measuring voltages and doing fine-grained timing would require having physical access.

      No. It requires having shell access. This is not the same as physical access, and a system should be secure against an attacker with shell access. Not that most are in fact secure, but they should be.

      --
      I hereby place the above post in the public domain.
    75. Re:He won't fix it? by ultranova · · Score: 1

      Yup, if the security is based on a simple string compare, and you have physical access to the machine, all you need to do is modify the assembly. I use to do this to all my old computer games that required me to enter information out of the manual. Just invert the condition of the branch, then jump over the dialog call.

      The way I compare encryption passwords in my programs, is to compare a hash of the end result with a stored one. ("end result" being the string of data that you xor against)

      How does comparing hashes instead of plaintext stop anyone from altering the assembly to ignore the comparison result ?

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    76. Re:He won't fix it? by Sj0 · · Score: 1

      That's what scientists and engineers are supposed to do. That's why they're scientists and engineers, rather than "Frank from accounting who took a course and works in computers now".

      --
      It's been a long time.
    77. Re:He won't fix it? by Sj0 · · Score: 1

      Writing the software side for that would be murder -- imagine having to continually check to see whether the processor you're working on still exists!!!

      --
      It's been a long time.
    78. Re:He won't fix it? by ultranova · · Score: 1

      Given the way Intel CPU"s work these days... if they fix it in new Pentium 4/Xeons then most likely all they will have to do is issue a microcode update for the older chips with the problem and thus the problem we disapear...

      Why would they do that, when it will simply remove one incentive for an update ?

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    79. Re:He won't fix it? by fodZ · · Score: 1
      It's better to wait and see before fixing something that may not matter later.

      Just like it's better to hang out in sniper's alley and wait and see if you get shot, before investing in heavy armour.

    80. Re:He won't fix it? by Afrosheen · · Score: 1

      I made a blanket reply to the parent post, particularly the section which read thusly:

      "It's true that there are various "noisy" and uncontrollable aspects of modern CPUs, but if you take enough measurements and can establish a control, you can get valid information. It will not give you "the answer", it may help you to eliminate a set of data that is "not the answer". That is extremely valuable.

      Some people actually monitor chip power supply variations to try to get this information."

    81. Re:He won't fix it? by honkycat · · Score: 1

      This was done in one case in a system whose password check routine took a pointer to the password to check and then ran strcmp() or the equivalent against the password IN THE ORIGINAL LOCATION. This could be cracked by aligning the password to check against a page boundary. If the strcmp() ran past the page boundary, a large delay would be generated while the missing page was fetched.

      This would work on a fast processor, but relied on being able to control what parts of memory were paged to disk, which is harder to do these days.

    82. Re:He won't fix it? by Anonymous Coward · · Score: 0

      Of course, if your adversary is that deep-pocketed and determined, he's just going to buy off your secretary or hire thugs to break into your place of operations and steal what he wants. Or kill you. Only a silly geek would think of spending huge piles of cash to attack a human organization strictly through the wires.

    83. Re:He won't fix it? by sploxx · · Score: 1

      I'm sorry, but I think your parent is exactly correct. You try to argue from a theoretical point of view where computer scientists are equal to mathematicians. Maybe proving an algorithm is the right thing to do for small isolated cases of important code.

      But computer scientists are NOT mathematicians. There is a reason that they're called _computer_ scientists.

      CS today also contains elements of art and architecture. Sure, there is still mathematics and, sure it's still the most important part of it.

      You can say similar things about experimental physics, for example. An experimental physicist is as much mathematician as he is computer scientist as he is electrical engineer as he is technician!

      Do you really think an EE proves every circuit he/she designs correct?! Often enough, he'll design a circuit a certain way because -*gasp*- it looks nicer to him! That's the art part of EE :-)

    84. Re:He won't fix it? by jamesh · · Score: 1

      A fix, be it hardware or kernel could be something as simple as introducing some element of 'noise' (eg randomly pre-emptively flushing a cache if a process is deliberately forcing lots of cache flushes), thus making any statistics drawn for analysing this useless. I don't know how that would go with keeping processors deterministic for failover though...

    85. Re:He won't fix it? by jamesh · · Score: 1

      Obviously a CPU exception would be requred, which would be thrown if an instruction was processed by an imaginary core/hypercore. This exception would flush any imaginary data held in imaginary caching units back to imaginary memory and then delete the imaginary core. This feature could be implemented by adding a sticker to your machine saying 'Imaginary Core Detection Inside'.

      Old threads never die, they just get scheduled onto imaginary cores.

    86. Re:He won't fix it? by Sj0 · · Score: 1

      I'm studying EE.

      We have to know how to design any circuit we're working on, and do so on paper before we do anything in the real world.

      Because we're professionals, and not weekend warriors, we have to jump through a few extra hoops to prove on paper that our designs are solid(this also helps because if you ever leave the company, people know how you designed something). If we try to do "faith based design and implementation" like the great-grandparent is proposing, there's no good reason for educated engineers and scientists to exist beyond having a fancy piece of paper. By doing the extra work on paper and proving that our designs work beforehand, we can have a design we know works before we implement it, whether that implementation is in CS at a computer, or in EE on a breadboard or circuitboard.

      That said, while I design circuits like an engineer, I program like an amateur. Guess which of the two has the better batting average?

      --
      It's been a long time.
    87. Re:He won't fix it? by Vo0k · · Score: 1

      > No it will not. This CANNOT be fixed. It has nothing to do with privilege escalation, and everything to do with information "leakage" from observable effects. Intel can no more change these observable effects than they can make a CPU that can't be instrumented with performance counters.

      And a man will walk on moon sooner than I get laid, right?
      Add a "secure" flag any thread can set, so it can just perform all the operations without using cache. Or add some kind of "cache malloc" so it gets exclusive privledges to a group of cache pages and they get wiped upon freeing them. Protecting a thread from being measured by performance counters is no more difficult than protecting area of memory from being accessed without being allocated first. And a higher security process may be pre-empted by a lower-security one freely, it just needs to have its resources separated. Say, a thread marks itself as secure - then its cache pages won't be checked against other processes and will always generate a "miss" - even if normally they would generate a "hit". Performance slightly drops, but sensitive data is secured. With no "secure threads" running, no performance impact at all. The fix in software could do about the same, except performance drop would be significantly higher.

      --
      Anagram("United States of America") == "Dine out, taste a Mac, fries"
    88. Re:He won't fix it? by Decker-Mage · · Score: 1
      Do you really think an EE proves every circuit he/she designs correct?! Often enough, he'll design a circuit a certain way because -*gasp*- it looks nicer to him! That's the art part of EE :-)

      I don't know about any other EE's out there but this EE (& NE,ME,CE,SE,NE, and more :-) does. *Especially* when I'm working on any critical systems. Reactor meltdowns are sooo messy.

      Perhaps that's why, to date, no one has ever found a bug in any of my software applications/suites that I've written over the last 30+ years, unlike the hacks written by software developers.

      To return to the thread, if the system is mission critical then yes, this is certainly something that must be addressed. Where it must be addressed is the question. From the paper and the discussion threads, it's not a kernel problem per se, it's a problem with cyptrographic algorithm implemention hardware dependencies.

      --
      "[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
    89. Re:He won't fix it? by Decker-Mage · · Score: 1

      The problem is *not* about a program (process) being able to read memory is should not be able to read. This is part and parcel of a whole class of problems with any hardware, software, or mixed system in which you are able to monitor the performance of the algorithm in either the energy or time dimensions. AES seems to be just as subject to this class of TEMPEST attack as is RSA. So long as timing (performance) monitoring can be achieved and the algorithm in that particular implementation is not executed in constant time, you can make a successful attack.

      --
      "[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
    90. Re:He won't fix it? by Decker-Mage · · Score: 1

      Actually switching to dual cores may not help at all for this class of problem if they share any level of cache at all and it has been pointed out elsewhere by C. Robinson that even DRAM level performance monitoring can still be leveraged in the presence of more than one core/CPU. This one is going to send a lot of people back to the drawing board not on both the software and hardware sides. Ouch!

      --
      "[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
    91. Re:He won't fix it? by ultranova · · Score: 1

      True. My mistake.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    92. Re:He won't fix it? by Dog135 · · Score: 1

      I'm talking about encryption.

      If you're doing a password compare, nothing will stop you from modifying the assembly. If you want to make the system secure, you need to encrypt the data.

      --
      "That's so plausible, I can't believe it!" - Leela
  2. Re: He won't fix it... by greenlava · · Score: 1

    Well Played

  3. Dictator? by Anonymous Coward · · Score: 0

    Dictator? Yeah, right.

    1. Re:Dictator? by Alibloke · · Score: 1

      I agree, a centrally controlled domain does not have to be controlled by a dictator.

    2. Re:Dictator? by shreevatsa · · Score: 0, Offtopic

      I can imagine Microsoft's campaign against Linux: "Would you want to use an operating system written by a dictator?

    3. Re:Dictator? by Tjebbe · · Score: 5, Funny

      or, to put it in Pratchett's words:

      He doesn't administer a reign of terror, just the occasional light shower.

    4. Re:Dictator? by bsquizzato · · Score: 1

      Don't be so literal about it all, we should all be able to tell that he's simply referring to Linus' full control over the development of the project. A dictator is defined as "An absolute ruler."

      You're placing a stereotype on the word by thinking that just because someone has absolute rule they can't be fair with it.

    5. Re:Dictator? by Megor1 · · Score: 4, Funny

      Now that I think of it I've never seen Castro and Linus in the same room....and Linus always seems to be smoking fine cigars...and open source software is practically communism anyway...it all makes sense now!

      --
      Everyone that disagrees with me is a paid shill
    6. Re:Dictator? by squiggleslash · · Score: 5, Informative
      The guy was refering to the oft-quoted observation that Linus is a "benevolent dictator", or rather than Linux's development model is one of benevolent dictatorship. It wasn't an insult aimed at Torvalds. It's a comment about the development model used by many FOSS projects. See also Larry Wall and Perl, or Guido Van Rossem and Python. In all these cases contributors to the projects defer to a project figurehead who makes the final decisions as to what goes into the official version of the project, and where that project goes.

      The most common alternative model is community development, where a - usually but not always elected - committee of developer 'elders' steer the project. Apache and Mozilla would be good examples of the latter.

      I appreciate some people have heard about this comment first today, people are joining the Free Software and Open Source communities all the time, but it kind of surprises me that so many are criticising Colin for this without anyone explaining this.

      --
      You are not alone. This is not normal. None of this is normal.
    7. Re:Dictator? by grasshoppa · · Score: 1

      But..but..he doesn't *have* full control over development. People can fork off at any time; that's not control. He steers his branch where he wants, and people build on top of that; that's not complete control either.

      As much as I hate to say it, the truth of the matter is this: Linux essentially belongs to everyone in that we can all make our own forks if we feel it necessary. Linus simply directs the pack of juiced up monkeys in the development, but if enough people lost faith in him, a new fork would be started.

      --
      Mod me down with all of your hatred and your journey towards the dark side will be complete!
    8. Re:Dictator? by Dogtanian · · Score: 1

      If Linus Torvalds is Fidel Castro, does that mean Alan Cox is Che Guevara?

      Well, he's got the beard anyway.... I'm now accepting orders for the poster; will dispatch to geeky student bedsits all over the world.

      --
      "Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
    9. Re:Dictator? by nester · · Score: 1

      that's a tshirt i would buy.

    10. Re:Dictator? by Pollardito · · Score: 1

      "In all these cases contributors to the projects defer to a project figurehead who makes the final decisions as to what goes into the official version of the project, and where that project goes."

      right, but Linus didn't say "i won't merge a patch that fixes this." that's what people are referring to, not the fact that they don't understand the dictator comment

    11. Re:Dictator? by megarich · · Score: 1
      If the quote from the headline is correct, he does have a right to be criticized. All corporations are run by some "dictatorship". You have to because someone obviously needs to make a final decision on what needs to be done or not. If there is no one to lead then there is chaos and nothing will get out the door. All junior high educational stuff really.

      So what I am trying to say, using an argument that applies universally and saying linux "suffors" from it because someone is throwing a hissy fit for not getting his way i see as wrong. If colin really wants to prove linus wrong, colin should just prove the exploit works in reality and outside of paper.......

    12. Re:Dictator? by Anonymous Coward · · Score: 0

      Literally, dictator simply means "speaker". Neither Caesar nor any other ruler of the Roman Empire were ever called "Emperor", but they were quite often called "Dictator".

      Of course, words should always be taken in the context intended -- it's an exercise in intellectual dishonesty to put implied words into someone's mouth by way of alternative or literal definitions.

    13. Re:Dictator? by Anonymous Coward · · Score: 0

      But if you forked it it would be called grassoppaux or something.

    14. Re:Dictator? by sploxx · · Score: 1

      The guy was refering to the oft-quoted observation that Linus is a "benevolent dictator", or rather than Linux's development model is one of benevolent dictatorship. It wasn't an insult aimed at Torvalds.
      And still, by taken this out of context and removing the first part, IMHO it is meant to have this or a similar effect. Hidden, very biased rhetorics!

  4. Dictator? by BBrown · · Score: 5, Insightful

    A dictator who has made his domain open-source, thereby giving everybody free reign to change and make distinct copies of it?

    Come on.

  5. Critical Thinking by mfh · · Score: 1

    Linux really suffers from having a single dictator in charge

    Critical to the Open Source model is agility, and it's why Windows is at a strong disadvantage to Linux -- they can't have the same agility as we do.

    There isn't a single dictator in charge of Linux, only a media figurehead. Try telling that to the media, who can't yet comprehend our multidimensional, fractal, Open, Source, methodology.

    --
    The dangers of knowledge trigger emotional distress in human beings.
    1. Re:Critical Thinking by Anonymous Coward · · Score: 0

      mutlidelusional, fratricidal, Open Sores, mediocracy??

      I was getting a buzz from all those buzz words....

  6. Single Dictator? by Anonymous Coward · · Score: 3, Insightful

    If Linus decides that he does not want to bump its priority up, someone else can fix it. Thats what fellow kernel developers do.

    If Microtoft decides not to fix it, then no one else can.

    so which one is a single dicatorship?

    1. Re:Single Dictator? by bloodbob · · Score: 2, Interesting

      Linux developers can fix it but the fixes won't go in linus says what goes in and what doesn't.

    2. Re:Single Dictator? by MoonFog · · Score: 2, Informative

      Most distros have tweaked the kernels to suit their needs anyway, nothing stops them from implementing this in their own kernel version.

    3. Re:Single Dictator? by Anonymous Coward · · Score: 0

      Who cares? Hardly any end-users end up with the vanilla kernel anyway. The fact that your misguided "rebuttal" got modded up while the original post was left alone makes me weep.

    4. Re:Single Dictator? by js3 · · Score: 2, Insightful

      when I first read your reply I thought it said
      Most dictators have tweaked the kernels to suit their needs anyway, nothing stops them from implementing this in their own kernel version.

      --
      did you forget to take your meds?
    5. Re:Single Dictator? by fitten · · Score: 1

      Actually, many/most end-users use the vanilla kernel. Most of us have more important things to do than recompile the kernel 10 times a day hoping for a 0.0001% performance increase over the last time we recompiled it.

      I would suggest that if Linux were to ever get serious traction on the desktop, nearly all end-users will use the vanilla kernel.

    6. Re:Single Dictator? by Anonymous Coward · · Score: 0

      Only those of us who recompile the kernel use the vanilla kernel. Everyone else uses the RedHat kernel, the Mandrake kernel, the Connectiva kernel or others.

    7. Re:Single Dictator? by fitten · · Score: 1

      OK. Good point. I guess the term "default" kernel for your distribution would have been better for me to use.

    8. Re:Single Dictator? by Chris+Burke · · Score: 1

      Most dictators have tweaked the kernels to suit their needs anyway, nothing stops them from implementing this in their own kernel version.

      Well my first question is did you agree with the phrasing wholeheartedly as you read it. The followup question is: are you a sysadmin? :)

      --

      The enemies of Democracy are
  7. single dictator by Anonymous Coward · · Score: 0

    The solution just presented itself! Multiple dictators for everyone! Oh what fun!

  8. bad tactics from Colin Percival by Anonymous Coward · · Score: 3, Insightful

    The answer to Linus' assertion that "I'd be really surprised if somebody is actually able to get a real-world attack on a real-world pgp key usage or similar out of it" is not to say "Well we all think its bad", but to produce a proof-of-concept exploit.

    If he and "all the world's cryptographers" can't do that, then Linus' pragmatism beats the cryptographers paranoia (their defining quality, in my experience) into a cocked hat.

    If an exploit can't actually be exploited, it's not and exploit.

    1. Re:bad tactics from Colin Percival by Trigun · · Score: 1

      Somehow I doubt that there will ever be a fully reproducable exploit on this, unless it is under extremely controlled conditions that would not occur in a production environment. That being said, the flaw exists, and should be removed. If the distro vendors want to get security ratings for their product, then they should give some spare cycles for it. Why is it up to Linus?

    2. Re:bad tactics from Colin Percival by jsonn · · Score: 4, Insightful
      Get the facts. Colin showed that you can retrieve ~30% of a RSA key by running a program in parallel. This can be improved most likely if you have the chance to do it more than once. It is also imported to keep in mind that you can't entirely avoid an unbalanced memory access pattern without also taking a huge performance penalty.

      The point of this debatte is that the Intel implementation sucks, it allows you to spy a lot on processes running on the virtual CPU. Sure, there are better alternatives than disabling HTT like the suggestions of Colin to only schedule threads of the same program on the virtual CPU. Actually, that is something you want to do anyway or otherwise you can seriously loose speed and drop under the performance of a processor with HTT disabled.

      Speaking of paranoia, it is often not a bad thing to have, many big security problems can be avoided. Oh, I forget to patch the Linux box next door.

    3. Re:bad tactics from Colin Percival by hal9000(jr) · · Score: 1

      is not to say "Well we all think its bad", but to produce a proof-of-concept exploit.


      If an exploit can't actually be exploited, it's not and exploit.


      How quickly you kids forget. First, it looks like colin has produced a POC--read the damn paper. Second, let's go waaaaaay back to the what, 1992 and the L0pht response to a security problem in Windows. "That vulnerability is completely theoretical." -- Microsoft. L0pht, Making the theoretical practical since 1992.

    4. Re:bad tactics from Colin Percival by Gopal.V · · Score: 2, Insightful
      "I'd be really surprised if somebody is actually able to get a real-world attack on a real-world pgp key usage or similar out of it"

      Being able to read arbitrary memory from another process is a big security flaw, as illustrated by the Minesweeper Hacking sample. But for a kernel programmer it's a minor deal for server security as it needs a local/remote exploit to run code on your box. Even then it is a readonly exploit, which decreases exploitability unless we're talking about stuff like SSL certs or GPG keys - which are pretty hard to find in 1 Gb of data :)

      So to really exploit this, your thread should be running the CPU practically or 100% CPU. That should be an easy enough warning sign :)
    5. Re:bad tactics from Colin Percival by DrPizza · · Score: 2, Insightful

      The vulnerability is not Intel-specific. This kind of timing information can be leaked on any system that has data caches that are either too small to hold the entire lookup table an algorithm uses, or on an OS which multitasks, or use a lookup table with certain characteristics, or....

      The problem is not with hyperthreading. It's not with Linux. It's with the implementation of the encryption algorithms. They need to stop assuming that table lookups are constant-time. Because they're not. As good as constant-time for most purposes, yes. But for cryptography they're not good enough.

    6. Re:bad tactics from Colin Percival by Anonymous Coward · · Score: 0

      you can retrieve ~30% of a RSA key by running a program in parallel

      I see. And if you have 30% of an RSA key, you can do *what* with it?

      Witout 100% of the key, all you have is random garbage.

    7. Re:bad tactics from Colin Percival by jsonn · · Score: 1

      I said you can get 30% in one run. Let's say you have 768bit RSA key, with 30% known you are in the area of keys which have been broken. Keep in mind that work needed to factorize a key is at the very least a polynom of degree 6, if it isn't exponential. Reducing the effective key size by 30% saves a lot of time.

    8. Re:bad tactics from Colin Percival by Foolomon · · Score: 1

      Andy Grove once said, "You're only paranoid if you're wrong."

      If Linus is asking for a proof-of-concept exploit implementation then I can understand his request. But simply ignoring it is indeed asking for trouble.

      Maybe the next release of the kernel should be codenamed "Ostrich?" :D

    9. Re:bad tactics from Colin Percival by stratjakt · · Score: 2, Insightful

      I agree, why not have your crypto loops piss away a few extra cycles, randomly.

      for (i=0; isome_random_number; i++) { do_some_stuff_that_looks_like_crypto }

      This seems like another pointless nerd debate. It sounds like that "hack a key by examining the frequencies the CPU emits" type stuff.

      --
      I don't need no instructions to know how to rock!!!!
    10. Re:bad tactics from Colin Percival by Anonymous Coward · · Score: 0

      but to produce a proof-of-concept exploit

      It's been done. Check out Colin's paper that was presented at BSDCan 2005.

      Colin spent a couple of months determining whether this was exploitable and he found out that it was.

      There's a reason why OpenBSD has a good security reputation: they go after things pro-actively. The way Linus is desribing things is re-active.

      You judge which way is better.

    11. Re:bad tactics from Colin Percival by dougmc · · Score: 1
      I agree, why not have your crypto loops piss away a few extra cycles, randomly.
      That's not a true fix. It makes it a bit harder, yes, but by repeating the test over and over one can average out the random error that you're introducing.

      This page may be of some assistance in helping to understand the differences between systematic and random error, and should give you an idea how how people can minimize random errors (like the one you're talking about introducing.) (Of course, the way to work around random error is to simply take lots of readings, something that's often very easy to do when computers are involved.

      I certainly agree that this HT vulnerability looks pretty minor, but the people who try to break cryptography are often VERY clever, and can use little things like this, even if obfuscated by some deliberately introduced randomness, to make an attack on something much simpler.

    12. Re:bad tactics from Colin Percival by Anonymous Coward · · Score: 0

      No, the vulnerability is very much specific to hyperthreading.

      Without hyperthreading, there would be no practical way to get sufficiently detailed information for an attack (not without physical access to the CPU to do DPA or something similar). With hyperthreading, the two threads sharing CPU resources simultaneously gives away several orders of magnitude more detail of what the other thread is doing than any other software-based means of observing things.

      It also isn't really a timing attack; it's an extremely detailed view of the cache usage of the other thread, based on the fact that the attacking thread can reliably pollute as much of the cache as it wants.

      Cache observation attacks have been theorized as a possibility for quite a while, but this paper shows that hyperthreading has finally made it easy enough that it can actually be done.

    13. Re:bad tactics from Colin Percival by m50d · · Score: 1

      Random extra doesn't cut it, just means you have to take more measurements to get the timing right. This isn't pointless at all, I've seen too many "only theoretical" exploits work to dismiss anything that seems like a possible flaw.

      --
      I am trolling
    14. Re:bad tactics from Colin Percival by Afrosheen · · Score: 1

      "I certainly agree that this HT vulnerability looks pretty minor, but the people who try to break cryptography are often VERY clever..."

      I agree with you there. In Soviet Russia, security cracks you!

    15. Re:bad tactics from Colin Percival by DrPizza · · Score: 1

      No, the vulnerability is very much specific to hyperthreading.

      No it isn't.

      Without hyperthreading, there would be no practical way to get sufficiently detailed information for an attack (not without physical access to the CPU to do DPA or something similar).

      Yes there would. As shown for example here.

      Cache observation attacks have been theorized as a possibility for quite a while, but this paper shows that hyperthreading has finally made it easy enough that it can actually be done.

      DJB's paper shows that it can "actually be done", and he's using an Athlon, not a P4. This is a cache timing attack and they are as old as caches are.

      The solution is not to disable HT or wail about how it's a "security hole"--because we know that the same attacks can be made on any system that either multitasks or has a cache too small for the lookup tables. It's to use high performance encryption algorithms that have neither data nor key dependencies, which means no table lookups. There are a number of them out there. AES just isn't one of them (it can be high performance, or it can be free of data and key dependencies, but thus far it doesn't appear that it can be both).

  9. OK Colin, Well done by Timesprout · · Score: 4, Insightful

    you found an obscure and difficult to exploit vulnerability. Now quit trying to make out the world is doomed and trolling on Linus to keep the spotlight on youself.

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
    1. Re:OK Colin, Well done by MoonFog · · Score: 2, Insightful

      I wonder what people would say if this was about Microsoft and not Linux? You think Slashdot would talk about it in the same way?

    2. Re:OK Colin, Well done by TuringTest · · Score: 4, Insightful

      If this was about Microsoft and Bill refused to fix the vulnerability, nobody else could write a patch for the sources to solve the problem. See the difference?

      --
      Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
    3. Re:OK Colin, Well done by MoonFog · · Score: 1

      Off course I see your point, but Mr. Percival is critising Linus Torvalds for personally not caring about the problem, not that the problem won't be fixed at all.

    4. Re:OK Colin, Well done by maxwell+demon · · Score: 2, Interesting

      Of course. Except that the roles would be taken by other people: The Linux zealots would play the "it's a major security problem" role, while the MS zealots would play the "there's no real exploit here" role.

      Except that for MS problems you'd probably not actually hear about it unless an exploit has been found (MS would of course keep quiet about it, and others would probably not find out other than by creating an exploit).

      However, IANASE

      --
      The Tao of math: The numbers you can count are not the real numbers.
    5. Re:OK Colin, Well done by JuliusRV · · Score: 1

      I wonder what people would say if this was about Microsoft and not Linux?

      It is not really about Linux or any specific OS. It's about Intel's HT-implementation and on what level to fix it. Windows crypto applications could suffer from this vulnerability as well.

    6. Re:OK Colin, Well done by gimpboy · · Score: 1

      Linus can only personally care for so many things. Nothing is preventing someone else from saying: Hey this is a problem. I'll fix it and send a patch to Linux. I doubt that Linus would ignore such a patch. My understanding is that this is a theoretical problem and noone has even provided an example which demonstrates this exploit. There are many things that need to be worked on, and Linus has to prioritize them some how.

      --
      -- john
    7. Re:OK Colin, Well done by KillShill · · Score: 1

      the difference is that intel's shills are harder to spot on /.

      the fact that you almost never read about the evil practices of intel is a tribute to their success.

      at least the government of japan has the balls to bust them for MS-esque behavior is saying a lot about the US gov.

      --
      Science : Proprietary , Knowledge : Open Source
    8. Re:OK Colin, Well done by colinrichardday · · Score: 1

      Ah yes, the "Linus doesn't scale" argument!

    9. Re:OK Colin, Well done by TuringTest · · Score: 1

      You, sir, made me laugh.

      --
      Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
    10. Re:OK Colin, Well done by gimpboy · · Score: 1

      However, you'll notice that anyone can fix this problem and submit the solution. If there is a company who relies heavily on Linux and thinks this is the worst security since Windows XP, they can hire someone to fix the problem and send a patch to Linus. Linus can then consider the patch and implement it. I'd say this is pretty scalable. I also believe that there are a couple other people who can commit changes to the kernel.

      --
      -- john
  10. Linus the great Dictator by tronicum · · Score: 2, Insightful
    Just because Linus does not share the same opinion on the importance of this issue this does not mean that he is an dictator.

    Colin needs to cool down a bit. At least the Linux distros (SuSE, Red Hat, etc are the ones which will get a problem from affected systems) are going to get patches for it. From Linus or any other Kernel developer.

    1. Re:Linus the great Dictator by squiggleslash · · Score: 1

      Here's the explanation of that comment. He's not accusing Linus of being an evil torturing Saddam-wannabee, he's refering to the development model of Linux.

      --
      You are not alone. This is not normal. None of this is normal.
    2. Re:Linus the great Dictator by Anonymous Coward · · Score: 0

      Colin needs to cool down a bit. At least the Linux distros

      Security is an not "add-on" feature, it has to be designed into the system. If the base kernel is not designed to be secure, adding hack jobs later may or may not fix the problem. MS said a lot of bugs were "theoretical" only until a worm was released. Do you want Linux to be the same way?

      Do things correctly at the source and everyone benefits. Heck, if you're worried about performance make the fix toggleable (like the FreeBSD people did). The default setting is 'secure', but if you really need the extra 5% (or whatever) performance you flip a switch.

  11. Open Source, YOU win! by xiando · · Score: 2, Informative

    Linux is Open Source. So it does not matter what the dictator thinks. Because even if he is, like Colin childishly claims, a dictator, he does not have any real power over Linux users. There are, in fact, dozens of flavors of Linux kernels available on the market. And almost none of the major distributions today use the stock vanilla kernel, most of them ship with kernels who include numerous patches who are not part of the vanilla kernel. If Linus does not make a patch, someone else will. And chances are high the patches will be taken into the vanilla kernel. But even if such patches are not accepted into the vanilla kernel tree, they can still be applied to it. This is why Open Source wins. We have the source, the source is with us - And we are free to do what ever we like with it. I can apply a secure patch if one comes available regardless of what the dictator thinks of that, and that is obviously why it is totally wrong to call a person who is kind enough to use hours and hours of his time to develop something that greatly benefits mankind a dictator.

    1. Re:Open Source, YOU win! by Drakonian · · Score: 1

      I don't think he was slamming Linus. Read this comment for an explanation.

      --
      Random is the New Order.
  12. Linus and RMS by uchi · · Score: 3, Funny

    If Linus is the dictator, does that make RMS the court jester? On second thought, do dictators even have jesters? This does not look good for RMS.

    1. Re:Linus and RMS by Anonymous Coward · · Score: 0

      If Linus is the dictator, does that make RMS the court jester? On second thought, do dictators even have jesters? This does not look good for RMS.

      no not Jester..... GNU/Jester

      I know, I know, trolling, but I actually agree with RMS though, it's a GNU system with a linux kernel. Don't undervalue the work of people who release their code GPL for any compatible unix system, in fact, most of "linux" isn't the kernel, so yeah, I run a GNU OS with a linux kernel.

    2. Re:Linus and RMS by Anonymous Coward · · Score: 0

      He is R2D2 to Linus's Luke Skywalker ;)

    3. Re:Linus and RMS by Anonymous Coward · · Score: 0

      Thanks for sharing.

    4. Re:Linus and RMS by daigu · · Score: 4, Interesting

      RMS is more like the tribal elder reminding you of your ideals - especially during those times when you consider putting them aside because they seem impossible to live up to.

    5. Re:Linus and RMS by AHumbleOpinion · · Score: 2, Funny

      RMS is more like the tribal elder reminding you of your ideals - especially during those times when you consider putting them aside because they seem impossible to live up to.

      No, not at all, the tribal elders would be the BSD folks. RMS is the witch doctor blowing smoke into your face telling you that it will cure all your problems. ;-)

    6. Re:Linus and RMS by Anonymous Coward · · Score: 0

      Maybe in the times it really *was* GNU + Linux but now most distros are GNU + Linux + X + KDE/Gnome or something similar. I guess you don't wan't to say KDE/X/GNU/Linux

    7. Re:Linus and RMS by McGiraf · · Score: 1

      Nah, RMS would be Yoda.

    8. Re:Linus and RMS by Anonymous Coward · · Score: 1, Insightful

      See the story inside the latest OpenBSD CD sets....

    9. Re:Linus and RMS by Anonymous Coward · · Score: 0

      I get the distinct impression that Richard Stallman is once again poking his nose in where it does not belong. He's lucky the folks at linux are so willing to work with him; had that been my project I would have politely told Stallman and the FSF that if they didn't like my use of Java then they didn't have to use my code. Simple as that.

      Stallman believes that if you like proprietary software then you're an idiot who does not deserve to use a computer. He also believes that all software should be "free" (but only per his definition of "free" - remember, to him BSD is not free, but to us BSD folks the GPL is not free, so it's a stalemate) and that all non-GPL software should be released under the GPL. He even goes so far as to clone some software and release it under the GPL, and to fork other open projects that he feels are not "free" enough (i.e., that don't use the GPL). Talk about a waste of effort! Don't add new features to a program, rather re-write it from scratch because you like the code but not the license. He's a jerk who should be ignored, not a saint who should be followed without question. What has Stallman done that's original thought (the GPL doesn't count, I'm talking working code)? What hasn't he simply cloned for religious purposes? He didn't like the emacs license, so he cloned it. He didn't like the UNIX license, so he tried to clone it and failed, then tried to hijack the only UNIX clone with a license he liked (tell me, does HURD work yet? I don't hear much about it in the press) He's got a Java clone going, but it won't work with linux's Java code so he blames linux rather than blaming his faulty Java clone.

      I must thank him, though, because his stupid insistance that every Linux distribution is "GNU/Linux" so turned me off that I started looking at the various BSDs as an alternative, and I found them so much better than Linux that I no longer have any Linux in my house, just *BSD and Windows.

      Now, here in Slashdot I can filter things so I don't have to read my foes posts, but somehow I can't seem to filter it to block all stories about Stallman and/or the FSF. Oh, well, can't have everything. Maybe I'll write a little Java program to do that, and release it under the BSD license :-)

    10. Re:Linus and RMS by Anonymous Coward · · Score: 0

      Root-Mean-Squared?

  13. but... but... but... by databyss · · Score: 4, Funny

    The all powerful Dvorak said linux had no leaders...

    --
    Hmmm witty sig or funny sig? Maybe elitest techy sig!
    1. Re:but... but... but... by saintp · · Score: 3, Funny

      There's only one way to find the truth: cage match between Dvorak and Percival. Whoever comes out alive wins.

    2. Re:but... but... but... by Timesprout · · Score: 1

      You need to stop listening to your keyboard man.

      --
      Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
      What truth?
      There is no dupe
    3. Re:but... but... but... by Anonymous Coward · · Score: 0

      The men enter, one man leaves. Then later the other man leaves after being declared the winner.

    4. Re:but... but... but... by Couldn'tCareLess · · Score: 2, Funny
      You have a keyboard man? Where do you keep him? What does he eat?

      I want a keyboard man!

    5. Re:but... but... but... by databyss · · Score: 1

      You all know too much now....

      NINJA'S GO!

      --
      Hmmm witty sig or funny sig? Maybe elitest techy sig!
    6. Re:but... but... but... by KillShill · · Score: 1

      does anyone else not see the resemblance between dvorak and the telemundo anchor?

      --
      Science : Proprietary , Knowledge : Open Source
    7. Re:but... but... but... by Anonymous Coward · · Score: 0

      So then it's a puzzle-solving competition to figure out a way out of the cage?

    8. Re:but... but... but... by Chewbacon · · Score: 1

      Dvorak is an idiot. If you listen to him, he'll steal your soul with unfounded speculation. He swears it all to be fact, while he's only conjured it out of his own arse.

      --
      Chewbacon
      The Bible is like Wikipedia: written by a bunch of people and verifiable by questionable sources.
  14. Micro-Managing Minutiae Mayhem by mathmatt · · Score: 3, Funny

    when Linus doesn't understand a problem, he won't fix it

    This is interesting logic: The idea that the creator of an organization must understand minutiae and micro-manage everything that the organization does.

    Interesting indeed...too bad it's fallacious. (Although it might explain what is taking Longhorn so long to come out - I can see Bill Gates searching Google for whitepapers on file systems, search algorithms, GUI's, etc.)

    1. Re:Micro-Managing Minutiae Mayhem by mwvdlee · · Score: 2, Funny

      No, that still wouldn't explain it. Bill gates searching MSN for the info would!

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    2. Re:Micro-Managing Minutiae Mayhem by Anonymous Coward · · Score: 1, Interesting

      FWIW, the original cray os didn't have virtual memory since seymor didn't understand it. A unique caas, but it is what I though of when I saw the /. blurb.

  15. At least Linus.... by MarkEst1973 · · Score: 2, Informative
    ...has a job. Naturally this guy would disagree with Linus. He's got nothing else to do. I, too, would strongly disagree if someone casually dismissed the past three months of my life.

    From the original article

    • Where do you work? I'm unemployed. For the past three months, I've spent almost all of my time working on this security flaw -- investigating how serious it was, contacting all of the affected vendors, explaining how this should be fixed, et cetera. I simply haven't had time to go out and get a job -- and I decided that making sure that this issue was properly reported and fixed was far more important than earning some money.
    1. Re:At least Linus.... by Anonymous Coward · · Score: 0

      How is this troll considered "informative"? The fanboys on this site are truly staggering.

    2. Re:At least Linus.... by mattgreen · · Score: 4, Insightful

      Nice ad hominem attack. Attack the argument, not the person.

    3. Re:At least Linus.... by A+beautiful+mind · · Score: 1, Insightful

      It would be only ad hominem if his status would be in no relation to the issue at hand, but in this case, his "obsession" is important.

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    4. Re:At least Linus.... by Anonymous Coward · · Score: 0

      You have that backwards; Ad Hominem means attacking the person and not addressing the argument.

    5. Re:At least Linus.... by mwvdlee · · Score: 1

      It's still not a valid argument.
      It does go a long way to show the implied argument that the topic is important because the person is "obesssing" about it, is invalid too.
      But I guess that wasn't the point of the interview quote in the first place.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    6. Re:At least Linus.... by Anonymous Coward · · Score: 0

      You have his intentions backwards. His second statement was intended as a command, not a definition of Ad Hominem.

    7. Re:At least Linus.... by squiggleslash · · Score: 1
      I disagree. What matters is whether this actually is an exploitable vulnerability. Whether it is or not has nothing to do with whether he's a Nobel Prize winning mathematician or a certified lunatic in a home.

      BTW, I think it's exceedingly ironic that someone criticising someone's grasp of mathematics on the basis of an accusation that they're mentally a little off-the-wall should have the Slashdot nick "A Beautiful Mind"...

      --
      You are not alone. This is not normal. None of this is normal.
    8. Re:At least Linus.... by A+beautiful+mind · · Score: 1

      There is no such exploitable vulnerability, most of the people on LKML can tell you that, and they certainly wouldn't fix it inside kernelspace would there be one. The fact that the guy STILL holds on to the issue was explained by the top poster.

      In your last paragraph you clearly demonstrated what is an ad hominem attack, and what is the difference between the top post and your post.

      Btw, where did you hear about mathematics in relation to the issue? Because the whole issue is about coding and hardware design.

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    9. Re:At least Linus.... by GoofyBoy · · Score: 1

      Isn't this exactly what OpenSource/Linux/FSF wants? A bunch of dedicated people with too much time on their hands who will obsess over things important to them?

      I really fail to see what having a job makes you more qualified or not. Would you listen to him more if he had a job at McDonalds?

      Let the arguments/logic sort themselves out, and not the person/politics.

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    10. Re:At least Linus.... by Anonymous Coward · · Score: 0

      ...has a job. Naturally this guy would disagree with Linus. He's got nothing else to do. I, too, would strongly disagree if someone casually dismissed the past three months of my life.

      Good argument; it's too bad you're so ugly, or I might be persuaded more. (Hint: look up ad hominem).

    11. Re:At least Linus.... by squiggleslash · · Score: 3, Informative
      There is no such exploitable vulnerability, most of the people on LKML can tell you that, and they certainly wouldn't fix it inside kernelspace would there be one. The fact that the guy STILL holds on to the issue was explained by the top poster.
      Absolute rubbish, from start to finish. Even Linus Torvalds claims no such thing.
      "As to the HT 'vulnerability', it really seems to be not a whole lot different than what people saw with early SMP and (small) direct-mapped caches. Thank God those days are gone.

      "I'd be really surprised if somebody is actually able to get a real-world attack on a real-world pgp key usage or similar out of it (and as to the covert channel, nobody cares). It's a fairly interesting approach, but it's certainly neither new nor HT-specific, [nor does it] necessarily seem all that worrying in real life.

      Torvalds is arguing it's unlikely to ever be exploited, not that it's unexploitable or that it's not a vulnerability. The position of those, excluding yourself, who dismiss this is that it's unlikely to be usefully exploited, not that it doesn't exist. We can see it exists!

      As to your last sentence, no the top poster doesn't explain it. The top poster simply describes the guy as an obsessive because he's put a lot of time into it, far more than a reasonable person might reasonably be considered to do. That's different from saying he's wrong.

      In your last paragraph you clearly demonstrated what is an ad hominem attack, and what is the difference between the top post and your post
      My last paragraph was a comment about irony. It had nothing whatsoever to do with attacking your argument on the basis of who you are rather than your argument. It did, however, attack your argument. Your argument was that nothing this guy says should be taken seriously because of an accusation of being mentally off-the-wall. Nash is a perfectly good counter-example. The irony is that you unwittingly brought him up. There's no ad-hominem in there, I wasn't attacking you or your credibility, I was attacking your argument.

      I don't care if the guy's obsessive. I care if there's an exploitable vulnerability. Until someone writes code either way, the issue is unproven, but it's clear there's a potential, if unlikely (not impossible, just unlikely) to be useful, vulnerability there. Your comments and those of the thread originator are not convincing because they attack the proponent than explain why the argument itself is false.

      --
      You are not alone. This is not normal. None of this is normal.
    12. Re:At least Linus.... by Artifakt · · Score: 1

      It's not valid in classical logic. It's valid in a gestalt sense, but in that sense, it's not enough by itself to count for much.
      This is a situation we all have to evaluate chiefly by gestalt thinking. The parameters aren't clearly defined enough, and we don't know enough of them to use classical logic effectively. Most of us are not as familiar with the issue as either Linus or Colin, and we are seeing only a tightly limited and selected view of the end products of their total thoughts on the subject and not the processes that led to them.
      By gestalt, we know that Colin has been tightly focused on this issue and has put a lot of time into it, even though he could presumably be concentrating more on some other matters like employment. That could show anything from obsession to some very praiseworthy charitable motivations. But, we also have the word "all" being used (with respect to cryptographers). Strong words like dictator (without strong situations to make them more than hyperbolic), and heavy use of 'nevers', 'alls' or 'everybodies', are both signs that would make me tend towards the obsession interpretation.
      Does it 'prove' anything, in a rigorous sense? No. It requires me to remain open to new evidence either way. Does it mean that, if I have to decide right now whether to use the kernal in a certain application or wait for a patch, I'm more likely to go ahead and trust the existing kernal? Yes.

      --
      Who is John Cabal?
    13. Re:At least Linus.... by squiggleslash · · Score: 1
      If the "dictator" comment was a big issue for you, you may need some context.

      I mostly disagree with your comment, FWIW. The issue here is whether there's a vulnerability. I don't care how obsessive the proponents on either side, be it Obsessed Colin vs Flippant Linus, that really doesn't impact my view of it. From what I can tell, it's one of those things that requires good timing and good luck to be useful. Generally, in other areas, we tend to err on the side of caution when it comes to similar potential exploits. I'm surprised there's major disagreement here.

      Would I trust a kernel right now with this vulnerability? Kind of. Most of us run operating systems with multiple vulnerabilities anyway, because life is too short to spend downloading and installing every patch within minutes of a vulnerability being uncovered, and most of us are not the NSA and are more concerned with being the victim of a mass untargeted attack than egotistical enough to assume someone would target us directly. Indeed, if Linus has a choice between fixing a (hypothetical) buggy IDE driver that keeps crashing the kernel or fixing an obscure root exploit that nobody's targetted because it's a PITA to actually make work, I think most of us would ask him to work on the IDE driver first.

      That's different though from being comfortable with the general principle that no effort be made to fix an issue, either at a low or high priority. It doesn't look very good.

      --
      You are not alone. This is not normal. None of this is normal.
    14. Re:At least Linus.... by super_ogg · · Score: 0

      No kidding, his 15 minutes of fame is over. This guy has nothing to do and thinks he can gain in the ranks by posting stuff blatently questioning Linus' credit and role in Linux.

      Colin, I think there is a gas station at the end of the street that needs a gas monkey. Get out there and start pumping my gas.
      ogg

      --
      Black cat, searing pain, flames...? I must be in Heaven! - Homer Simpson
    15. Re:At least Linus.... by A+beautiful+mind · · Score: 1

      "Torvalds is arguing it's unlikely to ever be exploited, not that it's unexploitable or that it's not a vulnerability."

      You're arguing on the tidbits. The same reason it is not considered a real exploitable vulnerability, because it is a THEORETICAL vulnerability. Some of those get fixed, some don't, like the ones which got on the surface grsec vs. kernel developers. Grsec people argued that it is a vulnerability and kernel developers argued that the particular vuln. can only be exploited if someone is already root, and that if someone is root he has five thousand more effective means in doing whatever he wants with the system.

      The same applies to this vulnerability. It is under the radar, it is theoretical and the performance gains outweight multiple times that you would gain from fixing this issue on a _software_ level. Nothing stops intel from fixing it in a new version of processors.

      The original reporter's dedication to the matter is relevant as shown by the top poster because he is making the issue seem to be a lot worse than it is and he is making overly generalized statements.

      Maybe you need to worry about such vulnerabilities if you want to build an A1+ rating machine on the Department of Defense's scale.

      "I don't care if the guy's obsessive."

      After we heard pro's and con's, and the guy still keeps pushing it, i would think, that it is relevant, because then we can go tell him to move on (and not create flamebait on kerneltrap).

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    16. Re:At least Linus.... by Vellmont · · Score: 1

      For those that lack the technical knowledge to see which argument is better, it comes down to trust.

      Which person do you trust? Do you trust Linus who's had more than 10 years of experience in dealing with low-level hardware, writing kernel code, and dealing with exploits? Or do you trust Colin, a 23 year old who's studied mathematics, that's demonstrated he seems to care more about self promotion and the limelite than anything else? From what I've been able to gather Colin sounds like your typical "wunderkind". He's obsessed with his own accomplishments. People like that have a hard time accepting they might be slightly wrong.

      --
      AccountKiller
    17. Re:At least Linus.... by Anonymous Coward · · Score: 0

      Well since Colin is technically correct, I'd say that while I trust neither of them, I certainly don't seem to have your personal sense of inferiority.

      Your comment is pretty fucking stupid in that it encourages people that don't understand things to reason fallaciously.

    18. Re:At least Linus.... by Vellmont · · Score: 1


      Well since Colin is technically correct

      How can you possibly know that? No one has seen produced any real-world exploits for this, simulations, or anything. It's quite impossible at this point to know who is technically correct.

      I certainly don't seem to have your personal sense of inferiority.

      Maybe you just don't have a very good sense of people.

      Your comment is pretty fucking stupid in that it encourages people that don't understand things to reason fallaciously.

      It isn't about reason, it's about trust. Everyone uses trust factors to make decisions every day. It's impossible to know everything, so many decisions come down to simple trust.

      --
      AccountKiller
    19. Re:At least Linus.... by Anonymous Coward · · Score: 1, Informative

      It seems that he wanted something interesting to do in between studying (he's getting a PhD - at 23) and getting a job, and decided that focusing on figuring out whether this vulnerability is actually exploitable would be an interesting challenge.

    20. Re:At least Linus.... by Anonymous Coward · · Score: 0

      What a stupid, stupid ad hominem attack. He was working for months in order to investigate the issues, because he felt it was important that the community discuss it.

      I hope you're a proud Linux user. I hope you're proud of the many kernel exploits you've had in the last 4 months, while the BSD community works hard for stability and security.

    21. Re:At least Linus.... by Artifakt · · Score: 1

      I'd agree that AN issue here is whether there's a vulnerability. Actually, I'd agree with much of what you said beyond that.
      Where we disagree is apparently, I do care about whether one or both sides of the original debate are being obsessive, flippant, or dismissive. I say care, in the sense that I'm lazy, and it's shorter than parsing all the code required to verify every claim to be able to dismiss some claims quickly from their authorship alone and focus on others that are competing for my time and attention. Insisting on only formal logic here amounts to a requirement that we individaully crunch all the code in each and every case.
      Now what I called Gestalt logic is what the first poster was using. He came to a different conclusion than I did, and my actual opinion is much more similar to your opinion than his. To me, some indicators that Colin could just possibly be overstating the risks or rating the severity without regard to other competing threats weren't nearly enough to say "Ignore this one entirely". BUT, the reasoning process he used is still valid as a method, even if the end result differs.
      You can point to countervailing evidence, i.e. Colin's previously demonstrated competence, or the "err on the side of caution" principle, as evidence for your position. Maybe the first poster should have included these in his own evaluation. I'm simply argueing that's different from rejecting his method itself.

      --
      Who is John Cabal?
  16. Fixing is easier said than done by Xpilot · · Score: 5, Insightful

    The kernel developers don't seem to agree on the right way to fix this, whether at the kernel level or in userspace. However, it may affect the performance of the kernel if it's done in kernelspace, and it is impractical to have everyone rewrite their userland software, as someone else pointed out. The "patch" which is available for FreeBSD to fix this problem only disables hyperthreading and does not provide a real fix.

    --
    "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    1. Re:Fixing is easier said than done by criscooil · · Score: 2, Informative
      The "patch" [...] only disables hyperthreading and does not provide a real fix.
      Unless I missed something, disabling HT _is_ a real fix.
      --

      My life is an open book ... up to a point.

    2. Re:Fixing is easier said than done by njcoder · · Score: 1
      "Unless I missed something, disabling HT _is_ a real fix."

      By that logic, wouldn't writing a patch that powered off your system once it started booting would be a real fix too :)

    3. Re:Fixing is easier said than done by Urkki · · Score: 2, Insightful
      • Unless I missed something, disabling HT _is_ a real fix.

      Sounds like it doesn't fix the problem, it replaces it with another (reduced performance). That's not a *real* fix to any problem.

      Compare: doing suicide to "fix" personal problems.
  17. Is Linus getting old?? by xtracto · · Score: 0, Troll

    First the Bitkeeper Tridgell accusations, and now this comments with a flavor of "no, it can not be better"... I guess Mr. Trovalds is entering the age where the ideas and innovation are not emerging, sad for this but, I guess we will start to see these kind of comments and actions from the Linux founder...

    --
    Ubuntu is an African word meaning 'I can't configure Debian'
  18. Paper author just wants attention. by tezza · · Score: 3, Informative
    "even if all the cryptographers in the world are standing against him.""

    All said cyrptographers should buy a non hyperthreaded cpu, or turn it off.

    I mean if you use GPG on most machines, it will issue you a warning about Insecure Memory. That is someone could potentially harvest data from disused pages in memory.
    These cryptographers would use a secure memory system. I'm happy hoping that MI6 isn't running a remote memory exploit on my box.

    --
    [% slash_sig_val.text %]
    1. Re:Paper author just wants attention. by Anonymous Coward · · Score: 2, Informative

      The insecure memory warning is because GPG doesn't have enough privileges to allocate memory securely. It needs to be suid to work properly. It has nothing to do with a special type of memory for your computer.

    2. Re:Paper author just wants attention. by tezza · · Score: 1
      1. What if your admin doesn't allow SUID GPG on that machine?
      2. What if your kernel doen't support secure memory.?? Say an earlier kernel.

      The crypto-fascists [always wanted an excuse to use that Red Dwarf phrase] would know to await an admin or kernel that did.

      --
      [% slash_sig_val.text %]
    3. Re:Paper author just wants attention. by Anonymous Coward · · Score: 1, Informative

      Bullshit. All the suids in the world couldn't make your program be able to mlock(), which is what gpg needs, in order to not show that "insecure memory" warning. Linux controls this via an rlimit, each user is allowed, by default (overridable, of course), to mlock up to 32kb of memory, thus allowing gpg to work "securely". The security is that those pages of memory will never be paged out, so they can't be retrieved from swap, otherwise anyone with enough privileges can read them from memory, as long as the process is pinning them.

    4. Re:Paper author just wants attention. by bogado · · Score: 2, Informative

      As far as know, insecure memory is worst than that. insecure memory can be paged to the disk, and stay there for a very long time.

      So even if you did not have any spyware running when you encrypted your secret files on where is the key to satellite that could melt the poles and flood all coastal cities, you would still be in trouble when 007 gets your laptop and searches throught your swap partition and find a suitable random looking bytes that luckily can decrypt everything, once more the free world is saved by Bond, James Bond....

      --
      []'s Victor Bogado da Silva Lins

      ^[:wq

    5. Re:Paper author just wants attention. by cr4p · · Score: 1
      2. What if your kernel doesn't support secure memory? Say an earlier kernel.

      Turn off swap? Assuming that the insecure memory message relates to it not being able prevent what it stores in memory from being paged out to disk by the O/S.

    6. Re:Paper author just wants attention. by rastos1 · · Score: 1
      Well, the message goes away when I put suid bit on gpg executable - which is not there in default installation. The man page for mlock() suggests that this is due

      Only root processes are allowed to lock pages.

      otherwise you get EPERM. It is true that the amount memory that can be locked can be restricted by rlimit. On my machine (Slackware) this is set to 'unlimited'.

  19. Not Accurate by mfh · · Score: 1

    I was getting a buzz from all those buzz words....

    I'd like to address this directly because I find it funny that AC would suggest open source was anything but a multidimensional methodology. Clearly you have no understanding of the subject matter, buzz words or not.

    --
    The dangers of knowledge trigger emotional distress in human beings.
    1. Re:Not Accurate by smittyoneeach · · Score: 1

      I like the phrase: "I feel your research into the subject may be incomplete".

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    2. Re:Not Accurate by mfh · · Score: 1

      I like the phrase: "I feel your research into the subject may be incomplete".

      I'm willing to agree with that statement.

      I get miffed when people cry "Buzzwords!" when there *is* meaning in a statement.

      Buzzwords are peppered to marketing sheets when there is really no meaning or when there is no ability to substantiate a positive spin to an arguement. Like Dilbert type stuff.

      But then there are statements which actually have substance... and sometimes a cigar is really a cigar.

      --
      The dangers of knowledge trigger emotional distress in human beings.
  20. This isn't just about stealing crypto keys. by bani · · Score: 1

    By being able to reasonably guess what another program is doing, you can design attacks around it. You dont have to target stuff as specific as crypto keys.

    Stuff like timing attacks. A timing attack that might have been difficult or impossible before, may be possible or trivial now.

    No crypto involved.

  21. welcome to open source! by Lord+Bitman · · Score: 1

    Linus doesnt actually sit there writing the entire kernel. It is impossible to have a "dictator" in an open source program. If Linus doesnt get it, someone else who gets it can fix it and it will be fixed.

    --
    -- 'The' Lord and Master Bitman On High, Master Of All
    1. Re:welcome to open source! by Anonymous Coward · · Score: 0

      Actually, he does. All those other 'developers' out there are only to lend plausibility to protect his cover, lest the military snatch him to reveal what matter his mind is really made of.

  22. In the vanilla tree yes by gilesjuk · · Score: 1

    Yes Linus decides what goes in the vanilla Linux tree, but how many distros use that? they all patch their kernels with enhancements.

    1. Re:In the vanilla tree yes by caluml · · Score: 1

      But they patch against the vanilla kernel.
      If the vanilla kernel gets a patch applied, everyone else has to change their patches to accomodate the changes (assuming the patches are in similar areas of the kernel).

  23. This sort of attitude is pretty common by Raleel · · Score: 5, Insightful

    It's along the same lines of the "if all you got is a hammer" problem. If you've spent a lot of time working on something, it's obviously important to you. That doesn't mean that it's important to everyone else. This may well be a significant flaw from the crytographer's perspective, but then again, they study crypto a lot and have a vested interest in it.

    As someone pointed out, yay for linux being free. As one or two above pointed out, someone who does care with the knowledge will write a patch. It'll get implemented as an option in the code, and if shown to be unobtrusive enough, may even get turned on by default.

    --
    -- Who is the bigger fool? The fool or the fool who follows him? --
    1. Re:This sort of attitude is pretty common by julesh · · Score: 3, Interesting

      If you've spent a lot of time working on something, it's obviously important to you. That doesn't mean that it's important to everyone else.

      Well, no, however it is important to many people.

      I, like many others here, run an e-commerce web site on Linux servers. In my case, my servers are virtual servers shared with other users who I do not have any knowledge of at all.

      If the server used HT, it would be possible for one of those other users to run an exploit on the server to crack my e-commerce site's private key. Fortunately it doesn't, but my ISP could upgrade at any time...

      Hence, this is an issue that effects me and my customers, and I seriously hope that a fix finds itself into either apache mod_ssl or the mainline Linux kernel PDQ.

    2. Re:This sort of attitude is pretty common by Otto · · Score: 5, Insightful

      Hence, this is an issue that effects me and my customers, and I seriously hope that a fix finds itself into either apache mod_ssl or the mainline Linux kernel PDQ.

      That's really what's up for debate here. Whether the patch should be in the kernel-land or in the code user-space (mod_ssl, for your example).

      The only realistic patch you could do in kernel-land is to simply disable HyperThreading. This works, but seems like a poor way to go. Any other form of patch in kernel-land just makes the attack harder and thus doesn't really work or it degrades performance way too much to be practical.

      But fixing it in userspace is somewhat easier to do, albeit you'd have to fix *every* user-space program that's susceptible to this sort of thing.

      Let's talk about the problem in general terms. When a program is doing some kind of computational stuff on something you want to remain secret, then it has to make some assumptions. Assumptions like the hardware is secure, or that it's not running on a virtual machine that's recording everything it does.. That sort of thing. You can come up with all kinds of ways to crack it like an egg if you work outside the box a bit and have total control of the machine it runs on.

      This problem is attacking one of those assumptions, namely that another process can't time the secret computations accurately enough to perform a timing attack. With HT, you have two things running on the same core, and so it is somewhat easier to do this sort of attack.

      So userspace programs that do secure computations have had one of their assumptions broken by HT. To remedy it, they need to rethink their assumptions. They need to or ensure that they perform equal timings regardless of the computations being done and so on. This is not particularly simple, but it's probably not particularly hard either.

      Of course, the attack is still largely theoretical. All it's been shown is that it's "possible", not that it's "easy" or even that it is indeed "doable". For one thing, without having some kind of clue as to the algorithim involved or some idea of what to look for, all you get are a bunch of timings. You still need to do some things to trigger it at the right time and in the right way as to be able to derive information from this channel.

      But crypto guys are paranoid like nobody else, and so they're naturally worried about this sort of thing. Mainly it's worrying to them because it's not a mathematical attack, which they're more used to. Modern crypto works based on theory and algorithims and such, and the idea that the algorithim being correct (for a given value of "correct") isn't enough to protect the security of the data is extremely worrying. A real world implementation of these algorithims now has to take some more real world facts into account, and this bothers them, of course.

      Linus is basically right here. The kernel is simply the wrong place to fix this. It doesn't ensure that processes cannot spy on other processes via subchannels like this, nor should it. If you're paranoid enough to think this is a real thing to guard against, then your secure code should take it into account. Existing code doesn't do that, and would need to be changed *even* if the kernel was patched. Because how do you know that your kernel has been patched? How do you know that you're not running on an HT processor? You can't know for sure, so you simply assume you are and take steps to make timing attacks fail. Because if you don't, you can't reasonably say that you've attempted to secure the code in this way.

      --
      - Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
    3. Re:This sort of attitude is pretty common by poot_rootbeer · · Score: 2, Insightful

      If the server used HT, it would be possible for one of those other users to run an exploit on the server to crack my e-commerce site's private key.

      It may be possible, yes. But plausible?

      this is an issue that effects me and my customers

      It MAY affect you and your customers at some later time, but right now it doesn't.

      If you're THAT concerned about this issue, I assume you're going to call up your ISP and transition your site onto dedicated machines? Isn't it worth the extra cost to be assured that some other customer of the shared server environment can't compromise your crypto key?

    4. Re:This sort of attitude is pretty common by Anonymous Coward · · Score: 1, Insightful

      Except the attack would have to be executed by someone who has access to the system... and if they are on the system already, why would they waste time trying to hack your key using this obtuse method when they could just hack your files and db much easier... quite simply this vulnerability is highly overrated, as an attacker would have to be doing it just for the academics, ignoring other more convenient and already exploitable attack vectors.

    5. Re:This sort of attitude is pretty common by that+_evil+_gleek · · Score: 1

      Kinda of dismissive, aren't you.
      >If the server used HT, it would be possible for one of those other users to run an exploit on the server to crack my e->commerce site's private key.
      >It may be possible, yes. But plausible?
      Consider that if anyone of them is compromised, his site can be cracked his site from there, he's now only as secure as his neighbors.

      >It MAY affect you and your customers at some later time, but right now it doesn't.
      When it does, it will be too late. Kinda of like saying, riding in a car with a drunk driver, imay affect you at some later time.
      Because, sure, up until the point he crosses the median and crashes head on into on comming traffic, you're not currently affected.

      >assume you're going to call up your ISP and transition your site onto dedicated machines? Isn't it worth the extra cost to >be assured that some other customer of the shared server environment can't compromise your crypto key?
      Maybe he isn't a trust fund baby, and has cost concerns.. maybe that's why he's on linux, and not solaris.

    6. Re:This sort of attitude is pretty common by benjamindees · · Score: 1

      I assume you're going to call up your ISP and transition your site onto dedicated machines? Isn't it worth the extra cost to be assured that some other customer of the shared server environment can't compromise your crypto key?

      It may very well be. If you're running a $5,000/day site, then yeah you can't afford not to. At the very least, the cost of requesting that your ISP disable HT is very much worthwhile.

      --
      "I assumed blithely that there were no elves out there in the darkness"
    7. Re:This sort of attitude is pretty common by Anonymous Coward · · Score: 0

      The only realistic patch you could do in kernel-land is to simply disable HyperThreading. This works, but seems like a poor way to go.

      Why?

      I have not see any real-world benefits to having HyperThreading enabled. If its insecure, and your system needs security, disable it. Simple.

    8. Re:This sort of attitude is pretty common by acidrain · · Score: 1

      You are doing e-commerce on a box shared with other users you don't know anything about?!? Local root exploits are an order of magnitude more common than remote ones. If security is as important to you as you claim, you should shell out the extra clams.

      --
      -- http://thegirlorthecar.com funny dating game for guys
    9. Re:This sort of attitude is pretty common by wirelessbuzzers · · Score: 1

      But crypto guys are paranoid like nobody else, and so they're naturally worried about this sort of thing. Mainly it's worrying to them because it's not a mathematical attack, which they're more used to. Modern crypto works based on theory and algorithims and such, and the idea that the algorithim being correct (for a given value of "correct") isn't enough to protect the security of the data is extremely worrying. A real world implementation of these algorithims now has to take some more real world facts into account, and this bothers them, of course.

      They should be paranoid like nobody else. Crypto tends to be astonishingly brittle, see AirSnort and the recent IPSEC attacks. Like the timing attacks against SSH and the power analysis attacks against smart cards, this attack is difficult to carry out, but compromises everything (enough to finish the attack with brute force or partial-key methods) if it works. Then your server is hacked and it's game over.

      --
      I hereby place the above post in the public domain.
    10. Re:This sort of attitude is pretty common by Anonymous Coward · · Score: 0

      I, like many others here, run an e-commerce web site on Linux servers. In my case, my servers are virtual servers shared with other users who I do not have any knowledge of at all.

      And *all* local root exploits are already patched in Linux, right?

    11. Re:This sort of attitude is pretty common by Jack9 · · Score: 1

      I agree that this is no Linus', nay anyone's place to patch for. If your hardware configuration includes a crytography vulnerability because of a lack of consideration in design, it is not a software developer's place to make the software take this into account and work around it. Maybe it's within their ability; but at what cost? That's their decision and Linus doesn't see the emergency for a theoretical vulnerability that is dependent on a crappy marketing scheme (HT). Yes, you should make a workaround if it's a valid vulnerability and enough ppl use something as primitive as HT (check). Long term...Who cares?

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    12. Re:This sort of attitude is pretty common by julesh · · Score: 1

      If you're THAT concerned about this issue, I assume you're going to call up your ISP and transition your site onto dedicated machines?

      My site is low volume. A dedicated machine with similar performance and uptime guarantees would cost somewhere in the region of £200 extra per month, which is a very sizeable chunk of its profits. If I had to carry this cost, I would abandon the business as not worth running.

    13. Re:This sort of attitude is pretty common by julesh · · Score: 1

      And *all* local root exploits are already patched in Linux, right?

      I'll admit I don't keep as up-to-date on such matters as I should, but to get access to my data on the machine in question a user would have to hack root and break out of a chroot environment while working in a highly restricted environment with no daemon processes running as root, root logins disabled except for console, and a very restricted set of suid-root binaries installed. Also the kernel in question has a patch applied intended to provide additional isolation between processes associated with different servers, which may make this even more tricky.

      I suspect hacking root on this system is very difficult.

  24. And I thought lots of people wrote Linux by rescendent · · Score: 1

    Now that I know Linus wrote all of it and fixes all of it I'm well impressed!

  25. Look, this is like the Java argument by deanj · · Score: 0, Flamebait

    The solution for this is just like the "Java should be open source" argument that people always float. "If Java were open source, we could do a fork and fix what's wrong with it".

    If you don't like what's going on with the project, do a fork of it, and fix it.

    At least, that's how the argument goes when people are talking about Java. Since this is the Linux kernel, people seem to be a bit unwilling to do the same thing.

    It's long since time that there be splits in the kernel. This whole thing with SMP is going to turn around and bite Linux if something isn't done about it soon. Other operating systems are prepared (or are preparing), why should Linux be so far behind?

    And don't make the argument that Linux isn't really that far behind. It is. If Linus had started the work several years ago, it wouldn't be as big of a problem. The trouble is Linus doesn't want it mucking up the kernel, or making it harder for other people to code for it.

    Well, doing the work to get multiple processes in kernel context (not just two or three, I mean a LOT of processes) IS hard, and it will be difficult for people to program under the new kernel rules.

    It doesn't mean the results aren't worth it though.

    1. Re:Look, this is like the Java argument by Anonymous Coward · · Score: 0

      If you don't like what's going on with the project, do a fork of it, and fix it.

      I am so sick of this argument put forth by open source proponents. Out of all the people in the world, there are very few that can 1) program, 2) program well, 3) spend time understaing a program the size of the linux kernel, 4) and make the necessary changes without destabilizing the kernel. "If it's broken then you fix it or fork it" is a stupid argument and to be frank, such utterances don't advance the cause of open source but hinders it.

      The reality is the people who work on open source projects, paid or volunteer, have thrust themselves into a service role whether they like it or not. They are the the ones who can realistically effect change. The rest of us are beholden to the developers who work on open source projects for improvements.

      I have deep respect and admiration for the people who work on open source projects and I have greatly benefitted from thier work since oh, 1991 or so. But to think that "people" could simply fork a project at will is hubris.

    2. Re:Look, this is like the Java argument by Anonymous Coward · · Score: 0

      people who volunteer to work on open source do so because they enjoy it. then they have to put up with ignornant leeches like you who think that they now owe it to you and the rest of the world to do whatever you want, when you want it, for free. they are not in a service role, until or unless you pay them to do that role, which is the option you have to take if you don't have the skill to fork a project yourself.

      this leeching is having an effect on a number of foss developers who are flat out sick of it, the lack of respect from people demanding things, thinking that just because a developer has decided to release software as open source that they are now owned by the people who choose to use their software.

      you clearly have no respect or admiration, otherwise you wouldn't be claiming the people are now in a service role, or more accurately a slave role to people who want their feature/fix, and they want it now. you want changes/fixes? do it yourself, or pay someone to do it for you, otherwise stfu.

    3. Re:Look, this is like the Java argument by Anonymous Coward · · Score: 0

      Grow up. I have developed software for free use during my bbs days which was long before I heard of open source and the reality I had to come to grips with is that once you put something out there, you will probably be asked to maintain it. That means when you put it out there, you enter into a "service" position. I don't really care if you like that or not, but the reality is what it is. If you as a developer don't like that, well, then don't volunteer for open source.

      'nuf said.

    4. Re:Look, this is like the Java argument by deanj · · Score: 1

      Whoa there cowboy, we're on the same page here at least partially.

      The "do a fork of it, and fix it" is the argument people use whenever the whole Java thing comes up. My posting was to them, saying if they're bitching about the kernel, then they should put up or shut up, because it's exactly the same argument they use when Java is brought up. They can't go using that argument about one, and not the other.

      As for the kernel, there I think you're wrong. There are a helluva lot more people that understand kernel programming than you presume there are. There have been many patches submitted against it that were rejected because Linus didn't want 'em in there. Some were likely bad additions and should have been rejected; others weren't and should have been included. THAT is a BIG problem.

      As I said, other OSes are getting ahead in the multiprocessor game, and Linus didn't effect change when it needed to happen... several years ago. Now it's going a really big PITA to do it. It's quite likely that some company that's doing that sort of work is going to end up surplanting Linus' kernel when multi-processor systems become more commonplace and people start waking up to the fact that the stock kernel just doesn't perform as well as it should.

      What people are failing to realize is that Linus has a stranglehold on what's going on in the kernel, and they're just fat dumb and happy about it. Sun does the same thing with Java, and it's "OMFG Sun suxxorz" from the same people.

  26. Another Fairy Tale... by ausoleil · · Score: 4, Insightful
    In layman's terms, this debate is:

    Scene: A wispy cloud scuds across the sunny blue sky. Not much happening, and the cloud is hardly even black.

    Chicken Little: The sky is falling! The Sky is falling!

    The Penguin DictatorNo, not really. It might fall, but it's very, very unlikely. So calm down!

    Chicken Little: I strongly disagree. The sky is falling! And because you do not understand the problem we're all going to die!

    The Penguin Dictator:Listen here. It's almost certainly not going to fall, and I need to worry about real problems!

    Chicken Little: (Runs screaming to the nearest coffeehouse with free wireless, where he types incessently:) The sky is falling! The Sky is falling! Tell Slashdot! Tell Tom's Hardware! Tell Cnet! Tell Linux Business News!

    The Penguin Dictator: Sigh. (And then he gets back to work. He looks up at the audience) They just do not get it, do they?

    The Windows Dark Lord: (Rubs hands together) Excellent, MOST excellent. (Yelling) Bring me my marketing minion!

    Marketing Minion: (being drug in by a bald guy yelling at him) Yes, O Master!?

    The Windows Dark Lord:Tell all the peasants that the sky is raining huge chunks of fire and dung! Tell everyone, tell them now! And have our independent consultants work on this day and night, night and day! Make sure that they independently tell everyone that they can easily avoid falminf chunks of sky dung if they stand behind our Windows! And RAISE the price!

    Some Guy At Some House In Some City Somewhere: "Wow, that was easy. Let me send this up to the Penguin Dictator. No sky ever fell, and that cloud is easily blown away. Nothing happening here, move along."

    The Penguin Dictator "Well that was easy. Include this patch in the next day's weather update!" Marketing Minion: Press Release!!! Millions killed by falling flaming sky chunks of burning dung with brain eating worms who eat children!!! Run for your lives!!!!

    Laura Didio, munching a do-nut"If you would hide behind Windows, the sky would stop falling! Your children would be safer and the world a better place." (looks at stoick ticker, says to self) 'Excellent. MOST excellent. Bring me a donut!'

    The Penguin Dictator "Sigh. Why didn't I just keep Sky 0.7a for myself? Why the bother, wy the bother?"

    EPILOGUE: No one was ever hurt by the piece of sky that never fell, and Chicken Little kept looking upward for another cloud to rant about.

    The End.

    1. Re:Another Fairy Tale... by Anonymous Coward · · Score: 0

      No one was ever hurt by the piece of sky that never fell, and Chicken Little kept looking upward for another cloud to rant about...

      ...'till 8:00 PM, when he left to have a drink. 'Cos it was too dark to see anyway and Chicken Little was disgusted of all the flamewar as well.
      Briefly, he just goes and strikes himself down with some cheapo-sort-o'-selfmade-alco, like aaall unemployed in the world do every evening.
      An' as Chicken Little dissapeared, ...

      ( exits left)

      ...Mr. 3li4h Ewile H4cks0r silently drops in...

      ( enters from right portal, grins towards the public)

      ...and starts to slash and bash the tiny cloud with his looooooong stick. Tiny cloud apprently gets fscked up and grows and grows and grows and darkens....
      Sudenlly it falls from the sky and sqeezes the hell of everyone's ass (except for the special sort of red deamons with strange horns that were clever enough to hide under whatever they could find).
      MORALE ?

    2. Re:Another Fairy Tale... by Anonymous Coward · · Score: 0

      MORALE?

      Relatively low on your end I would say.

    3. Re:Another Fairy Tale... by Drakonian · · Score: 3, Insightful
      There are serious problems with your endearing allegory.

      1. Microsoft is just as potentially vulnerable as Linux. Their dirty laundry just doesn't get aired in public.

      2. The fix is non-trivial and non-obvious. It's not a simple buffer overflow. Any patches are likely to have serious repercussions on kernel performance. e.g. disabled HT, ensure only two threads of the same U.I.D. are scheduled on the same processor, flush cache at every context switch, etc. It looks that Linus is unwilling to accept them unless this vulnerability moves more from the theoretical to proven.

      --
      Random is the New Order.
    4. Re:Another Fairy Tale... by Anonymous Coward · · Score: 0

      I don't get it, WHY do you people insist it's a non-issue just because Linus says so? Linus has a well-earned place in computer history but he's still just an engineer - Not a demigod. He's most certainly wrong from time to time just like everyone else. For once, just listen to what the little guy (Colin) has to say aight'?.

      My point of view:- The sky didn't fall this mornin' but there sure are a couple of dark clowds in the sky.

    5. Re:Another Fairy Tale... by Mornelithe · · Score: 1

      Here are some good threads to read:

      http://it.slashdot.org/comments.pl?sid=149843&cid= 12565806

      http://it.slashdot.org/comments.pl?sid=149843&cid= 12565741

      Try reading and understanding those posts (and some of the follow-ups). Then, if you still think this is a huge problem, ask yourself why you're using a general-purpose computer with a general-purpose operating system to do your crypto, when there's probably several even more serious vulnerabilities that affect them as a matter of course.

      --

      I've come for the woman, and your head.

  27. Orchestra Director by Tei · · Score: 1

    it is at times like this that Linux really suffers from having a single dictator in charge; when Linus doesn't understand a problem, he won't fix it, even if all the cryptographers in the world are standing against him.

    Having only one point of fracture, only one right or wrong director of orchestra its not as bad as sound. Both music orchestra and army use a system where one leader and others follow. This help as you receive only one voice and clear. Even if that guidance fail, the "commander" can change the route. So its not that bad, Its work for some human areas.

    --

    -Woof woof woof!

  28. Great by Mensa+Babe · · Score: 2, Insightful

    "it doesn't seem all that worrying in real life."

    Yeah, just like a mouse driver having full access to kernel security structures and raw disk partitions, it doesn't seem all that worrying at all (except when your entire system crashes thanks to a buggy sound driver, or you get rooted, or...).

    Not fixing this design mistake while laughing at respected experts in the field reminds me something. I was hoping that we as a community might have became a little bit more mature during the last decade, but I seem to have been naïve again.

    --
    Karma: Positive (probably because of superiour intellect)
    1. Re:Great by Slashcrap · · Score: 3, Insightful

      Not fixing this design mistake while laughing at respected experts in the field reminds me something. I was hoping that we as a community might have became a little bit more mature during the last decade, but I seem to have been naïve again.

      I don't think Linus was "laughing at respected security experts" at all. For one thing this guy isn't a respected security expert - in my experience they usually have jobs. Secondly he wasn't laughing - his point was that the best way to fix the issue was to patch the userland crypto programs to be more immune to timing attacks e.g by making them read a set amount of cache lines each time. Anything that makes the crypto software more immune to these things seems good to me.

      Also, how do you patch the kernel to stop this attack? The FreeBSD patch just disables hyperthreading.

      I assume you can answer this since you sound like an expert. I also assume that you bothered to read the actual e-mails and not just the retarded Slashdot blurb.

      But now I'm being naive aren't I?

    2. Re:Great by Anonymous Coward · · Score: 3, Insightful

      He ran the bloddy "exploit" well over 1000 time to retrieve 30% of an RSA key.

      Stop a mo and take a deep breath.

      Take a look at your (heavily patched I'm sure) machine. If you had an unsupervised 24 hours with that box and an unprivileged account how many other actually useful exploits could you run for key retrieval.

      I can think of about 5 methods right now that are much more likely to yield results within Linux. Even on a very up-to-date system with a decent admin.

      Pfft.

      - Storm in a teacup

    3. Re:Great by Anonymous Coward · · Score: 0

      > ...you sound like an expert.

      Yes, and whoever talks loudest in a meating is correct.

    4. Re:Great by Anonymous Coward · · Score: 0

      Dude, you have so totally *not* understood what this is about.

      And btw, it's *old*. The same problem was discussed ad nauseum during early SMP days...

    5. Re:Great by cperciva · · Score: 4, Informative

      He ran the bloddy "exploit" well over 1000 time to retrieve 30% of an RSA key.

      Did you read a paper other than the one I read? I ran the exploit once, taking under one second, and I retrieved enough information to factor the RSA modulus N.

    6. Re:Great by m50d · · Score: 1

      I'm going to call you on that one. What are the 5 methods?

      --
      I am trolling
    7. Re:Great by Drakonian · · Score: 1
      For one thing this guy isn't a respected security expert - in my experience they usually have jobs

      Another nice ad hominem. The guy is completing his frickin DPhil at Oxford, and is 23 years old. Maybe he's a bit too busy to get a job right now.

      --
      Random is the New Order.
    8. Re:Great by Drakonian · · Score: 1
      Read the paper. It only needs to run once. Running more times could potentially give you more info, so it's a tradeoff of how detectable you are.

      You feel that 1000 times is a lot? Space them out every 3 seconds so the processor load is nice and low and it wouldn't even take an hour.

      --
      Random is the New Order.
    9. Re:Great by Creepy+Crawler · · Score: 1

      He cant tell YOU that. Youre not an uber-hacker like he is!

      Yeah, he's blowing shit up our collective tailpipes.

      --
  29. wow, a paper, no kidding by l3v1 · · Score: 2, Funny

    Colin Percival, who published a recent paper on the vulnerability,

    Well, it's obvious that he has to be right then, since he has published a paper on the topic, right ? Right ? Nobody else can "understand a problem", only him, since he's got a paper on it. A real paper.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
    1. Re:wow, a paper, no kidding by Anonymous Coward · · Score: 0

      Yep, that's about it. Everyone else is too busy making inane comments like yourself, so they have no time to do a good body of work and formal writeup.

  30. All the cryptographers in the world... by bmf033069 · · Score: 2, Funny

    "even if all the cryptographers in the world are standing against him"

    Who would understand what they are saying anyway?

  31. Re:This...attitude is pretty common - Thankfully! by toby · · Score: 1
    they study crypto a lot and have a vested interest in it

    From this it should follow that we listen to them, not that we dismiss what they say!

    I'm glad that the construction engineers who design the bridges we ride over "study [bridges] a lot", and aviation engineers who designed the plane I am about to ride on "study [planes] a lot" and you bet they "have a vested interest" in safety.

    Praise the experts who "study a lot", for without them, we'd all be dead. :-)

    --
    you had me at #!
  32. The man by Rinisari · · Score: 2, Insightful

    Linus seems to be intelligent enough to understand when to undertake certain tasks. Up to now, no one knew about the vulnerability. There hasn't been solid proof of exploit released in virus form yet. All this is, as of yet, is FUD. Linus doesn't want to reshape his priorities because of newfound FUD, and he's very smart in doing this.

    I'm sure that if an exploit is found, someone will have a patch ready for the next kernel revision - that's the beauty and advantage of Linux.

    1. Re:The man by Anonymous Coward · · Score: 0

      FUD (n) A word used by idiots on slashdot to describ something they don't want to hear.

  33. Perhaps crypto is not your biggest problem by tezza · · Score: 1

    If you've got hackers coding exploits and targetting threads on your machine... perhaps Hyperthreading isn't your biggest problem.

    --
    [% slash_sig_val.text %]
    1. Re:Perhaps crypto is not your biggest problem by Drakonian · · Score: 1

      Or if they are SSHing into your server to.... check their email, let's say?

      --
      Random is the New Order.
  34. Re:Slashdotters defending Linus... by Anonymous Coward · · Score: 0

    oh! I can't use this hammer because other people like it too much!!

    They tell me how great it is and they really like it, so I can not use it!

  35. Dictator or useless board? by aliens · · Score: 1

    I might have my facts wrong but having a dictator can sometimes get useful things done when a voting board cannot. (Xfree)

    And then even with a board people bitch about them too.

    So how bout we just have a source tree where everyone and anyone can write to the tree and see where it takes us?

    Actually that could be fun. Make it so.

    --
    -- taking over the world, we are.
    1. Re:Dictator or useless board? by John+Hasler · · Score: 1

      > I might have my facts wrong but having a
      > dictator can sometimes get useful things done
      > when a voting board cannot.

      Democracy and dictatorship are not the only choices.

      > So how bout we just have a source tree where
      > everyone and anyone can write to the tree and
      > see where it takes us?

      We already do. I have a kernel source tree right here on my workstation and I can write to it any time I want. You can have one too.
      Actually that could be fun. Make it so.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    2. Re:Dictator or useless board? by aliens · · Score: 1

      What I meant was to have one hosted, crazykernel.com and open up CVS write access to anonymous. :)

      --
      -- taking over the world, we are.
  36. Re:Slashdotters defending Linus... by Anonymous Coward · · Score: 1, Insightful

    How silly to make an OS decision based on those two reasons you wrote....use the right tool for the job, or you'll be (duh!) using the wrong tool. Mine are FreeBSD for 'net gateway, Linux for general-purpose work & Windows for gaming - I pay no attention to coolness factor (or the revese-snobbery counterpart) and go on technical strengths...

  37. If security matters, don't do crypto in Linux by swillden · · Score: 5, Insightful

    ... or in any other general-purpose operating system on a general-purpose computer. PCs are fundamentally insecure. There are a dozen ways to spy on cryptographic operations done in them, ranging from trojans, to hardware side-channel attacks, and dozens more to get copies of keys that they store. This is just one particular attack that may permit an attacker who can't get a trojan running with sufficient privileges to spy on operations directly to obtain some key bits. But if the attacker can't do that, there are lots of other ways to get the keys. General-purpose computers are simply not trustworthy.

    If security is important, you do your crypto in a secure crypto module, like the FIPS 140-2 Level 4 IBM 4758 or the Level 3 Luna SA. Or, you use a general-purpose computer with special-purpose, very simple software and then provide strict physical access control to the machine and very limited network access -- often through a serial link using a custom protocol rather than via a real network. Or you could theoretically use a general-purpose machine with a TCPA chip with a regular, general-purpose operating system that has been modified to make use of the TCPA chip and with keys tightly bound to a well-defined system software configuration. But only if you have good physical security. In many situations it's still better to use a FIPS 140-2 Level 3 or Level 4 device.

    IMO, the existence of weaknesses like this in Linux, and the fact that they're widely known, is a *good* thing, because it helps convince people not to trust that which is inherently untrustworthy. We need more publicity of similar problems in Windows (and there are lots of them).

    --
    Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    1. Re:If security matters, don't do crypto in Linux by julesh · · Score: 2, Insightful

      That's good advice, but many people cannot afford to follow it. Specialist crypto hardware is too expensive for most users, and keeping a PC in a physically secure environment can be difficult and contradictory with other important considerations. There are many thousands of small internet-based businesses who simply cannot afford this level of protection, and must rely on "secure" servers rented from virtual server farms. Fixing problems like this quickly after they are discovered is important to help protect these people.

    2. Re:If security matters, don't do crypto in Linux by ChrisJones · · Score: 1

      typical users do not need to fear this attack vector either.
      the steps involved are so convoluted and specific that you would never bother to use them.
      People will get in through a simple sploit as always and then use a local root sploit as always. getting there is easier than this attack and once you are there you can just read the rsa key file, or read it from another processes instead of trying to guess what it is from cache behaviours.

      --
      Chris "Ng" Jones
      cmsj@tenshu.net
      www.tenshu.net
    3. Re:If security matters, don't do crypto in Linux by julesh · · Score: 1

      People will get in through a simple sploit as always and then use a local root sploit as always. getting there is easier than this attack and once you are there you can just read the rsa key file, or read it from another processes instead of trying to guess what it is from cache behaviours.

      That depends on such an exploit being available. There isn't always a known way of achieving this in any given system. For instance, do you know any way on a stock Linux system (let's say kernel 2.4.29) of breaking out of a chroot environment? I don't know that it can't be done, but my suspicion is that it's probably quite hard.

      This exploit, also, is quite hard. But even exploits like this can be automated, and I don't find it too improbable that kits aimed at grabbing keys from specific pieces of software might start becoming available, do you? And once such kits are available, then the difficulty of the exploit is not going to put anyone off.

    4. Re:If security matters, don't do crypto in Linux by Creepy+Crawler · · Score: 1

      Breaking out of a CHRROT environment is plain easy IF you can get your mittens on root.

      Then, all you have to do is loopback-mount the real filesystem over my own chroot FS .When I did it, it was a real bear, but IT was doable.

      If I wanted to do something real tricky, I could have then accessed /proc/kmem and then played with memory structures, but Im not THAT good ;P

      --
    5. Re:If security matters, don't do crypto in Linux by John+Harrison · · Score: 1

      If you are doing anything important you can afford an HSM. If you can't afford an HSM to protect your keys, then your keys aren't worth much.

    6. Re:If security matters, don't do crypto in Linux by swillden · · Score: 3, Insightful

      Specialist crypto hardware is too expensive for most users

      If your secrets are worth enough that an attacker would go to the effort required to use this exploit... no, it is not too expensive. An IBM 4758 costs just over $1000 and provides an extremely high level of security.

      If you want to go really cheap, and don't need high performance, you can also use a $10 smart card with a $10 smart card reader. The result is less secure than with a 4758, or a Luna SA, or any of the other products on the market, in several ways, but it's much, much better than doing the crypto in main memory on a GP CPU.

      and keeping a PC in a physically secure environment can be difficult and contradictory with other important considerations.

      Again, if you need security you have to do what it takes to get security. If security requirements contradict other requirements, you have a problem to solve.

      At bottom, the point is that this is a sophisticated attack. There are much easier ways to dig keys out of a GP computer. If you need to defend against this attack, then you also need to defend against all of those, and defending against all of those requires physical security and use of secure crypto hardware. By the time you've closed all the other avenues of attack, you've closed this one, too.

      This problem is real, and it's a good idea to fix it, on principle. But it's not uncommon that real security holes are simply irrelevant because of other considerations.

      This is analogous to someone pointing out that my house is insecure because the attic vents are made of lightweight sheet metal. An attacker can use a ladder to climb up, use a crowbar to rip the vent off, climb into my attic, find the access panel and drop down into my house. That's all very true. However, compared to all of the *other* ways there are to break into my house, it's simply irrelevant. My house is simply not an appropriate place to store the Hope diamond, and replacing the attic vents with heavy steel ones, or otherwise securing access to the attic, isn't going to change that.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    7. Re:If security matters, don't do crypto in Linux by Anonymous Coward · · Score: 0

      Not everyone has the same cash and technical staff as a banking institution. Should we all just give up crypto? Maybe we should just give up on Linux, since it's already had too many kernel exploits for one year this year.

      http://www.frsirt.com/exploits/

      05.17.2005 : Linux Kernel 2.6.x "ioctl_by_bdev()" Local Denial of Service Exploit
      05.11.2005 : Linux Kernel "binfmt_elf" Core Dump Local Buffer Overflow Exploit
      04.09.2005 : Linux kernel 2.4/2.6 Bluetooth Socket Creation Local Root Exploit
      04.04.2005 : Linux Kernel "AIO" Local Denial of Service Exploit (PPC64 and IA64 Arch.)
      03.30.2005 : Linux Kernel 2.6.x Local Denial of Service Proof of Concept Exploit
      03.22.2005 : Linux Kernel 2.6.11 "sys_epoll_wait" Local integer overflow Exploit
      03.22.2005 : Linux Kernel 2.4.x / 2.6.x uselib() Local Privilege Escalation Exploit
      01.17.2005 : Linux kernel i386 SMP race condition Local Root Exploit
      01.13.2005 : Linux kernel i386 SMP race condition Proof of Concept Exploit

      On the same page, you look for BSD systems (Free/Open/Net/Dragonfly) and see how many kernel exploits you find this beginning of the year.
      Ooops. I guess we're going to have to trust the FreeBSD guy on this one.

    8. Re:If security matters, don't do crypto in Linux by Ih8sG8s · · Score: 1

      So you're saying that the exploit should be fixed, but is mostly not an issue because anyone who would really need to perceive this as a tangible threat would not be using comodity PCs and OSs for their encryption?

      So this only solidifies your belief that PCs and comodity OSs (IE Linux, UNIX, Windows and the like) are entirely relegated to the realm of PGP type security, if you get my meaning.

      I'll accept that. This being the case though, I would expect that from your perspective, your electronic security is only as good as the iron doors which protect physical access to any electornic device.

      Within the scope of this story, this angle is a nice sidebar, but not very on topic. I don't disagree with your statements, I just wonder what relevence they have on this story other than to claim that the question is moot.

    9. Re:If security matters, don't do crypto in Linux by swillden · · Score: 1

      Not everyone has the same cash and technical staff as a banking institution.

      True, and not everyone has secrets that are worth millions, or even billions. Banks do.

      Anyone who has secrets that are worth lots of money but doesn't have the money to secure them needs to rethink their business model.

      Should we all just give up crypto?

      Absolutely not. We should all use crypto every day for everything. Web sites, e-mail, VOIP, etc., it should all be cryptographically protected and authenticated. That way, in order for someone to listen in on you and your buddy chatting about what time to meet for lunch, they have to perform a moderately sophisticated attack. Or at least run a moderately sophisticated script.

      However, we should recognize that the level of security obtained by using crypto on general-purpose PCs is low against a determined attacker who is specifically targetting us. That means that although it's a good idea to fix holes like this one, on principle, there's no reason to get too worked up about them, because if an attacker wants to get us badly enough to use this sort of attack, he'll have plenty of other options after this one is closed off.

      Maybe we should just give up on Linux, since it's already had too many kernel exploits for one year this year.

      Irrelevant. Even if Linux had zero kernel exploits this year, it would still not be a good idea to use Linux on GP computers for crypto that matters very much to anyone. Not without a lot of other precautions.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    10. Re:If security matters, don't do crypto in Linux by swillden · · Score: 1

      So this only solidifies your belief that PCs and comodity OSs (IE Linux, UNIX, Windows and the like) are entirely relegated to the realm of PGP type security, if you get my meaning.

      Well, rather than saing it solidifies my belief, I'd say it is a useful demonstration to others who don't already get the point. But, yeah.

      This being the case though, I would expect that from your perspective, your electronic security is only as good as the iron doors which protect physical access to any electornic device.

      Not really. Crypto hardware like the devices I mentioned are designed to be pretty much impenetrable even if you have physical access to them. FIPS 140-2 level 3 devices are suppose to be resistant to "normal disassembly", meaning if you unscrew the case they commit suicide and erase all of their secrets in an irreversable way. Level 4 devices are supposed to be resistant to any physical attack. They incorporate sheets of sensors designed to detect any intrusion into the case, plus temperature and radiation sensors and will suicide if they believe they're being attacked. The company that did the penetration testing on IBM's 4758, for example, gave a bunch of bright people access to lots of equipment plus several million dollars and several months to try to get in. They failed. That's not to say it's impossible to break into such a device and extract the secrets, but it's darned hard.

      So those sorts of devices can actually be deployed in situations where physical security isn't so great, as long as some thought goes into the access control configuration and it is determined that a configuration exists that both allows the board to be used for its normal purposes and doesn't allow the board to be used maliciously by an attacker with control over its environment. It is not always the case that such a configuration exists, but sometimes it works out.

      Also, even when you do have big, strong, steel doors, armed guards, etc., there are always people who do have access, and so you often have to think about how to secure things from them... often the "them" in question is actually the designer and administrator of the security system!

      I don't disagree with your statements, I just wonder what relevence they have on this story other than to claim that the question is moot.

      None. The point is that the question is moot. This vulnerability simply isn't a big deal because where it matters, it's irrelevant for the reasons I've described and where it doesn't matter, it's irrelevant because it doesn't matter.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    11. Re:If security matters, don't do crypto in Linux by ChrisJones · · Score: 1

      I don't know about "breaking out" of a chroot, but 2.4.29 has local root vulnerabilities in it, e.g.:

      http://www.cve.mitre.org/cgi-bin/cvename.cgi?name= CAN-2005-1263

      Remote root vulnerabilities are rare because most things aren't running as root, but you probably have quite a wide footprint of daemon software running as a normal user, so there's a good chance there are vulnerabilities to be had there. Combine that with one of the regularly discovered local root exploits and you can do whatever you like.

      I'm not saying this isn't a hole and that it shouldn't be fixed, but I am saying that you would need to be really very paranoid about your security to be taking notice of the potential for stealing your RSA keys through complex cache mathematics :)

      --
      Chris "Ng" Jones
      cmsj@tenshu.net
      www.tenshu.net
  38. Dictator! by Anonymous Coward · · Score: 0

    A dictator who has made his domain open-source, thereby giving everybody free reign to change and make distinct copies of it?

    Ladies and gentlemen, let me introduce Linus Benedict Torvalds, The Bizarre Dicatator of Bazaar, who can command anything to anyone (and no one has to listen). Bow before Him!

  39. Dictators. by Shanep · · Score: 1

    Colin Percival, who published a recent paper on the vulnerability, strongly disagreed with Linus' assessment saying, "it is at times like this that Linux really suffers from having a single dictator in charge; when Linus doesn't understand a problem, he won't fix it, even if all the cryptographers in the world are standing against him."

    This reminds me of when, mid stable branch, the VM system was changed in Linux.

    It also reminds me of when Linus said something to the effect of, "I have not looked at BSD lately or Windows XP, but I don't see anything worthy in them".

    Dictatorships are great if the dictator is very wise and well intentioned. I am glad that OpenBSD has a dictator like Theo de Raadt.

    --
    War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    1. Re:Dictators. by Anonymous Coward · · Score: 0

      I am glad that OpenBSD has a dictator like Theo de Raadt.

      nnnghhhhh...

    2. Re:Dictators. by @madeus · · Score: 1

      Dictatorships are great if the dictator is very wise and well intentioned. I am glad that OpenBSD has a dictator like Theo de Raadt.

      *blinks*

      *blinks again*

    3. Re:Dictators. by Anonymous Coward · · Score: 0

      Low UID not withstanding, what are you smoking...Theo de Raadt's cock?

    4. Re:Dictators. by Shanep · · Score: 1

      Low UID not withstanding, what are you smoking...Theo de Raadt's cock?

      No. Theo has a GF, I beleive and I'm not into cock. I appreciate that he can be pretty rough, but the guy gets stuff done where other people fail or give up. Love him or hate him, he is mostly good for OSS and OpenBSD is one fine OS thanks mostly to him.

      People who challenge the status quo are often not very popular. But people who bring about change for the better, are often people who challenge the status quo.

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    5. Re:Dictators. by Shanep · · Score: 1

      *blinks*

      *blinks again*


      I feel like that guy in the crowd in South Park, when Toto was in town and just finished a song, "Yeah! Whoohoo! Toto rocks!!! YEAH!!!".

      Actually, I do like Toto. Georgy Porgy is great.

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    6. Re:Dictators. by vidarh · · Score: 1
      I find it bizarre that people still think of Linux in terms of a dictatorship.

      How many vendors ship Linus unmodified kernel?

      How many alternative trees are there?

      Linus kernel is a common baseline for most people because he does his job well. If this potential exploits matters to people and Linus decides to be an asshole and refuses every patch people tries to throw at him, patches will go into a variety of vendor kernels and alternative trees and people will have plenty of choice.

      You can hardly call it a dictatorship when people just ignore the leaders decisions if/when he does something they don't agree with.

    7. Re:Dictators. by Shanep · · Score: 1

      You can hardly call it a dictatorship when people just ignore the leaders decisions if/when he does something they don't agree with.

      It's only a dictatorship as far as what gets accepted into the official Linus kernel. Just the same as what gets accepted into the OpenBSD kernel. OpenBSD users are just as free to put the Adaptec driver back in if they want, for example.

      Don't take dictatorship too seriously in this regard. Because people are free to leave or modify these OSS dictatorships. OpenBSD and Linux are not completely comparable anyway, since Linux is a kernel and OpenBSD is a whole OS.

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
  40. Colin Percival... by Shads · · Score: 1

    ... is just trying really hard to get his few moments in the limelight.

    A working exploit would change the priorities, but there aren't a slew of people who even can understand the complexities of programming a system to exploit this bug under most *nix os.

    --
    Shadus
  41. Fix the applications by Tom7 · · Score: 5, Informative

    Why should this be fixed in the Kernel?

    This appears to be an application bug, not a kernel one. The kernel never claims to completely isolate processes from one another; though there are memory protections, there are loads of ways that processes can observer each other's actions. This is just a particularly high-resolution one.

    The real "bug" here, IMO, is that openSSL believes that no other process can observe anything about its secret computations. Timing attacks against RSA have been known for some time, particularly with regard to modular exponentiation.

    It wouldn't be too hard to make RSA encryption take the same amount of time no matter what code path is used, and to make its memory access patterns uncorrelated with the keys (perhaps by using randomization during allocation). They should do this--the fact that their application leaks information has nothing to do with the processor it's running on; it's just that HT makes it particularly easy to measure that information. This would have a performance penalty, and I think the OpenBSD folks are too obsessed with performance, and that's why they've not done this. The performance obsession is a serious problem in the Unix world, and software systems in general.

    If implementing openSSL effectively means adding special kernel support for things like constant-length timeslices or cache invalidation between context switches, that's fine. But this is not a bug in the kenel unless the kernel purports to enforce total separation between processes, which it certainly does not.

    1. Re:Fix the applications by ChrisJones · · Score: 1

      A good post. It reminded me of the fact that you can actually listen to the sounds the CPU is making (with suitably delicate equipment), or measure its magnetic field, etc. all of which will be leaking data about the operations going on inside it, so if you are going to be worried by HT you face a raft of issues and should buy a faraday cage and unhook from the internet ;)

      --
      Chris "Ng" Jones
      cmsj@tenshu.net
      www.tenshu.net
    2. Re:Fix the applications by Anonymous Coward · · Score: 0

      Note that hyperthreading is the only thing that makes this attack practical in software, and allowing threads of different users to be scheduled simultaneously on a hyperthreading CPU is not a good idea in terms of efficiency, anyhow (hyperthreading is often bad for performance in any case), so fixing this in the OS makes sense.

      The traditional timing attack against RSA has been fixed long ago, and it was far easier to fix. This one isn't a timing problem per se, it's a problem with the ability of the attacking thread to probe detailed information about the cache usage of the computing thread. Protecting against such low-level observational abilities is fairly difficult. Similar attacks have been described against symmetric ciphers, which are typically not vulnerable to any kind of timing attacks.

    3. Re:Fix the applications by Drakonian · · Score: 1
      It wouldn't be too hard to make RSA encryption take the same amount of time no matter what code path is used, and to make its memory access patterns uncorrelated with the keys (perhaps by using randomization during allocation)

      Allegedly the OpenSSL code has over 1000 data-dependent if-statements in the RSA algorithm. That would certainly not be very easy to make data-independent.

      That said, at least you actually understand the problem unlike many of the rabid Linus defenders here.

      --
      Random is the New Order.
    4. Re:Fix the applications by Anonymous Coward · · Score: 0

      That said, at least you actually understand the problem unlike many of the rabid Linus defenders here.

      And unlike all of the rabid Linus attackers. Why single out one side? Are you biased?

    5. Re:Fix the applications by Tom7 · · Score: 2, Interesting

      Allegedly the OpenSSL code has over 1000 data-dependent if-statements

      I don't doubt it, and it would likely take a rewrite of the RSA code. But RSA is a very simple algorithm, so I believe it can be done without much trouble if one doesn't obsess over efficiency.

      Practically speaking, just fixing modular exponentiation (which is the core of encoding and decoding) to call exactly the same bn_ functions whether the key bit is 0 or 1 would seem to fix this particular problem.

  42. To quote Carl Sagan.... by DG · · Score: 1

    "Extrordinary claims require extrordinary evidence"

    My read is that Linus thinks that it might be a problem, but isn't convinced of the real-world seriousness of the problem - yet.

    If you're going to claim that the sky is falling, you'd better bring evidence - like a reproduceable exploit. If you have one of those, you'll get the attention the problem deserves. And if you can't... then a problem that isn't a problem isn't a problem, isn't it?

    DG

    --
    Want to learn about race cars? Read my Book
  43. All of them? by Anonymous Coward · · Score: 0

    "even if all the cryptographers in the world are standing against him."

    Linus: No just you Colin!

  44. so? fix it and send in a patch! by Mark19960 · · Score: 1

    why whine about it? 'wah wah theres a bug and he wont fix it booo hoo'

    people that are whining about it know how to fix it, send the man a patch, and be done with it!

    all talk and no action. perhaps he doesnt know how to fix it, and you do.
    DO IT! STOP WHINING!

  45. OH LOOK! A DICTATOR! by mindstrm · · Score: 1

    However in this case, the evil dictator is correct, this isn't a kernel issue.

  46. strcmp vulnerability. by Grendel+Drago · · Score: 1

    Damn, that's subtle. I mean, I can figure out how it would work, but still. I didn't know it was possible to time anything as (ostensibly) quick as strcmp.

    So, what's the solution? Adding a random delay to the loop?

    --grendel drago

    --
    Laws do not persuade just because they threaten. --Seneca
    1. Re:strcmp vulnerability. by Carewolf · · Score: 4, Interesting

      No just compare every character in the input everytime, rather than short-cut when you know it wont match.

    2. Re:strcmp vulnerability. by CaptnMArk · · Score: 1

      Timing relies on CPU cycle counter which is quite accurate in most cases.

    3. Re:strcmp vulnerability. by NighthawkFoo · · Score: 2, Insightful

      Hashing the passwords would probably help in this case, since then a single character change would completely alter the entire hash.

      --
      "I disapprove of what you say, but I will defend to the death your right to say it."
      - Evelyn Beatrice Hall
    4. Re:strcmp vulnerability. by /ASCII · · Score: 3, Informative
      Easy to miss, huh? Adding a random delay only means that the precision of the meassurments decrese, so you have to do more repeats to get an accurate result. The real solution is to make sure that the data access pattern is always identical.

      The normal solution is to store both the the real password and the password supplied by the user in a memory area that is as large as the maximum password length and zero padded and do something like this:


      int verify( const char *s )
      {
      int i, ok=1;
      for( i=0; i<MAX_PASSWORD_LENGTH; i++ )
      ok &= real_password[i]==s[i];
      return ok;
      }


      Note that it is also vital thet the password supplied by the user is zero padded and the calculation time can not depend on how long that password is. If it did, it opens up to man in the middle attacks. Evil, huh?
      --
      Try out fish, the friendly interactive shell.
    5. Re:strcmp vulnerability. by Anonymous Coward · · Score: 0

      No, the normal solution is to use hashed passwords and compare the hashes. No serious programmer has compared plaintext passwords in over a decade.

    6. Re:strcmp vulnerability. by radish · · Score: 1

      The solution is to never compare plaintext passwords (which you shouldn't be storing anyway). If you follow standard practise and hash the passwords, comparing just the hashes, then this is a non issue.

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

    7. Re:strcmp vulnerability. by /ASCII · · Score: 2, Interesting

      Not enough. You still have to make sure the hash functions runtime doesn't depend on the length of the password, or you will still be vulnerable to man-in-the-middle attacks.

      Algorithms like SHA work on blocks of data, so what you need to do is make sure the code for padding the password to full block length doesn't change the runtime.

      --
      Try out fish, the friendly interactive shell.
    8. Re:strcmp vulnerability. by Jonathan_S · · Score: 1
      Damn, that's subtle. I mean, I can figure out how it would work, but still. I didn't know it was possible to time anything as (ostensibly) quick as strcmp.

      So, what's the solution? Adding a random delay to the loop?
      Actually, just turning on md5 passwords (or SHA-1 passwords) would protect against this attack.

      That is because those compare the hash of the entered password against a stored hash. Because those hashes are cryptographically strong one way functions knowing which is the first character not to match the stored hash doesn't provide you any help in guessing the correct password.

      This strcmp timing attack only works against plaintext passwords.
      Well technically it should also work against passwords that were encrypted character by character, and work to a minor degree for passwords that were encrypted in multiple blocks. (You could tell which block was failing)
    9. Re:strcmp vulnerability. by iamacat · · Score: 3, Interesting

      I didn't know it was possible to time anything as (ostensibly) quick as strcmp.

      strcmp may be fast, virtual memory is not. You just make sure that your password ends up split between two pages in the comparing program - for example by padding the previous thing you send over network with spaces. Then generate some activity to make sure most of the things are paged out. Now if the part of the password on the first page is correct, the program will take longer to return failure and an extra page should be visible through vmstat. By repeating this with different alignment, someone can guess your password character-by-character.

      I am afraid multi-user systems are there to keep students from stealing each other's homework, not for protecting military secrets. Over the Internet, such small variations in timing should be impossible to measure. You can insert a random delay every time your program processes an incorrect password for good measure.

    10. Re:strcmp vulnerability. by fodZ · · Score: 1
      The normal solution is to store both the the real password and the password supplied by the user in a memory area that is as large as the maximum password length and zero padded

      Actually no decent password verification function is comparing against a cleartext password in the first place, so strcmp() doesn't really enter into it. Normally the user-supplied password is concatenated with a random value ('salt') and put through a one-way function (aka 'hash function'). Some implementations add an iteration to that to make dictionary attacks take longer. Maybe there are timing attacks against that too, but if so they are more subtle than the likes of timing strcmp().

      Where timing attacks definitely do enter into password verification is if your algorithm takes longer to give a yes or no depending on whether the username is valid. This can help an attacker to verify guessed usernames.

      You're right though that adding random delays just makes these types of timing attack work more slowly, it doesn't prevent them.

    11. Re:strcmp vulnerability. by Old+Wolf · · Score: 1

      You should make 'ok' volatile, otherwise the compiler may optimise the function to return as soon as one character is wrong.

  47. fuzzy time as a countermeasure by Anonymous Coward · · Score: 0

    There was a paper on this type of covert channel and on possible countermeasures at the 1991 IEEE Symposium on Security and Privacy.

    Hu, W.-M. Reducing Timing Channels with Fuzzy Time. in Proceedings of the 1991 IEEE Symposium on Research in Security and Privacy. 20-22 May 1991, Oakland, CA: IEEE Computer Society. p. 8-20.

  48. Colin 'Pi' Percival? by marol · · Score: 0

    Is this the same Colin Percival who ran the Pihex project a while back?
    Clever boy.

    1. Re:Colin 'Pi' Percival? by RockDoctor · · Score: 1

      Yes, it is the same Colin Percival (we swapped emails - I was a PiHex contributor). Interesting guy.

      --
      Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
  49. Sharks with lasers by bitswapper · · Score: 1


    Can anyone interest Linus is sharks with lasers on their heads? Real estate inside a volcano, perhaps?

  50. What I said is entirely relevant by MarkEst1973 · · Score: 1
    If you worked without pay for three months on something that other casually dismissed, I bet you, too, would disagree with them.

    Someone's emotional state is affected by this sort of thing. You can't say it isn't so.

    1. Re:What I said is entirely relevant by Anonymous Coward · · Score: 0

      Which does nothing to discredit his argument. Do any of you fuckers study logic before graduating?

    2. Re:What I said is entirely relevant by Anonymous Coward · · Score: 0

      True for computers and in logic textbooks, not true for human beings. An obsessive person is indeed far more likely to present elegantly crafted arguments which are entirely wrong. The jury is entitled to take the demeanor of the witness into account when deciding his credibility.

  51. This is the guy of PiHex fame I believe by kleinux · · Score: 1

    Several years ago I came across a little project by Colin Percival to calculate Pi to an obscene number of digits called PiHex. I thought it was pretty cool and I think this guy is damn bright. I expect to hear more about him in the future. A lot of people here seem to be dogging him because he has been critical of Linus, but I think what he wrote was fair. At least everything I saw. It isn't like he was saying Linus sucks or anything, just that he isn't taking a threat as seriously as Colin would like him to. Hey, part of open source is collaboration and that sometimes means people are not going to agree.

    Links for the PiHex project:
    http://www.cecm.sfu.ca/projects/pihex/index.html
    http://www.cecm.sfu.ca/projects/pihex/colin.html

  52. Grow up! by Anonymous Coward · · Score: 0

    Why are all the cryptographers standing against him when they should be helping to educate him on the seriousness of the problem (if it truly is that serious)? Instead of being juvenile and throwing stupid statements to the press, why don't they start a dialogue to resolve the problem! Acting like a bunch of teenagers in public is NOT going to solve the problem.

  53. What about Windows? by vegaspctech · · Score: 1

    An earlier article on Slashdot mentioned that Hyper-Threading, as currently implemented on Intel Pentium Extreme Edition, Pentium 4, Mobile Pentium 4, and Xeon processors, suffers from a serious security flaw. Since the security flaw is in the processor then isn't this also a Windows issue? If not, why not? If so, what do the folks at Microsoft think of the issue? Are they reacting to it more like Colin or Linus? How Microsoft's treatment of this issue could provide some meaningful perspective here.

    --

    Making the world a better place, one psychotic episode at a time.

    1. Re:What about Windows? by Anonymous Coward · · Score: 0

      If so, what do the folks at Microsoft think of the issue?

      Microsoft is very concerned about this, but doesn't want to disable hyperthreading because they know Intel would get very annoyed with them if they did.

  54. Hmmm by Zebra_X · · Score: 1

    There is a big differance between saying "The vulnerability isn't really that bad" and saying "I'm never going to fix it". Linus is probably right to some degree about the severity of this attack vector. That doesn't mean that he won't fix it, or someone else will be allowed to.

    Everyone is so excitable these days.

  55. Hmm. Perhaps they should restrict secure computing by crovira · · Score: 1

    to secure boxes.

    If you're really worried about exposing some of your user space to 'malicious multi-threading' (which depends on a lot of factors to yield any possibility of capturing useful data,) perhaps you should not be running you code on such a compromised architecture as the x86.

    I think a caveat, don't trust this box to do crypto, and a recommendation, turn off hyper-threading, is enough.

    In fact, whatever software requires it turned off should be able to find out from the machines geshtalt and possibly issue a request to turn HT off while its running.

    --
    MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
  56. Secure your servers then.... by ByeLaw · · Score: 1

    Why not disable hyper threading if this is an issue for your servers security? You won't lose *that* much performance.

    I generally found it can have an adverse effect on our servers performance anyway.

  57. Other examples by John+Harrison · · Score: 2, Insightful
    One need only to look at the smart card world to see all sorts of side-channel attacks that are harder to execute than this. First there was power analysis, then when countermeasures were implemented there was differential power analysis, then more countermeasures, now the use RF leakage, so there are countermeasures against that.

    If a process is leaking information somewhere, then there will be people clever enough to pull that information out.

    That said, it seems that this is more of a library problem than a Linux problem.

    If you need any real security you should be doing your private-key operations in an HSM anyhow, not on your CPU.

  58. Another Tempest In A Teapot by Master+of+Transhuman · · Score: 1


    Just like Linus vrs Tridge, except in this case Linus hasn't said ANYTHING in this exchange that indicates he won't accept such a patch.

    Percival is just blowing smoke up everyone's ass. His only point is that the NSA is concerned about a covert channel - fair enough. Linus is doubting it's a practical method of doing this, and he also doubts that for ordinary users (other than the NSA) it's possible at all to use it for a covert channel.

    Even if proven otherwise, it says NOTHING about whether a patch would be accepted by Linus.

    This is total bullshit UNTIL Linus refuses such a patch AND his reasons for doing so AT THE TIME HE DOES IT are proven wrong.

    And even then, as others have said, any distro can add that patch for people who care such as the NSA.

    --
    Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
  59. Fix for the HT vulnerabilty - a non SMP kernel by Anonymous Coward · · Score: 0

    Just use a kernel without SMP capablity in Linux and voila - no vulnerability.

  60. Not a kernel problem by ajs318 · · Score: 2, Insightful

    This isn't a kernel problem.

    It's either an application problem or a hardware problem. Basically, used memory is not being zeroed out, so one programme can look at what another programme left behind.

    In the case of a software frame buffer {like the 1980s home computers with bit-mapped graphics: Spectrum, BBC et al} failure to zero out memory causes spurious artifacts on the display. You can see this if you switch between graphics modes by writing to the hardware registers directly rather than using the "proper" system calls which clear the screen. {On the Beeb, you could actually grow a stack through the display memory. Pretty, but you'd better hope not to scroll the screen or print over that area.} The solution was implemented in software: create system calls that zero-out the display memory when switching graphics modes. {As a bonus, your users need only send one number to the routine, which can poke the right values into all the relevant registers on their behalf. They just don't get to invent their own graphics modes, but if you ever update the display ULA in future then at least you won't kill half the games software in existence.}

    What we're talking about here is cache memory not being zeroed out between uses by successive processes. That looks to me very much like a hardware problem. It's not even an easy problem. My guess is that the implementors looked at it, decided "It's potentially insecure in theory but bloody difficult to make use of in practice", and left it that way on purpose. Like there's no point fitting an expensive lock on a wooden door with a person-sized glass panel in the middle of it -- especially if that door is only accessible through an overgrown garden with an underfed Alsatian in it.

    BTW, crypto software running in userland could never, ever be made immune to snooping from kernel space -- at least, not on a system with any kind of debugging. The solution is to read and understand every bit of the kernel source -- including all drivers -- or get some independent expert to do so for you, so as to be sure the kernel contains nothing that could be used for malicious purposes. Hardware crypto devices would be more immune to tampering -- but less susceptible to independent verification.

    Imagine this: <CHEESY MEXICAN ACCENT>Hey, extranjero! You want to send secret message? I chave code so secret, nobody onderstand eet 'cep' for me an' my brother. Djou dictates to me, one word a time, I write eet down in secret code. Then I send eet to my brother and che go to your amigo, and read heem the secret code. Nobody in world onderstand 'cep' my brother.</CHEESY MEXICAN ACCENT>

    --
    Je fume. Tu fumes. Nous fûmes!
    1. Re:Not a kernel problem by iggymanz · · Score: 1

      Now I'm picturing Mexican guy in front of truckstop hawking crypto warez:

      "Creeepto! Creeeepto! Creeeepto! All creeepto must go. At the Plaintext Tweeeester we're slashing creeeepto in half! This is a creeepto blow out! Make us an offer on our vast selection of creeeepto! We got white creeepto, black creeepto, Spanish creeepto, yellow creeepto, hot creeepto, cold creeepto......... fake creeepto! If we don' have it, you don' want it!"

  61. Linux is not a dictator by augustz · · Score: 1

    Hey just has people's trust. Anyone (and everyone) could take the source and start their own thing. If EVERYONE really was aligned against him this is what would happen.

    Folks trust him because he's a bit pragmatic, and doesn't troll to high heaven. Looking over the background their are other fast channels, I'm not sure I by the 1000x faster arguement given sched_yield() etc. So yeah, something good to fix, but let's stop with the linux as dictator. He's only dictator as long as the people who matter are willing to follow him.

  62. Linus A Dictator ?!? LOL!! by Anonymous Coward · · Score: 0

    Linus A Dictator ?!? LOL!! The Kernel is open source , Linus feels that this Bug isn't such a big problem,something he is entitled to do.But anyone who Disagrees can go ahead and write a patch/fix, that means Vendors too.Does Colin know why this can be done? Because Linux is open source. So much for Dictatorship HuH? Next he'll be calling Linus a communist. Go Figure....

  63. Vendor kernels contain patches by Jeppe+Salvesen · · Score: 2, Insightful

    If Red Hat or SuSE or anyone else disagree with Linux, they can simply produce and apply a patch to their own kernels while releasing the patch itself to the public.

    This is one of the good aspects of open-source software: If you disagree, you can fork or simply distribute a patched product.

    --

    Stop the brainwash

  64. probably easy to fix by Ancient_Hacker · · Score: 1
    It's amazing how much mostly uninformed discussion there is on this issue. A quick look at the code shows it's probably easily fixed-- just add a random XORing of the polynomial table index and voila, no more cache timing artifacts. Maybe 5 lines of code total? What's the beef?

    Or even better, use Hyperthreading against itself to solve the problem-- start another thread that randomly peeks at the table.

    Now was that that hard to figure out?

    1. Re:probably easy to fix by iggymanz · · Score: 1

      I wonder why Colin didnt' spend his 3 months of unemployment making a user space fix for this issue, instead of spending his time raising muck about it. , what with his being an expert and all. Patch up or shut up!

    2. Re:probably easy to fix by cperciva · · Score: 3, Informative

      I wonder why Colin didnt' spend his 3 months of unemployment making a user space fix for this issue...

      Two reasons: First, I was busy informing vendors -- Intel, Microsoft, the *BSDs, and Linux vendors -- about the problem and explaining the possible solutions. Second, because fixing every application in the world (this doesn't only affect cryptography) would take far more than 3 months.

    3. Re:probably easy to fix by iggymanz · · Score: 2, Insightful

      Hello Colin! How many of the world's servers really have local users that aren't already trusted with potential to access the business data? And for that matter, what percentage already have *physical* access to the machine? How many easier and more convenient ways do they have to snoop/steal/alter information than the hyperthread exploit? Heck, I'm an honest person and I can think of dozens of ways, I wonder what a creative sysadmin or dba turned evil person could conceive? As a general principle, potentially hostile users should NEVER be given local access to a server with information needing security, it's that simple. And failing to keep external users from getting local privileges will open the door to all manner of data snooping/destruction/theft whether or not a hyperthreaded processor is involved.

  65. It's not like you should trust a machine anyways by OrangeTide · · Score: 1

    I wouldn't trust a machine that had people logged into it that were untrusted. Real vulnerabilities that allow untrusted users to install trojan binaries is a much more real and dangerous security problem.

    This is certainly an interesting problem, but it's not that high up on my list of priorities. And I'm not surprised that Linus doesn't feel it's a terribly important issue, especially since the particular example given in the paper can be fixed by modifying the openssl library. (thus fixing the problem on Linux, FreeBSD, and any one else who supports Hyper-Threading Intels).

    --
    “Common sense is not so common.” — Voltaire
  66. Hmm by Shin+Chan · · Score: 1

    *Takes out popcorn*
    *Observes all Linux fanatics defending their precious operating systems/kernels*

    Really, when someone says something "bad" about Linux or its creators it doens't mean they're all out to get you, destroy you, etc etc. I'm sure all fancy dangled open source projects and fun and stuff (even though I'm currently not involved in one) but I still am not able to understand why everyone goes berzerk when camp A says something about camp B.

    Same goes for Mac & Microsoft zealots.

    --
    Proud owner of BOT2K3 [ bot2k3.net ]
  67. Maybe Colin is right? by Anonymous Coward · · Score: 1
    Instead of
    • diminishing the problem
    • blindly trusting Linus
    • personally attacking Colin
    • knowing everything better

    did you guys consider that Colin is maybe right and Linus isn't? After all Colin researched the topic for three months, while Linus (and the rest of us) have thought about it for a few hours at best.
  68. A possible solution by jesup · · Score: 4, Informative

    This issue exists with AES implementations as well (search for AES SBOX cache timing on google). The AES vulnerability is, if anything, more worrying in a way. It can be made to be constant-time, but at a serious cost in performance.

    Here's another option: since this vulnerability depends on using the L1/L2 cache states to ferret out information, remove that from consideration. When processing an RSA (etc) key, have the code temporarily lock out context switches, AND have it take a fixed period of time to compute the result (or portion of the result), followed by flushing the cache. No data is left in the cache to analyze. The execution time of the code is fixed, so no dat leaks there. You don't have to make the algorithm a constant-time calculation if you can pad it at the end to the maximum (or close enough to the theoretical maximum that there's no true information leakage in practice). This helps avoid the potentially very slow algorithms that are truely constant-time. And flushing the cache at the end of each (portion of the) calculation removes that as a leak. (You need to flush it before waiting for the allocated time to elapse, note, and include max flush time in your calculation, and if possible factor into your calculation possible interrupt effects.)

    A pain? yes. Requires extensive mods to crypto algorithm implementation? Yes (though perhaps not to the core calculation.) Requires OS support? Almost certainly. Requires HW support? Would be helpful but probably not required. Loss of performance? Yes, though far lower than disabling HT I imagine in normal cases (when not decrypting/encrypting).

    Also, some of the restrictions above can probably be eased if the crypto algorithm is carefully designed and matched to the hardware.

    Disclaimer: I am NOT a crypto geek! I have worked in processor and cache design, though.

    1. Re:A possible solution by Decker-Mage · · Score: 1
      That would be a very plausible approach towards a solution which would not require hardware support. Curiously, back in the '80's the AmigaOS included the forbid() and permit() fuctions at the core of Exec which prevented any context switching. [This was to quickly handle certain interrupts in a safe manner.] My how the wheels turn ;-).

      My only problem with this is: how did you get that process going on that server!?? At I've said time and time again, if you give me access to your server, it's far, far too late. All you server belong to me, and I ain't joking. Once I have any kind of access to a machine, it's mine and it's only a matter of time. [The current record stands at, for the longest, 187 minutes.]

      --
      "[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
    2. Re:A possible solution by jesup · · Score: 1

      If you noticed, I was an AmigaOS designer... :-)

      Note that some of these mechanisms don't require processes running; they involve time to respond to a request that requires cryptographic processing (encrypt/decrypt). The AES paper shows this attack can work over a network (though at severely reduced leakage rates). This also implies that for the network leakage case, you don't have to go to the same levels of extremes before the leakage rate becomes on the order of the brute-force cracking time, and thus a wash. In addition, if it's only network attacks you're protecting against, you merely have to guarantee that the packet response time is approximately constant (or doesn't vary with the key data), so you can "hold" responses until (say) 100ms have elapsed while doing other processing.

    3. Re:A possible solution by Decker-Mage · · Score: 1
      I hadn't noticed but you have a right to be proud. [I owned the 2049th A1000 made and still miss her!]

      Yes, it doesn't matter the vector, we have a new (actually old really) class to defend against here. Any library that doesn't return the result in constant time will clues about the key given enough samples. Essentially you are running a statistical sampling to narrow down the population to one sample (a reverse t-test if you know statistics).

      Surprising that no one has really thought of this before, or at least jumped up and down and screamed until the libraries were fixed. It isn't just HT, SMP, or any one technology, it's that you can derive enough information to spit out that key.

      --
      "[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
    4. Re:A possible solution by jesup · · Score: 1

      It doesn't have to return in constant time, but it does have to return in time invariant (or very close to) on the key.

      This class of attack isn't new. The AES selection people considered it but didn't think much about the cache line issue (or the sbox table lookup time issue and how it interacts with caches).

      The class of attack of using CPU load/switch latency to pass information from a secure process to an insecure one dates back at least to the mid or early 80's (first time I read about it at RPI).

    5. Re:A possible solution by Decker-Mage · · Score: 1
      Unfortunate but true. Any transfer of information/energy outside the 'box' reveals information to an attacker; it really doesn't matter what the type of transfer is, just that it happens.

      As an aside, that's why I laugh whenever I see such things as SpeedPass, wireless payments, etc. I don't care how secure you make it, eventually it will be cracked.

      --
      "[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
  69. Maybe he's right by birge · · Score: 1

    It seems all geeks can do these days is rant about esoteric security flaws and patch them as if every guy running Firefox had pentagon launch codes on his linux box. Let's just admit one thing: for every known security flaw, there are dozens that aren't, and probably a few that are by the wrong people. We continue as a viable species despite this fact not because of our ability to ensure perfect mathmatical security, but because most people really aren't evil. Maybe we should spend one day a week actually using computers and leave the rest of them to obsessing about security.

  70. Fixing is easier done than said: WBINVD by redelm · · Score: 3, Informative
    Look: if anybody is seriously concerned about cache snooping, just patch in a WBINVD instruction as part of return-from-interrupt. That will flush the dirty cache lines back to RAM and invalidate the rest. Yes, there's a horrible cost. Perhaps higher than doing without HT. But you will be secure against the boogyman! FWIW, I agree with Linus -- this is a theoretical, negligible threat, vulnerability. It doesn't yield data, and most crypto has fixed (rather than revealing) access patterns.

  71. Open source nature of Linux, though... by Anonymous Coward · · Score: 0

    Wouldn't the open source nature of Linux, however, be exactly what prevents Linus's stubbornness from completely ruining it? If he doesn't make an "official" approval of a fix to this security issue, someone else can make a patch for it and release it, rendering Linus's kneejerk opinion rather unable to do harm.

    And if such a patch is downloaded and eventually used by the majority of, or at least a significantly sizeable number of, Linux users, Linus will no longer be able to ignore the demand for it.

    Posted as AC because some Linus Torvalds groupies will reactively mark this as flamebait without even reading it.

  72. Cuba switches to Linux by Anonymous Coward · · Score: 0
  73. You got the quote wrong, it's -- by Anonymous Coward · · Score: 0

    Pussy, pussy, pussy! All pussy must go. At the Titty Twister we're slashing pussy in half! This is a pussy blow out! Make us an offer on our vast selection of pussy! We got white pussy, black pussy, Spanish pussy, yellow pussy, hot pussy, cold pussy, wet pussy, tight pussy, big pussy, bloody pussy, fat pussy, hairy pussy, smelly pussy, velvet pussy, silk pussy, Naugahyde pussy, snappin' pussy, horse pussy, dog pussy, mule pussy, fake pussy! If we don't have it, you don't want it!

    1. Re:You got the quote wrong, it's -- by Anonymous Coward · · Score: 0

      One hot horse pussy please.

  74. Colin Percival only cryptographer in whole world by iabervon · · Score: 2, Insightful

    Linus probably would do something about this if all the cryptographers in the whole world said it mattered. But, so far, Percival is the only person who seems to think it's actually a problem. Nothing on the subject from Bruce Schneier. And, while he says Linus should talk to the SELinux people, he probably doesn't realize that they have almost certainly heard about this and didn't comment in the thread.

    It wouldn't be hard to have an option to prevent processes with different owners from running on the same physical CPU at the same time. It wouldn't even affect the case that Linus mentioned. But cryptographers don't seem to think it's a plausible attack anyway, aside from carefully arranged conditions. The discussion was entirely over whether it would be less foolish to prevent it in the kernel or in userspace, and nobody seems to have argued that anything should be done at all.

  75. Re:Slashdotters defending Linus... by JakiChan · · Score: 1

    My point would be that I think folks *often* make the wrong decisions because of how "cool" linux is or because they hate MS, like the guy who tries to get his parents to use linux when all they want to do is check their mail. Often when talking to linux "consultants" and I say I need to do "X", which can be done easily in another OS, they will try to change X rather than admit that linux can't do it.

    But of course, I should have realized that speaking out against linux and/or Linus on here would get me modded down as a troll...

    --
    "Where quality is like a dead stinking rat - you just can't miss it."
  76. Very unlikely by sjames · · Score: 1

    Certainly, this covert channel is possable in theory, but is extremely unlikely in preactice. It looks like a few pre-conditions are necessary:

    The blackhat program MUST be running on the same CPU as the program it wants to snoop AND it has to know that. There must be just enough processes runnable that it does run on the other virtual, and no more (or other processes will perterb the cache).

    It has to just happen to not have an interrupt perterb the cache. Good luck on that one. Better luck KNOWING that for sure without screwing the cache up yourself.

    It also must have at least min imal cooperation from the snooped process. For example, the snooped process can really screw things up by occasionally bypassing the cache (there are asm instructions for that). Sufficiently worried cryptographers can do that if they like.

    Sufficiently worried sysadmins can disable HT in the BIOS.

    Sufficiently worried kernel programmers can modify the scheduler in several ways, such as reserving HT virtual processors for processes with more threads than available CPUs.

    SELinux can hack the scheduler to olny allow the virtual CPU to be used by another process/thread in the same domain and sensitivity level. Of course, they are probably more interested in dealing with things like X cut/paste etc.

    Nearly everyone else can just ignore it as one more thing that could be a problem in theory, but is quite unlikely to work in practice.

  77. How to fix this by Animats · · Score: 3, Interesting
    OK, we have a covert channel and a way to exploit it. How can that be fixed?

    First, remember that public key exchange is usually a very small component of a cryptographic session. Usually, you do all the public key work at startup, exchange private keys for the session, and then just use the private keys. So an inefficient solution that protects the public key computations is acceptable.

    In the paper, Percival writes "Further, OpenSSL utilizes a "sliding window" method of modular exponentiation, decomposing x := (a^d) mod p into a series of squarings x := x^2 mod p and multiplications x := x ^ (a*2*k+1) mod p." When there's a zero bit in d, the squaring and multiplication are unnecessary, and the SSL implementation apparently skips them. That creates the covert channel. It should be sufficient to revise the code so that it always does the squaring and the multiplication, and then uses the zero bit in D to decide whether or not to use the result. Because some superscalar CPUs might manage to look ahead and avoid the squaring and computation, a nice solution would be to compute both x := (a^d) mod p and x := (a^(d XOR K) mod p, where K is all binary ones out to the maximum length of d. This makes the computation symmetrical, independent of the value of d. This should roughly double the cost of the public key computation, which is probably tolerable.

    It's now important to also examine private key mechanisms for similar vulnerabilities. In particular, DES implementations should be checked. Because those execute millions of times during a long data transfer, even if there's a low-bandwidth leak, an exploit may be possible. Some lookup-table based implementations of DES might have exploitable cache semantics, and that needs to be explored.

  78. Bzzt! Back the paradigm up here. by Paradox · · Score: 5, Insightful
    From what I've learned in software writing, is that it's preferrable to wait and see how much and how bad your software runs or has problems before you start charging into the situation to fix it.
    Wait. Wait wait wait. Who taught you this? This isn't XP. This isn't sound software practicies. Maybe you're thinking of the infamous quote by Car Hoare, "Premature optimization is the root of all evil," perhaps?

    Potential performance problems are things you should defer on until proper profiling can be done (unless they're total show stoppers). Security and correctness are things you cannot ignore except in extreme cases. Security is particularly important to nail down, because it can result in your customers losing data (even data not pertaining to your app), which is the first no-no of software.

    Application software has four priorities, in this order:

    1. Safety (shouldn't destroy data)
    2. Correctness (do what it says it does)
    3. Security (don't do anything else)
    4. Performance (do it fast)
    YMMV, of course, sometimes correctness falls below security, and occasionally performance goes above correctness in some mathmatical functions (if doing it correctly would take a decade and doing a close approximation would take a day, obviously you want the approximation and then a heuristic).
    Especially something as low level as this, which could have unseen side effects. Especially since this (to me, at least) seems to be more of a hardware problem than software, per se. (But, of course, I could be wrong.)
    In this case, I'd say proper fix is to disable hyperthreading by default, and make sure the user is aware of the hardware bug/consequence of using HT when they decide to turn it on. You need to let the user decide if they're willing to accept the security risk or not.

    The Linux Kernel Developers may decide otherwise, but that's how I'd call it if it was in my shop. It's a hardware problem and the software fix is not obvious.

    --
    Slashdot. It's Not For Common Sense
    1. Re:Bzzt! Back the paradigm up here. by untouchable · · Score: 1
      Security and correctness are things you cannot ignore except in extreme cases. Security is particularly important to nail down, because it can result in your customers losing data (even data not pertaining to your app), which is the first no-no of software.

      Yes, you are correct, if you are still writing the software, and you notice the security and correctness are being compromised. If you're doing final testing (say, 3 weeks before gold cd goes out), or if you've already sent the software out, you can't just rush out a fix, especially without seriously sitting down and thinking things through.

      In this case, I'd say proper fix is to disable hyperthreading by default, and make sure the user is aware of the hardware bug/consequence of using HT when they decide to turn it on. You need to let the user decide if they're willing to accept the security risk or not. The Linux Kernel Developers may decide otherwise, but that's how I'd call it if it was in my shop. It's a hardware problem and the software fix is not obvious.

      That's pretty much what I've been saying. Linus is doing the correct thing and Colin Percival is being too hasty with things.

      --
      As Seen On TV's? Come back!!!
    2. Re:Bzzt! Back the paradigm up here. by Paradox · · Score: 2, Informative
      Yes, you are correct, if you are still writing the software, and you notice the security and correctness are being compromised.


      In my experience, correctness is caught here, but security tends to slip through the cracks. It can be very hard to unit test for security (although, a well tested system tends to have fewer buffer overflows and whatnot).


      If you're doing final testing (say, 3 weeks before gold cd goes out), or if you've already sent the software out, you can't just rush out a fix, especially without seriously sitting down and thinking things through.


      Two problems. First, when you find the bug is irrelevant. It's the bug's value that matters. If your secure server is shipping tomorrow and you find a show-stopper buffer-overflow, you fix it. If that delays your ship date for a day or two, such is the price of developing software. Use a process that helps minimize the cost of change (I know I have a favorite). If you don't, you're asking for trouble.


      Part of these kinds of priorities is that you need to weigh the cost benefit of each change. You are suggesting that the size of the change has some kind of weight in this equation. My claim is that it does not. The customer doesn't care about how many lines you have to change, they care about if your software is safe, correct, secure and fast.


      Using pithy excuses like, "I know it doesn't do what we said it would, but we only caught the bug 3 weeks before shipping," is an excellent way to show your customer how incompetant you are at software engineering and project management.


      Far better to take the honest route, give them what they paid for, and not ship a bogus version. Unless, of course, your customer decides otherwise.

      That's pretty much what I've been saying. Linus is doing the correct thing and Colin Percival is being too hasty with things.


      That's not what you said, and it's not what Linus is saying. Linus is saying, "It's not a problem. The bug is too hard to exploit, and I like hyperthreading." Maybe you've confused him with Alan Cox, who is saying that you can't ignore security bugs of this class, even if they're in hardware, and so he suggests that hyperthreading be turned off.
      --
      Slashdot. It's Not For Common Sense
  79. Hmmm. To the darkside? by korekrash · · Score: 2, Funny
    it is at times like this that Linux really suffers from having a single dictator in charge; when Linus doesn't understand a problem, he won't fix it, even if all the cryptographers in the world are standing against him.

    So, the troops begin to turn.....Soon it will be:

    Emporer Gates
    Darth Linus
    Steve Jabba

    Who will we have to ridicule for being successful when we can no longer rally around Linus as our champion against the Empire?

  80. AMD by Anonymous Coward · · Score: 0

    This is another reason to switch to AMD. Faster and more secure.

  81. Nope, server access not needed at all by Anonymous Coward · · Score: 0

    Single server running virtual server A & B.

    Virtual server A is a bonafide E-commerce site w/ users submitting transactions via SSL.

    Virtual server B looks bonafide but it instead of logic to serve pages, it continually calls a HT snooper program. The key here is you do not need priviledged OS access because as long as your website code is scheduled to run, it can snoop info from parallel HT threads.

  82. Well, as long as we're making stupid arguments... by benjamindees · · Score: 1

    Compare: making all users run as root to speed up login times.

    --
    "I assumed blithely that there were no elves out there in the darkness"
  83. The Solution by Anonymous Coward · · Score: 0

    Why is it that so many people are claiming that there is no way to fix the bug, or that fixing it would destroy overall performance? The solution is both trivial and obvious. In fact, it is right in the name: HyperThreading!

    The problem is that two separate processes running on the same processor have too much access to each other. Simply use the feature as it was originally designed and intended: only run threads of the same process on a HyperThreaded processor. Problem solved. No extra overhead for other processes, keep the benefit of HyperThreading, and it will even eliminate the pre-2.6 scheduler problem that caused HyperThreading to reduce performance. Has no one at all thought to look at the name Intel gave the feature in the first place?

    1. Re:The Solution by Anonymous Coward · · Score: 0

      Hyperprocessing is so passe.

  84. Personality Cults (Specifically, Theo De Ratt) by @madeus · · Score: 1

    This is not intended in any way as a troll (merely informative to other readers who may not have come across him yet and wonder what we are talking about), but I take it from the UID you do this with the full knowledge that Theo is, on all apparent evidence, a bit of a nutter, a bullshitter (with reference to his utter bollocks about 'Linuxes'), and that rather than OpenBSD being founded out of some earnest devotion to security of his[1], it was because his access to the NetBSD CVS repository was pulled, on the grounds that he was being a class jerk to both users and other developers (not a exactly an isolated incident).

    [1] In fact, he originally intended it to be called NextBSD, because he seemed he was basically intent on running his own show all along (which seems to me to be due to him 'not playing well with others').

    While the development of OpenSSH remains a much valued contribution, from a security standpoint OpenBSD really has a long way to go to catch up to Linux as far as meaningful features go (the security hype being primarily based on (a) the contribution of OpenSSH - which Theo said he didn't want to make for any OS other than OpenBSD! - and (b) simply having all the services turned off on a default installation).

    Specifically (and unlike Linux) OpenBSD doesn't support MAC (Mandatory Access Control) restriction on files, nor does it allow the restriction of access to raw devices, memory or sockets for any user (including processes executed as root), hell it doesn't even have ACL's (Access Control Lists) support without a 3rd party patch (e.g. with patches based on FreeBSD 5's implementation), and they don't seem to 'get' why anyone would want it. In fact, they have *actively* decided not to even attempt to implement POSIX.1e (according to this book, endorsed by Theo).

    These are features that have been supported by Linux for years. If (and I honestly think it's going to be 'if' rather than 'when' now), OpenBSD begins work to implement these features, then it might start to be considered useful as a secure platform. Until then, it's very lacking in meaningful features indeed. In fact, other BSD variants are already ahead of OpenBSD in so far as implementing them (such as FreeBSD and TrustedBSD).

    I realise it's considered easier to criticise than give due credit by some, but in the case of Theo De Ratt I can't see that the amount of credit he gets from some quarters is warranted.

    In conclusion, this is why I find the inference that he is 'very wise and well intentioned' at best riotously amusing. ;-)

    ( YMMV. :)

    1. Re:Personality Cults (Specifically, Theo De Ratt) by Shanep · · Score: 1

      I read those emails long ago. I sympathise with him. Maybe I'm a nutter too.

      nor does it allow the restriction of access to raw devices, memory or sockets for any user

      When I attempt to read from a raw disk device as a non privileged user, I get "access denied". Can you be more specific and provide links or proof that this is the current state of affairs with OpenBSD?

      the security hype being primarily based on (a) ... OpenSSH ... and (b) ... all the services turned off on a default installation.

      Whether hype or reality, it does not just come down to those two things. They have audited code to remove potential dangers as new exploit techniques have come up, they've done a lot of work employing privilege separation, privilege revocation, memory protection with guard pages, W^X, randomizations, etc, chroot jails, Pro Police, Stack Ghost (on sparc and now sparc64).

      I realise that OpenBSD does not have all worthy modern security features, but to say that OpenBSD security is just hype which boils down to OpenSSH and switched off services is just not right. It's not like all these things that you have failed to mention are useless. Since about OpenBSD 3.3, great results have started to appear due to their devotion to security.

      OpenSSH - which Theo said he didn't want to make for any OS other than OpenBSD!

      Can you back this up with a link? I find it a little hard to believe given his absolute freedom stance. Especially since OpenSSH is everywhere nowdays.

      In fact, they have *actively* decided not to even attempt to implement POSIX.1e (according to this book, endorsed by Theo).

      They believe they can make OpenBSD to be very secure and reliable while sticking to traditional BSD UNIX as much as possible. They might not actually need 1e in the end.

      If (and I honestly think it's going to be 'if' rather than 'when' now), OpenBSD begins work to implement these features, then it might start to be considered useful as a secure platform.

      This appears to be carefully worded. I guess what you are saying here is that OpenBSD is a secure platform, but less than useful? Sure, it is not the most useful system out there, but for what it does well, it does very well.

      I can't see that the amount of credit he gets from some quarters is warranted. In conclusion, this is why I find the inference that he is 'very wise and well intentioned' at best riotously amusing. ;-)

      Not wise? The guy knows multiple architectures at a very low level and with other developers managed to get some pretty impressive no-execute type of work happening on CPU's that don't support it natively. A year or two later, Windows XP SP2 comes out with some similar features and Microsofts security guy says in an interview regarding these SP2 features, that he is an OpenBSD fan. Yet, SP2 does not come close to what OpenBSD no-execute does on i386.

      Not well intentioned? He has OpenBSD's best interests in mind and his efforts in this regard often benefit broader OSS. He was awarded recently for his work of upholding his ideals of software freedom.

      Is he a nutter? I could not care less. As long as he keeps doing what matters to me, I don't care if he slings crap around his house and smears himself in it. I'd frown on any baby mulching machine completion and use though. ; )

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    2. Re:Personality Cults (Specifically, Theo De Ratt) by @madeus · · Score: 1

      When I attempt to read from a raw disk device as a non privileged user, I get "access denied". Can you be more specific and provide links or proof that this is the current state of affairs with OpenBSD?

      I see you deliberly cut my sentence off at a convenient point. I suggest that if you genuinely want to know more about what it means to control access to devices and files using MAC (including for software run as root, i.e. via expolits) I refer you to software such as L.I.D.S. and Pitbull.

      Put simply:

      On a system providing live services in real world scenarios (such as web, mail, ftp, ldap, samba, database software etc.) it's inherently less secure than a trusted operating system or one that at least partically impliments MAC, POSIX.1e, or that otherwise places restrictions such as on what specific software is allowed to perform privileged operations such as bind to a given port, or access a given file (etc) no matter what user the software in question it's run as (i.e. code run via software exploits, this means you).

      I realise that OpenBSD does not have all worthy modern security features, but to say that OpenBSD security is just hype which boils down to OpenSSH and switched off services is just not right. It's not like all these things that you have failed to mention are useless.

      I didn't say they were 'just hype', you seem to be trying quite hard to twist my words. However, I certainly stand by my assertion it's association with being a 'secure' OS is primarily based on those two factors, it's certainly not based on it's feature support. Despite how much Theo De Ratt belittles and misrepresents the work of others from a professional security standpoint OpenBSD's feature set really isn't that impressive compared to other free and commercial alternatives, including what can be done with Linux or even compared with features in newer versions of FreeBSD.

      Re: OpenSSH on other platforms:

      Can you back this up with a link? I find it a little hard to believe given his absolute freedom stance. Especially since OpenSSH is everywhere nowdays.

      Theo's statement that he they were not interested in providing OpenSSH for any platform other than OpenBSD was how the whole argument with Alex de Joode started. See my previous post above, the Slashdot archives, or Google, for a link.

      This appears to be carefully worded. I guess what you are saying here is that OpenBSD is a secure platform, but less than useful? Sure, it is not the most useful system out there, but for what it does well, it does very well.

      Any OS will all it's network services turned off by default, is secure from remote exploits. However (and this is the reason I was choosing my words carefully) if you actually intended to run services (such as Web, Mail or FTP) on that system or allow local user accounts then OpenBSD is not what I would consider a particularly secure platform and there are certainly far superior alternatives (both free and commercial), that are far more deserving of credit and consideration.

      Theo's often false derision (and deliberate misrepresentation) of the efforts of other OS vendors is something I find utterly unpalatable.

    3. Re:Personality Cults (Specifically, Theo De Ratt) by Shanep · · Score: 1

      I see you deliberly cut my sentence off at a convenient point.

      I was doing nothing of the sort.

      I assume you are refering to the dropping of, "(including processes executed as root)"? My reply stands if so.

      nor does it allow the restriction of access to raw devices, memory or sockets for any user (including processes executed as root)

      "Any user" is the wide term which root falls within. Your inclusion of root is additive but not necessary.

      So, any user being any user, I once again say, that when I try to read the raw disk device as a normal user, I am denied on grounds of insufficient privilege. So again I ask you to be more specific and provide something to back those claims up. I'm ready to be enlightened on this, because I am very intrigued by that statement.

      If the pertinent part I apparently cut off was, "Specifically (and unlike Linux) OpenBSD doesn't support MAC (Mandatory Access Control) restriction on files", then I must say that I was not replying to that and your "nor" excludes it, as a point, from the points in the rest of the sentence.

      If what you meant to say was, "nor does it allow the restriction of access to raw devices, memory or sockets all the way down to the root user", then you should have. If that is your point, then I must say that few services run as root in OpenBSD these days. MAC and ACL would be nice though, in my opinion, however priv sep and revocation try to deal with the same problem in a different way.

      I didn't say they were 'just hype', you seem to be trying quite hard to twist my words.

      I am not trying to twist your words. If I found the need to twist, then I would not argue to begin with. I make a living out of seeking the truth and ego is nothing but a burden in my line of work. I get a lot of work because absolute honesty is hard to come by in my field where people are either scaremongers or too afraid to say things how they are. For them it just comes down to money.

      (the security hype being primarily based on (a) the contribution of OpenSSH - which Theo said he didn't want to make for any OS other than OpenBSD! - and (b) simply having all the services turned off on a default installation).

      You claim here that the hype surrounding OpenBSD's security, is primarily based on their contribution of OpenSSH and having services switched off. This is not true. There is so much more to the security OpenBSD provides, regardless of whether you think the remaining technologies are worthy or not, there is much hype around them. In fact what I most often hear touted in OpenBSD's favour is the on-going code audits. Why anyone would be excited to the point of hype, over services off-by-default, is beyond me. They ought to be using NetBSD.

      if you actually intended to run services (such as Web, Mail or FTP) on that system or allow local user accounts then OpenBSD is not what I would consider a particularly secure platform and there are certainly far superior alternatives

      Do you give no merit to a priv seperated and revoked service which is also protected by a multitude of active memory protection mechanisms, etc, which confine those services to themselves and their own associated files? Services which get killed if they step out of bounds?

      I'd love to see MAC and ACL included in OpenBSD some day, but please don't try to claim that the hype of OpenBSD security comes down to OpenSSH and disabled services by-default.

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    4. Re:Personality Cults (Specifically, Theo De Ratt) by @madeus · · Score: 1

      Contrary to what you protest, I think you are engaging in significant contortion to attempt to support your arguments.

      Personally, I am not impressed by the touting of privilege separation nor chroot jails, nor protected memory as these are not new ideas developed by the OpenBSD team. Privilege separation is not a new concept (though the common use of the phrase is more recent), it's simply good software design for applications handling sensitive data, chroot jails date back to FreeBSD in the 80's and memory protection certainly isn't new.

      I'm not impressed by OpenBSD 'code audits' either, because for the OpenBSD team this is focused at the core software in the distribution (which not the case with Debian auditing, for example, which has a much wider scope). This not helped by oddities like the most recent version of Apache dating back to 2003, because of a refusal by the OpenBSD team to update it over a licensing quibble, which mean you have to go outside the distribution to run something as simple as a recent version of Apache (one not covered by the 'code audit').

      Do you give no merit to a priv seperated and revoked service which is also protected by a multitude of active memory protection mechanisms, etc, which confine those services to themselves and their own associated files? Services which get killed if they step out of bounds?

      I don't find that (as the OpenBSD team do), that the orange book specifications are not worth implementing (or even importing - patches have been made available in the past) or you can fudge sufficient functionality with privilege separation and revocation alone.

      I fundamentally think that the privileges granted to processes should not be simply tied to user accounts (especially nothing with the power of root) and that the OpenBSD team are wrong not to want to incorporate these features.

      I don't know what you see in Theo De Ratt, but it's apparently not what other people see (it seems an RDF is operation).

    5. Re:Personality Cults (Specifically, Theo De Ratt) by Shanep · · Score: 1

      Contrary to what you protest, I think you are engaging in significant contortion to attempt to support your arguments.

      I do not need to engage in any contortion and have not done so. I have already shown that I cut your sentence down to no less that the minimum to reply and that I could apply my response to your full sentence as it stands in the logic of English grammar. If you strongly disagree with this, as you seem to, using words like "significant contortion", please retort with substance.

      OpenBSD provides a multitude of different security mechanisms (active) and efforts (passive). Some of these include many different memory protection mechanisms, some of which work transparently to the executable and some of which are merely gained through compiling with OpenBSD's modified gcc.

      Personally, I am not impressed by the touting of privilege separation nor chroot jails, nor protected memory as these are not new ideas developed by the OpenBSD team. Privilege separation is not a new concept (though the common use of the phrase is more recent), it's simply good software design for applications handling sensitive data,

      You are side stepping my point. I've been participating in on-line forums for 15 years. If you think you will get far with me, by avoiding answering my challenges through switching to different but related arguments, then think again.

      Whether you are impressed with OpenBSD's more elaborate security mechanisms is not what is under question here. Nor is the point that OpenBSD may or may not have developed these ideas. What matters, is that there are many security components to OpenBSD which are far more effective and more useful than the contribution of OpenSSH and the default of most services being off.

      You assert, "the security hype being primarily based on (a) the contribution of OpenSSH - which Theo said he didn't want to make for any OS other than OpenBSD! - and (b) simply having all the services turned off on a default installation". This is simply ludicrous. Let me pull this appart...

      the security hype being primarily based on

      The "security hype" pointed out at OpenBSD's security specific page, shows the sensible stance on defaults, to be down at bullet SIX. Some points before that include the more substantial security components which I also hold above your ridiculous opinion.

      (a) the contribution of OpenSSH

      The only mention of OpenSSH on that page is regarding vulnerabilities. I don't know anyone who uses OpenBSD primarily because they contribute OpenSSH.

      - which Theo said he didn't want to make for any OS other than OpenBSD!

      What does a claimed political intention of Theo, towards projects outside of OpenBSD, have to do with the strengths of OpenBSD's security? Who cares if this were true? OpenBSD security is the subject here.

      - and (b) simply having all the services turned off on a default installation

      This is such a small, yet fundamental feature. It's trivial to provide and comes down to mindset. This is not quality of code or ingenuity of mechanism. This is policy at a most basic level. I agree that this gets hyped about a lot, outside of the OpenBSD project, but usually along with the other more substantial security features. If someone holds this up within the top two reasons to use OpenBSD, then I don't want to hear any more of their bankrupt excuses for rationale.

      In fact, the most "secure by default" hype I hear, is when trolls are speaking badly of OpenBSD. They sum OpenBSD security up with, "of course it's secure, everything is switched off". What they fail to understand, is that the "secure by default" is merely an indication of overall project mindset and this phrase embodies that. People who sum OpenBSD security up to mostly that, are either ignorant or have an agenda.

      chroot jails date back to

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    6. Re:Personality Cults (Specifically, Theo De Ratt) by @madeus · · Score: 1

      What a spectacular load of utter bollocks that was, I am in awe of your command of irrelevant diversionary gibberish and your inability to master the pertinent.

      The dial on my Muppet Alert gauge just wizzed passed "Fuckwit" so fast it disappeared off into an alternate reality.

      Control-C
      %

    7. Re:Personality Cults (Specifically, Theo De Ratt) by Shanep · · Score: 1

      If you strongly disagree with this, as you seem to, please retort with substance.

      You've marked me as a Foe, but since you've been so much fun, I'm going to mark you as a Friend. To make sure I don't miss a minute of your fascinating opinion.

      Maybe I'll reply from time to time. And maybe you won't even notice.

      BTW, is your constant incorrect spelling of "Theo de Raadt" based on ignorance or do you have an agenda?

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
    8. Re:Personality Cults (Specifically, Theo De Ratt) by @madeus · · Score: 1

      If you strongly disagree with this, as you seem to, please retort with substance.

      This approach is unfortunately rather pointless, as I believe has been established.

      AFAIC, anyone that still cares can read the post history and make their own mind up, I've got better things to do than pander to a loonie.

      You've marked me as a Foe, but since you've been so much fun, I'm going to mark you as a Friend. To make sure I don't miss a minute of your fascinating opinion.

      Go ahead and knock yourself out kid.

      BTW, is your constant incorrect spelling of "Theo de Raadt" based on ignorance or do you have an agenda?

      Yes, I have a secret agenda. It's a conspiracy. Oh no, I've been found out. Bugger.

      Maybe I'll reply from time to time. And maybe you won't even notice.

      Cool, I have my own weirdo /. stalker. \o/

    9. Re:Personality Cults (Specifically, Theo De Ratt) by Shanep · · Score: 1

      This approach is unfortunately rather pointless, as I believe has been established.

      Yes, because you keep side stepping my points. On the security front, OpenBSD provides a lot more than just the default configuration presented at install and the inclusion of OpenSSH.

      I've got better things to do than pander to a loonie.

      Hey, I'm not the one who made some bullshit claims, then tried to defend them time and time again by altering my arguments. If you cannot defend your own comments with reason, then I guess everyone is going to seem like a loonie to you.

      Cool, I have my own weirdo /. stalker. \o/

      I won't be stalking you, you're not worth wasting that much time on. I'm just making sure that if you are going to talk shit about a successful project, I'd like to increase my chances of seeing that and expecting you to back it up. I don't like my chances of that though, since you're pig headed, sidestep reason and claim someone who does try to reason with you to be a loonie. I guess I would have to be a loonie to try to reason with the likes of you, now that I know what you're made of.

      --
      War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
  85. How to deal with timing attacks. by Anonymous Coward · · Score: 1, Informative

    Random delays are bad.

    Random delays can be averaged out.

    The best option is to make it take *constant* time for both success and failure.

    The constant betrays no information, thus you will remove the information instead of making it less accurate or otherwise obfuscating it.

    I believe that this same principle holds for pretty much all timing attacks.

    1. Re:How to deal with timing attacks. by Anonymous Coward · · Score: 0

      Very true.

      If the random distribution has an average (and it will), then the error in your estimation will go like 1/sqrt(N)

      Keep taking more and more averages, eventually that error will get close enough to zero.

  86. Times like these by Impy+the+Impiuos+Imp · · Score: 0

    > "it is at times like this that Linux really
    > suffers from having a single dictator in
    > charge; when Linus doesn't understand a
    > problem, he won't fix it, even if all the
    > cryptographers in the world are standing
    > against him.""

    An OS dictator over 10 million times the size of Linus has been brought to its knees over lax security.

    If Linus' fantasy about mass use of his OS ever remotely comes about, the assault of 30,000 raptors and 2 million scavengers slicing at it continuously will change his tune.

    What was that about "You can fool all of the hackers some of the time, and some of the hackers all of the time, but you can't fool 30,000 hackers all of the time...when they turn around, look up, and focus their attention on your OS."

    --
    (-1: Post disagrees with my already-settled worldview) is not a valid mod option.
  87. Simple Idea by Anonymous Coward · · Score: 1, Interesting

    How bout have threads be associated with a bit like NOT_OK_FOR_FOREIGN_PROCESS_HT. Most threads, having no such securtity concerns, would have the bit off and the kernel would schedule them as normal. Threads for crypto would set the bit on and then the kernel would only schedule those threads to run with threads of the same process on the same physical processor at the same time.

  88. Ravenous Bugblatter beast approach to security by fodZ · · Score: 1
    Until someone writes code either way, the issue is unproven

    The Ravenous Bugblatter Beast of Traal approach to security:

    The Ravenous Bugblatter Beast is so mind-bogglingly stupid that it thinks that if you can't see it, it can't see you. Therefore, the best defense against a Bugblatter Beast is to wrap a towel around your head. - Hitchhiker's Guide to the Galaxy, Douglas Adams

    Microsoft used to have the same attitude about dictionary attacks on passwords until l0phtcrack came out. But the underlying issue was proven long before l0phtcrack came out.

    Moreover, this general class of attacks was proven about 10 years ago and several times since then. Proven in theory and demonstrated with code.

  89. Oh no! All of the cryptographers are against him! by Anonymous Coward · · Score: 0

    I'm glad that when cryptographers say "you should encrypt the swap space, otherwise people who steal the machine might find cleartext passwords in it!!", Linus says "that's retarded, it's not going in main".

  90. [E]ven if all the cryptographers ... by Anonymous Coward · · Score: 0

    "...he won't fix it, even if all the cryptographers in the world are standing against him."

    I'm sitting down you idiot! What about all the cryptographers
    in the world who happen to be sitting down at the time?

    What about all the cryptographers who are taking a shower ...
    not that you ever take a shower not withstanding.

    Piss off fagget! What's the problem? Haven't had dick to suck
    today?

    I don't expect you to understand English you insentitive clod.

    Toodles

  91. Re:Well, as long as we're making stupid arguments. by Urkki · · Score: 1
    • Compare: making all users run as root to speed up login times.

    There's value in user identification, it makes it possible to have different files and settings for different users. There's no intrinsic value in disabling HyperThreading (except in cases where it actually increases performance, but I think that's very rare in practice). But giving root access to every account is a problem we haven't been able to solve. There are various half-assed attempts, like sudo and groups in Unix, or Power User status in WinXP, but frankly they suck, we put up with crap like that only 'cos we don't have anything better (or, as most people with Windows, just run everything as administrator).

    Of course human nature may make this an unsolvable problem, at least until we have so sophisticated AI that it can reliably decide when root access is being used for evil vs when it's being used legitimely.

    However, the HT-related security problems can be solved without any noticeable performance hit, so there's no reason to put up with disabling HT entirely.
  92. The "Official" Kernel by CarpetShark · · Score: 1

    Nevertheless, there is an official kernel which carries more weight than others, and Linus is in charge of it. That could be changed so that people vote on what goes into the kernel, perhaps with a well-defined policy for what's OK, so that votes don't have to take place in simple cases. But it doesn't, so people complain.

  93. Not just multithreaded CPUs, SMPs too by renuk007 · · Score: 1

    If I read the article correctly, this problem would affect all multiprocessor systems to various degrees. In which case Linus is right; the solution will have to be very, very carefully designed to hit all the possible problems at once, or it won't be worth doing. It may require some hardware assist from the CPU manufacturers if a fool-proof solution is to be found.

  94. Re:Dictator? (Theory vs. practice) by lpq · · Score: 1

    Yeah -- Just like in Communist Cuba, where everyone is equal and has equal access to wealth and privilege [not!].

    Theory is one thing, practice is another.

    Everyone can make changes, but will those changes ever get supported in the mainstream? It's a common misconception in the less informed ranks of the Open Source community that "anyone" (like my Aunt May, or grandma in a nursing home) can take a copy of an open source project, modify it to do what they want and recompile it and have something useful.

    Even if they could intelligently modify it, does "everyone" get the resources to fix bugs and add features to the new "fork"? Of course not. How many kernel developers can be "forked" (duplicated in full) to work on a new source fork for "everybody" who wants a slight mod here or there.

    The linux-kernel is, in my own experience, one of the easier projects to build (on x86 on a Gnu-Linux based OS). It has few (none?) external source dependencies and the development tools are included in the major, if not all distros.

    However, many OSS projects just "assume" you already have packages "X, Y & Z" installed or have the source for those projects installed in the same build tree, or the development headers & libs (at a, sometimes unspecified, specified "version") from other products installed to compile and link against. OSS-Linux-kernel based vendors are sometimes better about this -- like including build-time checks for specific packages being installed, but that "help" can be annoying if you aren't wanting to build the product in the same config as the vendor did.

    You can't clone the entire development effort of the Linux kernel by simply having the ability to physically copy the source. It requires a huge knowledge base to maintain, fix bugs in to add new hardware support, not to mention "new" features (like improved VM's, Filesystems, etc...).

    -l