Slashdot Mirror


OpenSSL Bug Allows Attackers To Read Memory In 64k Chunks

Bismillah (993337) writes "A potentially very serious bug in OpenSSL 1.0.1 and 1.0.2 beta has been discovered that can leak just about any information, from keys to content. Better yet, it appears to have been introduced in 2011, and known since March 2012." Quoting the security advisory: "A missing bounds check in the handling of the TLS heartbeat extension can be used to reveal up to 64k of memory to a connected client or server." The attack may be repeated and it appears trivial to acquire the host's private key. If you were running a vulnerable release, it is even suggested that you go as far as revoking all of your keys. Distributions using OpenSSL 0.9.8 are not vulnerable (Debian Squeeze vintage). Debian Wheezy, Ubuntu 12.04.4, Centos 6.5, Fedora 18, SuSE 12.2, OpenBSD 5.4, FreeBSD 8.4, and NetBSD 5.0.2 and all following releases are vulnerable. OpenSSL released 1.0.1g today addressing the vulnerability. Debian's fix is in incoming and should hit mirrors soon, Fedora is having some trouble applying their patches, but a workaround patch to the package .spec (disabling heartbeats) is available for immediate application.

303 comments

  1. Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 5, Informative

    "We have tested some of our own services from attacker's perspective. We attacked ourselves from outside, without leaving a trace. Without using any privileged information or credentials we were able steal from ourselves the secret keys used for our X.509 certificates, user names and passwords, instant messages, emails and business critical documents and communication."

    Yikes. And it's been known for 2 years. That's some shit!

    1. Re:Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 2, Informative

      Existed != Known. Unknown if known until now.

    2. Re:Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 0

      To clarify, TFS is not accurate. 2012 is when the version began to be rolled out in distributions, but that doesn't mean the exploit was known.

    3. Re:Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 0

      Not "known for 2 years". Existed for 2 years. Unless the blackhats knew about it from day one.

    4. Re:Gee, that's worse than no encryption isn't it? by buchner.johannes · · Score: 1

      If only they had written OpenSSL in Java instead of C! I'm wondering how many friends I can get on Slashdot with that statement.

      ..., I think that we need to do three things:

        1) Pay money for security audits of critical security infrastructure like OpenSSL
        2) Write lots of unit and integration tests for these libraries
        3) Start writing alternatives in safer languages

      Given how difficult it is to write safe C, I don't see any other options. ...

      (from http://blog.existentialize.com..., someone else linked this below).

      --
      NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    5. Re:Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 0

      Then they sued themselfs?

    6. Re:Gee, that's worse than no encryption isn't it? by Eunuchswear · · Score: 1

      If only they had written OpenSSL in Java instead of C!

      No, it should obviously be written in something anyone can understand, php maybe?

      --
      Watch this Heartland Institute video
    7. Re:Gee, that's worse than no encryption isn't it? by BitZtream · · Score: 1

      So basically ... you want to use some other language ... that itself was written in C ...

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    8. Re:Gee, that's worse than no encryption isn't it? by TheCarp · · Score: 1

      No, they should keep newbs out of it by writing it in something only real programers understand....raw unadorned machine code, by using a hex editor on the raw disk partition.

      --
      "I opened my eyes, and everything went dark again"
    9. Re:Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 0

      And your point is?..

      Whichever language you use, it ultimately reduces to machine code, which - gasp! - not only doesn't have bounds checking, but doesn't even have concept of types. Ergo, safe languages will be impossible until we completely change the underlying computing architecture and for now we can just pack up and go home...

    10. Re:Gee, that's worse than no encryption isn't it? by Lennie · · Score: 3, Insightful

      "known for 2 years"

      No, no, this has been the code part of the stable release of OpenSSL for 2 years. The bug has only been known by non-blackhats for up to a few weeks.

      If anyone else like a blackhats or NSA or whoever knew about the bug before hand, we don't know.

      --
      New things are always on the horizon
    11. Re:Gee, that's worse than no encryption isn't it? by Eunuchswear · · Score: 1
      --
      Watch this Heartland Institute video
    12. Re:Gee, that's worse than no encryption isn't it? by Anonymous Coward · · Score: 1

      If only Java hadn't tarnished the image of managed languages so badly by being such an incompetently cobbled together behemoth, we might have more sensible managed runtimes used by more programmers. The whole thing is a complete tragedy.

    13. Re:Gee, that's worse than no encryption isn't it? by Anonymuous+Coward · · Score: 2
      I wonder how used was that heartbeat extension.

      Was it automatically enabled?

    14. Re:Gee, that's worse than no encryption isn't it? by savuporo · · Score: 1

      Because Java security implementations are WIDELY KNOWN to be super secure...

      --
      http://validator.w3.org/check?uri=http%3A%2F%2Fwww.slashdot.org Errors found while checking this document as HTML5!
    15. Re:Gee, that's worse than no encryption isn't it? by lennier · · Score: 1

      If only they had written OpenSSL in Java instead of C!

      Arguably all the recent security holes in Java are exactly because they wrote extensions and libraries in C/C++ and not in Java.

      A real language - like, say, UCSD Pascal in 1978 can compile itself to its own virtual machine just fine...

      But admittedly the resource requirements to host a system like that that are pretty steep - you'd need at least 128K of RAM. Still, I like to dream that one day....

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
    16. Re:Gee, that's worse than no encryption isn't it? by lonecrow · · Score: 1

      It has not been known for two years. It has existing for two years and only recently discovered...by the good guys. God only knows when the bad guys discovered it, you would have to ask them.

    17. Re:Gee, that's worse than no encryption isn't it? by rmstar · · Score: 1

      3) Start writing alternatives in safer languages

      Like Ada.

      I expect Ada to make a comeback. It is a safe language, but without the bizarrness of a functional programming language, so it can be used to do actual work.

  2. Not necessarily known since 2012 by skids · · Score: 5, Informative

    Who knows who knew what and when, but the 2012 statement is a misinterpretation of TFA where they seem to be saying it essentially started "hitting the shelves" in distros about then, whereas before then it was mostly only distributed in beta builds and head code.

    1. Re:Not necessarily known since 2012 by Bite+The+Pillow · · Score: 4, Insightful

      Context: "Bug was introduced to OpenSSL in December 2011 and has been out in the wild since OpenSSL release 1.0.1 on 14th of March 2012. "

      After so many years of this shit, it has to be intentional, just so people will post corrections.

    2. Re:Not necessarily known since 2012 by FriendlyLurker · · Score: 4, Interesting

      After so many years of this shit, it has to be intentional, just so people will post corrections.

      Of course it is intentional, and yet no naming and shaming appears to be going on... why is that? Only a small handful of people are responsible for bringing this to our linux distros, and a few more responsible for keeping it there. Those people have lost the trust of the community and should never have any of their code submissions or bug priority lists accepted ever again, otherwise there is just no consequence for nefariously subverting the security of us all.

    3. Re:Not necessarily known since 2012 by Anonymous Coward · · Score: 0

      Of course it is intentional, and yet no naming and shaming appears to be going on... why is that?

      Because the rabbit hole IS deeper that you thought. Key positions in the Linux community are compromised and even faced with damning evidence of the crime like this, multiple levels are covering for each other to keep it business as usual.

    4. Re:Not necessarily known since 2012 by skids · · Score: 2

      I don't think so in this case. I normally would have waited on the firehose for a submission with a better writeup, but this was relatively urgent news so I upvoted it anyway.

      (Yes someone did understand you weren't talking about the potential intentionality of the bug, don't despair there are people capable of comprehension out there and you may even meet one face to face someday :-)

  3. Thanks Jerks by s.petry · · Score: 5, Funny

    Now how are we supposed to collect people's private information without their knowledge? Think of the children and all of the terrorists captured with this exploit in the wild!

    sincerely,
    NSA

    --

    -The wise argue that there are few absolutes, the fool argues that there are no probabilities.

    1. Re:Thanks Jerks by AlphaBro · · Score: 1

      NSA here, posting from another of our sockpuppet accounts. Disregard the prior post; we've Linux so thoroughly backdoored we refer to it as "the bottom" around these parts.

      Sincerely,

      The Lords of Information

    2. Re:Thanks Jerks by Anonymous Coward · · Score: 0

      You should post that as AC. Isn't it illegal pretending to be a federal agent, even if it is obvious (to non-lawyers) that it's a joke?

      sincerely,
      NSA

    3. Re:Thanks Jerks by Anonymous Coward · · Score: 0

      I'm the NSA and so's my wife!

    4. Re:Thanks Jerks by Anonymous Coward · · Score: 0

      Yes, the Norwegian Shipowners' Association don't take kindly to impersonation.

    5. Re:Thanks Jerks by Anonymous Coward · · Score: 0

      NSA here,

      Just made an awesome play:-

      "CAZIQUES". 392 points!

    6. Re:Thanks Jerks by Anonymous Coward · · Score: 0

      Norfolk Shopkeeper's Association here, you have been warned to stop diluting our trade mark! We will take this all the way to the WTO!

    7. Re:Thanks Jerks by TangoMargarine · · Score: 2

      Disregard that; we suck cocks.

      NSA

      P.S.: All your accounts are belong to us.

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    8. Re:Thanks Jerks by TangoMargarine · · Score: 1

      Native American, Portugese, and Spanish roots. Explain to me in what possible universe this could be a legal English Scrabble play?

      http://en.wikipedia.org/wiki/C...

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    9. Re:Thanks Jerks by TheLink · · Score: 1

      In the Scrabble universe?
      http://www.howstuffworks.com/l...
      http://www.scrabblefinder.com/...

      p.s. pay more attention to the spelling, the Z is important in scrabble.

      --
    10. Re:Thanks Jerks by TangoMargarine · · Score: 1

      Well, neither Miriam-Webster Online nor Wikipedia has that definition, but apparently the argument can be made.

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    11. Re:Thanks Jerks by Anonymous Coward · · Score: 0

      Norfolk Shopkeeper's Association here, you have been warned to stop diluting our trade mark! We will take this all the way to the WTO!

      Meh, the Weevil Tinctures Outfit has yet to issue a ruling that really applies as-written to any of the Scandinavian countries.

  4. Ironic by Anonymous Coward · · Score: 0, Interesting

    Irony rears it's head on the day that patches for a Linux vulnerability are announced at the same time Microsoft ends its patching and update service for Windows XP.

    1. Re:Ironic by DigitAl56K · · Score: 5, Insightful

      Irony rears it's head on the day that patches for a Linux vulnerability are announced at the same time Microsoft ends its patching and update service for Windows XP.

      How is a vulnerability in OpenSSL, which is a library that can be compiled for multiple platforms, a "Linux vulnerability"?

    2. Re:Ironic by Anonymous Coward · · Score: 0

      Consider it's an OpenBSD project.

    3. Re:Ironic by kthreadd · · Score: 2

      You're probably thinking of OpenSSH. OpenSSL is independent as far as I know.

    4. Re:Ironic by Mitchell314 · · Score: 5, Funny

      Silly, all "Open*" projects are owned by OpenBSD. Like OpenGL. And OpenOffice. :p

      --
      I read TFA and all I got was this lousy cookie
  5. definitely news for nerds by turkeydance · · Score: 0

    jargon away!

    1. Re:definitely news for nerds by skids · · Score: 1

      Basically it means if you know any UNIX sysadmins, they'll be pretty cranky for the next week or so as they've been busy trying to put the poop back in the baby.

      Oh yeah, and lots of your gadgets and favorite cloud services may be vulnerable, so anything stored on them may be in the hands of others.

    2. Re:definitely news for nerds by Anonymous Coward · · Score: 0

      Oh yeah, and lots of your gadgets and favorite cloud services may be vulnerable, so anything stored on them may be in the hands of others.

      Irrelevant, they already are in the hands of others.
      Anything stored on a cloud service has to be encrypted first, and not be a tool provided by the cloud service.
      Unless it is supposed to be publicly accessible, then it doesn't matter.

  6. No Problem Here by sk999 · · Score: 5, Funny

    Never trusted openssl - only use GnuTLS.
    http://www.theregister.co.uk/2...

    1. Re:No Problem Here by Anonymous Coward · · Score: 0

      I think you missed the sarcasm. He even included a link..

    2. Re:No Problem Here by DarwinSurvivor · · Score: 1

      Whoops, must have thought it was part of his signature when i read it!

    3. Re:No Problem Here by savuporo · · Score: 1

      PolarSSL, CyaSSL, SharkSSL are my go to choices. CyaSSL even offers limited API compatibility with OpenSSL.

      Botan is also a good alternative if you are writing in decently modern C++.

      --
      http://validator.w3.org/check?uri=http%3A%2F%2Fwww.slashdot.org Errors found while checking this document as HTML5!
  7. I take it this is a server concern by msobkow · · Score: 1

    As I can't imagine the servers I connect to being interested in snooping on my client data, I presume this bug is only a real concern for systems running services, not acting as clients.

    --
    I do not fail; I succeed at finding out what does not work.
    1. Re:I take it this is a server concern by paskie · · Score: 2

      I *think* it might be feasible to exploit your web browser to steal cookies or saved credentials if you connect to a rogue https site. Credentials are always nice for spamming. If you convince people to keep you open in another tab, you might get lucky and snoop some credit card numbers or banking credentials too. A regular person should fear mainly automated attacks like this.

      (Please do prove me wrong if I didn't get the attack potential here right.)

      --
      It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams
    2. Re:I take it this is a server concern by skids · · Score: 1

      You really think the guy behind hotgritsnatalyportmanphotos.org is trustworthy?

    3. Re:I take it this is a server concern by cbhacking · · Score: 5, Interesting

      No, you got it quite right. A server could grab browsing history, JS memory contents, stored passwords, and authentication cookies from a browser. It's not just web browsers, though; a malicious server could also steal email (from other email accounts) out of a mail client, and so on. For the handful of services that use client certificates, a server could steal the *client's* secret key.

      Browsers (or other clients) that use multiple processes have some degree of safety, as this exploit can't read across process boundaries. It's also completely passive; just because every Chrome tab *can* get the cookies that are currently being used in every other Chrome tab doesn't mean that they are always loaded in each tab's process' address space (though I don't know if they are in practice or not).

      Still, this is a grade-A clusterfuck security-wise. The ability for an unauthenticated attacker (all you need is an open TLS connection; that could be the login screen) to read memory off the other side of the connection is the kind of exploit you can make movie-grade "hacker" scenes out of. For a simple example you might see somebody pulling, you could use this exploit to decrypt any connection you recorded, assuming the server hadn't rotated its private key since then. If you can be fast enough and are in an intercept (MitM) position rather than just monitoring passively, you could even grab the keys in real-time and have complete control, invisibly, over the connection. From there, you could even read memory from the client and (continue reading from) the server at the same time!

      You could probably do it automatically using a Raspberry Pi hiding behind the flowerpot in a café. I'm not joking.

      I've been in the security world for years and I don't think I've ever seen so bad a vuln. Yes, things like "goto fail" were mind-blowingly stupid, but they still only let you MitM connections if you were in the right place at the right time. This one is strictly better and enables a huge number of alternative attacks.

      --
      There's no place I could be, since I've found Serenity...
    4. Re:I take it this is a server concern by GigaplexNZ · · Score: 1

      If you store data on servers (hello cloud) then as a client you should be concerned.

    5. Re:I take it this is a server concern by AHuxley · · Score: 1

      It really depends on the end game for *you*.
      Client data might be used for "full spectrum" efforts e.g. propaganda, deception, mass messaging, pushing stories, spoofing, alias development or psychology.
      i.e. the service you use is weekend.
      The other aspect is how many groups knew of this crypto trick? The US and just a few friendly govs, their staff, their contractors and any ex staff or staff open to faith or cash needs.
      Just another way in :)
      http://www.businessweek.com/ar...

      --
      Domestic spying is now "Benign Information Gathering"
    6. Re:I take it this is a server concern by IamTheRealMike · · Score: 4, Informative

      I don't think Chrome uses OpenSSL, although they are thinking about switching to it. They use NSS, same as Firefox. I'm not sure any browsers use OpenSSL - it's mostly used on the server.

    7. Re:I take it this is a server concern by Anonymous Coward · · Score: 0

      What about the server implementation? If the user isn't using OpenSSL but the server is, doesn't that mean the session is still vulnerable?

    8. Re:I take it this is a server concern by cbhacking · · Score: 1

      An awful lot of mobile apps use it, though (I've heard rumors that this includes some mobile browsers). I just tested an app using the POC at https://github.com/Lekensteyn/... on a fairly sensitive app and it worked, dumping (decrypted) HTTPS requests/responses that the app had done, plus some SSL data. It works before the client (such as an app) has a chance to verify the server certificate, too; this makes MitM trivial.

      One potential attack is to wait for an app to connect to a server over SSL, at which point a symmetric key will be generated. The attacker then MitM's the next connection the client tries to make and dumps memory. With some luck, this could include the symmetric key for the first connection, allowing the attacker to decrypt any recorded (or ongoing) traffic, and to intercept any ongoing communication using that key.

      --
      There's no place I could be, since I've found Serenity...
    9. Re:I take it this is a server concern by hobarrera · · Score: 1

      Even if nobody cares about your data/nobody exploits it, the hole is still there.

  8. Ubuntu by goodgod43 · · Score: 1

    sudo apt-get update && sudo apt-get upgrade.
    Generate and distribute new keys.
    Problem soved.

    --
    "On the Internet, nobody can hear you being subtle." -Linus Torvalds
    1. Re:Ubuntu by rubycodez · · Score: 1

      nope.

      you have to reboot after update for this one. but thanks for playing

    2. Re:Ubuntu by Anonymous Coward · · Score: 0

      Nope, OpenSSL changes binary interfaces in every release, and demands that everything static links it, so if you have even one project that's a little behind in updating their code for a new binary interface, you're screwed.

      If I remember rightly, this is exactly why Apple moved away from OpenSSL -at least with goto fail, they were able to magically fix all processes with one library update.

    3. Re:Ubuntu by MikeBabcock · · Score: 1

      sarcasm? you never have to reboot to restart services.

      --
      - Michael T. Babcock (Yes, I blog)
    4. Re:Ubuntu by kthreadd · · Score: 1

      That's absolutely not the case. OpenSSL has a stable ABI within each major release, like 0.9.8 or 1.0.1. This is no different from any other library. They have a slightly odd version scheme compared to most other libraries but that's about it.

    5. Re:Ubuntu by Anonymous Coward · · Score: 0

      Indeed. and we even have "checkrestart" in Debian and Ubuntu, to track down anything that still has an executable or library open that was removed/updated, so we can be quite sure no leftover copies of the security hole are still active...

      Unless systemd/upstart/openrc is some sort of crap that cannot re-exec itself and its sub-daemons while preserving state. It is not an issue with sysvinit, which can re-exec and replace itself in-place just fine.

    6. Re:Ubuntu by Anonymous Coward · · Score: 0

      Actually, no, that's not how most libraries behave. The norm with a library is that a new major version may include new ways of doing things, and deprecate old ones, but the old ones will in general keep working. This will usually continue for a decent number of major versions (usually around 3 or 4), until finally the old way of doing things is removed. This gives people time to transition, and allows people to continue to link against new versions during the transition.

      There's a reason why it's recommended to static link OpenSSL, unlike the sane libraries out there.

    7. Re:Ubuntu by Anonymous Coward · · Score: 0

      If what you're saying is true then I've never seen it. Try running a GTK+ 2.0 app with GTK+ 3.0.

    8. Re:Ubuntu by rubycodez · · Score: 1

      yes sarcasm. restart (not reload).

  9. I do impressions by Tablizer · · Score: 0

    Bill Gates as a hacker:

    "64k chunks ottah be enough for anyone."

  10. Theo? by Anonymous Coward · · Score: 1, Funny

    Could someone please give Theo a heap of grief over this from me? He's always so quick to bag out GnuTLS and others when they have an issue. Only fair he gets a share of what he dishes out. Besides, this seems to be even worse than a "goto fail"...

    1. Re:Theo? by Lunix+Nutcase · · Score: 1

      I can only hope this is a clever attempt at whooshing people. Otherwise...

    2. Re:Theo? by Anonymous Coward · · Score: 1

      Could someone please give Theo a heap of grief over this from me? He's always so quick to bag out GnuTLS and others when they have an issue. Only fair he gets a share of what he dishes out. Besides, this seems to be even worse than a "goto fail"...

      Ummm, you do know that there is no relation between OpenBSD and OpenSSL, right?

      They have a slightly similar name, but that's it

      OpenSSH on the other hand, is an OpenBSD project.

    3. Re:Theo? by iggymanz · · Score: 1

      correct not their project but OpenBSD does use openssl and if you run OpenBSD 5.4 you can apply patch here:

      http://ftp.openbsd.org/pub/Ope...

      5.3 here:
      http://ftp.openbsd.org/pub/Ope...

      5.5 (to be released next month!) patch is here:
      http://ftp.openbsd.org/pub/Ope...

  11. Let's keep this to ourselves by HtR · · Score: 2

    Nobody tell the NSA about this, okay?

    --
    Have you tried turning it off and on again?
  12. git blame of the bug please by Anonymous Coward · · Score: 5, Interesting

    can someone link to the git blame of the bug please?

    1. Re:git blame of the bug please by Anonymous Coward · · Score: 5, Informative

      There's an analysis of the bug here.

    2. Re:git blame of the bug please by xanclic · · Score: 1

      http://git.openssl.org/gitweb/... probably introduced it (judging from git blame), http://git.openssl.org/gitweb/... fixed it.

    3. Re:git blame of the bug please by dkf · · Score: 2

      Mod parent up; it's very informative and worth reading.

      Whether you get anything truly interesting out of the attack is a separate matter. Fortunately, the attacker can't control where the read is from (just its length) so you're more likely to get the session key (which the attacker will have anyway) than the private key from this sort of poking around around.

      Beware memcpy()! If you don't know exactly where you're reading from and writing to and that you've got big enough memory chunks at both ends, you've got trouble. (OK, beware with memmove(), strcpy(), etc. too.)

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    4. Re:git blame of the bug please by Anonymous Coward · · Score: 0

      So it will take a few days instead of a second to obtain the secret key ? I am totally relieved to hear this. NOT.

      As the blog post says, using the C language is a no-no in ANYTHING supposed to be secure.

      See this as an alternative:

      http://sourceforge.net/projects/sappeurcompiler/

    5. Re:git blame of the bug please by pseudorand · · Score: 1

      Looks like snhenson most recently committed the two places final s2n() macro call the above linked article identifies as the line that finally sends data, as well as the n2s() that got data from the remote connection:

      https://github.com/openssl/ope...
      https://github.com/openssl/ope...

      Not sure which is worse, using the unsanitized user input (which it seems he MUST have known was user input) or the copy-n-paste coding.

      Sorry for the public shaming, but it seems he'd better at least make a case that he's not on the NSA payroll. Of course mistakenly relying on user input is the sort of mistake we've all probably made at least once, so it's quite believable that it was an honest mistake.

    6. Re:git blame of the bug please by Anonymous Coward · · Score: 0

      Beware C/C++, at least for security code, and probably for anything that isn't low level.

  13. Is this for real? by WaffleMonster · · Score: 5, Interesting

    Is there anyone on the planet using TLS heartbeats via TCP for anything except exploiting this bug? What is even the point of heartbeats without DTLS?

    Bugs are bugs yet decision to enable a mostly useless feature for non-DTLS by default in my view is not so easily excusable.

    1. Re:Is this for real? by Anonymous Coward · · Score: 3, Informative

      It's disabled in the base system OpenSSL in FreeBSD, so it can't be that critical.

      Incidentally, that also means that the summary is ... imprecise: FreeBSD, by default, isn't vulnerable to this. If you have OpenSSL from ports installed, it is - though that also means the fix is a simple package/port upgrade. (The fixed version is in ports already, and packages are, I believe, being built.)

    2. Re:Is this for real? by Anonymous Coward · · Score: 0

      I actually had USE="-tls-heartbeat" for OpenSSL on my Gentoo system, but I'm not sure why, considering the description does not seem problematic...

  14. This is good by steelfood · · Score: 2

    Well, it's not good that almost every major audit-able crypto library has been found to have trivial exploits (still waiting on issues in the Chrome and Mozilla SSL libraries).

    It's good that eyes are looking, and people are finding these things. I imagine that without Snowden's revelations, nobody would have bothered to check. And these bugs would have been found much later or not at all, allowing espionage organizations to compromise many more private communications in the interim.

    While the idea that the NSA or some other agency had a hand in these bugs is largely a conspiracy theory, the answer to whether they knew about these flaws and exploited them should be pretty obvious. After all, the NSA has probably done the very same code audits for the purpose of finding holes they can exploit.

    And before somebody says a closed-source implementation wouldn't suffer these problems, quite frankly, if all of these libraries were closed-source, we wouldn't know if there was a vulnurability at all, or for that matter if any found would be fixed. There needs to be more eyes auditing the security code, not fewer.

    --
    "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
    1. Re:This is good by Anonymous Coward · · Score: 0

      "if all of these libraries were closed-source, we wouldn't know if there was a vulnurability at all, or for that matter if any found would be fixed" No, you'd know they wouldn't be.

    2. Re:This is good by Dagger2 · · Score: 1

      While the idea that the NSA or some other agency had a hand in these bugs is largely a conspiracy theory

      Did you miss all the RSA stories?

      Whether they had a hand in this particular bug is conjecture. Whether they've had a hand in this sort of thing in general? They have.

    3. Re:This is good by mpe · · Score: 1

      While the idea that the NSA or some other agency had a hand in these bugs is largely a conspiracy theory, the answer to whether they knew about these flaws and exploited them should be pretty obvious. After all, the NSA has probably done the very same code audits for the purpose of finding holes they can exploit.

      These are "black hats" with the resources of a rich nation state to draw on. It's largely academic if they "created" or "found" such exploits. Any planted exploit is likely to look like a "bug".

      And before somebody says a closed-source implementation wouldn't suffer these problems, quite frankly, if all of these libraries were closed-source, we wouldn't know if there was a vulnurability at all, or for that matter if any found would be fixed. There needs to be more eyes auditing the security code, not fewer.

      It's also likely to be easier for a malicious entity to "slip in" exploits to proprietary code,

  15. Because nobody even attempts to run secure applica by Anonymous Coward · · Score: 1

    Because nobody even attempts to run secure applications on any other platform...

  16. Re:Things are starting to turn around by mi · · Score: 4, Insightful

    But unfortunately open source is not written by professionals, but ideologically driven amateurs and other random hobbyists.

    That's not a fair generalization. Though there are plenty of "ideologically driven amateurs" — especially in the Linux (compared to BSD) world — they are mostly found among the noisy advocates, rather than actual developers.

    Fixing this bug will be humongous amount of work, and there are likely to be even more like it in OpenSSL

    Somewhere higher up the bug is described as a "simple bounds check" — which would be easy to implement. The truth is, probably, in between somewhere.

    I am sure NSA know several more bugs like this that remain undisclosed.

    NSA, I am sure, know plenty of holes — if not custom-made by the authors doors — into proprietary software too.

    I am disappointed at the quality of open source software — especially pieces as famous and fundamental as OpenSSL, and I agree, that open source's claimed advantage of there being "thousands of eyeballs" verifying its correctness is overblown.

    But to declare it to be "losing" is a silly jump just as far in the direction opposite to the enthusiastic proclamations of the above mentioned ideology-driven advocates.

    --
    In Soviet Washington the swamp drains you.
  17. Got the update... by Eggplant62 · · Score: 1

    Linux Mint, and I'd assume Ubuntu too, has already pushed the updates out. Happy happy. Joy joy.

    1. Re:Got the update... by ewhac · · Score: 1

      For Linux Mint v17 (Qiana), maybe. However, Mint v15 (Olivia) got EOLed in January, so it may not get an update.

    2. Re:Got the update... by L4t3r4lu5 · · Score: 1

      I think what parent was saying is the current release, v16, and is patched. Either you're on Maya (LTS release) or you're doing a full upgrade at each new version. Nobody should be running v15 anymore.

      --
      Finally had enough. Come see us over at https://soylentnews.org/
  18. Um, whoosh? by cbhacking · · Score: 1, Funny

    How the fuck did this get modded up? Idiot mods (and "DarwinSurvivor", apparently) can't read a link, I guess...

    The only way this could have been stupider is if it was actually the same link, instead of merely being a link that I could tell, just from the URL, was about exactly the same issue.

    Morons.

    --
    There's no place I could be, since I've found Serenity...
    1. Re:Um, whoosh? by BasilBrush · · Score: 1

      GnuTLS is not the same as OpenSSL.

      When the GnuTLS bug came up the other week, lots of people here said it wasn't a big problem because lots of Linux software uses OpenSSL. Well that excuse just died a death with this news. BOTH common Linux SSL libraries have catastrophic security holes.

    2. Re:Um, whoosh? by cbhacking · · Score: 1

      Sure, but that's A) obvious, and B) completely irrelevant to what I said (or what DarwinSurvivor said, for that matter). Oh, and whoever modded me down: thank you for proving my point about moderator intelligence.

      --
      There's no place I could be, since I've found Serenity...
    3. Re:Um, whoosh? by BasilBrush · · Score: 1

      I'm afraid it's you that made the mistake, not the moderator. What I said was not irrelevant, you only think so because you are not understanding something correctly. Have you actually read both articles?

  19. Re:Things are starting to turn around by skids · · Score: 0

    While you're right this was very negligent for a project of the stature and importance of openssl, merely discovering this bug in closed source software would have required a fuzzer and much luck, leaving it unfixed for whoever had managed to get a a copy of the source to exploit for much longer.

    All I can say personally is I sure picked the right two years to get lazy about patching up.

  20. We're all fucked by mveloso · · Score: 5, Interesting

    Any data kept in RAM on an open-ssl box has probably been compromised. It sounds like that includes private keys, root certs, passwords, etc.

    This is why passwords etc should be encrypted in RAM. It's funny, there's a Security Technical Implementation Guides (STIG) on that very item. It always sounded sort of ridiculous, but now I know why it was there.

    1. Re:We're all fucked by r.freeman · · Score: 2

      No, "just" memory of the program that runs with libssl and to which attacker connected via ssl.
      There would need to be other exploits to cross program-program and user-user isolation.
      (well and the data/mem mapped/read/accessed by the compromised program)

    2. Re:We're all fucked by cbhacking · · Score: 4, Interesting

      Don't just encrypt them - move them out of process entirely. Have a security broker that knows your secrets, but doesn't talk to *anything* except local clients (on the assumption that if the attacker has arbitrary code execution, it's game over anyhow). Use inter-process communication to get secrets when needed, but preferably don't *ever* hold sensitive data in memory (for example, instead of using your private key directly, you ask he broker process to sign a binary blob for you, and it does so using your key and returns just the signature). Use "secure buffers" in managed code, or "secure zero" functions otherwise, to eliminate any sensitive data from memory as quickly as possible.

      Yes, this used to sound paranoid. Actually, it still does sound paranoid. But, there's now a great example of a scenario where this is a Good Idea.

      Of course, you have to make sure that broker is Really Damn Secure. Keep its attack surface minimal, make sure the mechanism by which it identifies whose key to use is extremely robust, and if possible make it a trusted part of the OS that is as secure from tampering as possible (Microsoft already has something like this built into Windows). There's also a question of how far to take it. For example, you could have the broker handle the symmetric encryption and decryption of TLS data (the bulk data part, after handshaking is completed) but that could impact performance a lot. Keeping the symmetric key in memory isn't so bad, really; it's ephemeral. However, if an attacker has a vuln like this and wants to read the traffic of a target user, they could attack the server while the user is using it, extract the symmetric key, and use it to decrypt the captured TLS stream. Keeping the key in-memory only while actually losing and (securely) purging it between response and the next request might be a good middle ground, perhaps?

      --
      There's no place I could be, since I've found Serenity...
    3. Re:We're all fucked by Viol8 · · Score: 1

      "Of course, you have to make sure that broker is Really Damn Secure. Keep its attack surface minimal, make sure the mechanism by which it identifies whose key to use is extremely robust, and if possible make it a trusted part of the OS that is as secure from tampering as possible"

      So in other words run it as root so when it gets compromised you're TRULY fucked. Yeah , genius idea. Far better is just to scatter parts of the password randomly around a block of memory and reassemble when required then delete when done.

    4. Re:We're all fucked by maswan · · Score: 1

      Any data? From a vulnerability that can read up to 64k in the process that does the TLS heartbeat? Not even with a choosable offset.

    5. Re:We're all fucked by Anonymous Coward · · Score: 1

      who said run as root? a "trusted part" of the OS might also run with "nobody" privileges and might keep completely separated memory space for each "client".

    6. Re:We're all fucked by Anonymous Coward · · Score: 0

      No. The only idiot that said anything like "run it as root" was you.

      Run it syscall-jailed. When all it can do is read,write a socket (plus "exit"), running with no other privileges and all other syscalls firewalled, well...

    7. Re:We're all fucked by mveloso · · Score: 1

      If you have something else front-ending the SSL for your process on a compromised system, only that SSL process should be vulnerable. However, that still compromises your root cert and key, AFAIK, unless your SSL handler encrypts that stuff in-RAM.

      Unfortunately, some people use SSL on tomcat or the app server directly, which means that whole app is vulnerable.

      It's too late to mitigate now, but it's something to think about down the road.

    8. Re:We're all fucked by Anonymous Coward · · Score: 0

      > scatter parts of the password randomly

      FFS. If you do this, you have to tell the computer how to reassemble the key.

      If you do *that*, then an attacker that can read the memory that has the key can also read the code to reassemble the key.

      Far better to rely on the OS's ability to prevent one user from reading another user's memory and limiting IPC to "Hey, secret-holder, please sign this for me and return the signed thing.".

    9. Re:We're all fucked by fyngyrz · · Score: 1

      Use inter-process communication

      [waves hand] Which operating systems have integrated IPC mechanisms? I mean, besides AmigaDOS?

      --
      I've fallen off your lawn, and I can't get up.
    10. Re:We're all fucked by cbhacking · · Score: 1

      Windows (NT, not sure about CE and pretty sure not 9x) and all forms of Unix and Unix-like systems have built-in mechanisms that can be used for secure IPC (where the less-trusted component can be verified securely). In fact, Windows has more than it knows what to do with, from named pipes to its various forms of Local Procedure Call.

      --
      There's no place I could be, since I've found Serenity...
    11. Re:We're all fucked by cbhacking · · Score: 1

      You don't have to run it as root. You only have to run it such that nobody *except* root can start, spoof, or debug it. It needs to be something that "clients can trust it because compromising it would mean the OS is already compromised", not something that "the entire operating system trusts it, so that if it gets compromised it can compromise everything else". I realize what I said was unclear.

      Besides, how is the attacker going to compromise it anyhow? It's not exposed to any remote services. Yes, it could be a local EoP vector if you ran it as root (so don't do that) but the only way *to* attack it is to already have arbitrary code execution on the machine.

      Oh, and your "scatter parts of the password" idea is truly, incredibly, awful. Not only does that provide no real security (just obfuscation at best; it's still vulnerable to an attack like this with a bit more effort), it adds a lot of wasted effort. We're trying to build actual security here, not DRM...

      --
      There's no place I could be, since I've found Serenity...
    12. Re:We're all fucked by Viol8 · · Score: 1

      Right, because stuff scattered around memory is just as easy to read is if it was all inline. Utter shit that only a dolt would think of today.

      Btw, theres a well known phrase hidden in the letters - in order - in the paragraph above. Prove your point - find it.

    13. Re:We're all fucked by fyngyrz · · Score: 1

      all forms of Unix and Unix-like systems have built-in mechanisms that can be used for secure IPC (where the less-trusted component can be verified securely).

      Huh. I was looking for a fast IPC mechanism under linux, also OSX, and all I found was TCP/UDP sockets. Secure IPC not required for my application. What did I miss?

      Under AmigaDOS, a program would open a named port and that was the basis for some awesome very high speed IPC magic, typically facilitated by intermediate Rexx scripts. I sure miss that capability. Applescript is a raging horror of limitations.

      --
      I've fallen off your lawn, and I can't get up.
  21. Chrome's SSL uses a lot of the OS certificate mana by Myria · · Score: 2

    Chrome just uses the operating system for a lot of the certificate validation of HTTPS, so it can be vulnerable to security holes that apply to the operating system. Chrome wasn't vulnerable to "goto fail", but presumably it has been vulnerable to others in Windows and Mac OS.

    --
    "Screw Sun, cross-platform will never work. Let's move on and steal the Java language." - Visual J++ Product Manager
  22. Re:Things are starting to turn around by bouldin · · Score: 2, Interesting

    Shill much?

    Two anonymous cowards with IDs less than 1000 digits apart write anti-open source posts at the same time?

  23. STIGS are pretty good. by Anonymous Coward · · Score: 0

    I started being annoyed at having someone else tell me how
    to set up security, but taken one at a time they almost all
    make sense.

  24. Re:Things are starting to turn around by Anonymous Coward · · Score: 0

    At the same time? The posts were 12 minutes apart.

  25. All those links by Arker · · Score: 3, Interesting

    But the actual announcement is not among them.

    https://www.openssl.org/news/secadv_20140407.txt

    --
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Friends don't let friends enable ecmascript.
  26. Good thing.. by Anonymous Coward · · Score: 0

    ..it was not in 640k chunks!

    1. Re:Good thing.. by Anonymous Coward · · Score: 0

      Nobody needs to read more than 64k chunks through an OpenSSL flaw.

  27. Re:Things are starting to turn around by skids · · Score: 5, Insightful

    Somewhere higher up the bug is described as a "simple bounds check" — which would be easy to implement. The truth is, probably, in between somewhere.

    It's not the fix of the code that's messy. It's the fix of the trusts using that code to function. They are all broken. After the upgrade keys need to be replaced, certificates re-issued, endpoints and clients reconfigured to trust new keys, and in some cases customers and end-users may need to be involved. For anything of CDE level security or higher, it's as big a cleanup job than the one that gave us openssl-blacklist, but the blacklist for this would be neither complete nor easy to assemble.

    I predict a lot more interest in turning on CRL pathways in the future.

  28. Windows by Kaenneth · · Score: 5, Funny

    Good thing I use WIndows, so I'm safe.

    1. Re:Windows by Anonymous Coward · · Score: 0

      "so I'm safe." -Airplane engine breaks off and hurtles through space, whistling.

    2. Re:Windows by Anonymous Coward · · Score: 5, Funny

      Unfortunately it is XP, so you are safe until 12:00.

  29. What? by Anonymous Coward · · Score: 0

    Man you're clueless. This is a case of open source fixing a security issue as soon as it's recognized, and you call it a downside?

    Hint: closed source code probably contains hundreds or thousands of these holes and they hang around unfixed for decades.

    1. Re:What? by AlphaBro · · Score: 1

      Got any actual evidence, or are you simply going to try to deflect blame away from this glaring black eye?

    2. Re:What? by Mitchell314 · · Score: 1

      All non-trivial code bases are stuffed with exploits, flaws, and vulnerabilities. Source: Just ask any competent programmer.

      --
      I read TFA and all I got was this lousy cookie
    3. Re:What? by Anonymous Coward · · Score: 1

      Hint: closed source code probably contains hundreds or thousands of these holes and they hang around unfixed for decades.

      I could as well say that open source contains hundreds or thousands of these holes and more will be discovered as time passes on. And that seems to actually be the case.

      See the original title of this thread: "Things are starting to turn around". How often these days do we hear about dangerous vulnerabilities in Microsoft software? Every day less and less. How often do we see fatal errors in open source software? More and more. Just from the recent months, there has been an X11 server vulnerability (lurking there for a cool 23 years), the GnuTLS bug and now this OpenSSL issue. All in very important system components.

    4. Re:What? by AlphaBro · · Score: 1

      Competent programmer here. Exploits are programs developed to take advantage of flaws and vulnerabilities, so most software is not "stuffed" with them. Anyway, the post I was responding to seemed to be insinuating that bugs like this go unfixed in proprietary software simply because it is proprietary. I can tell you that is not that case. There are researchers out there combing through everything, open or closed.

    5. Re:What? by Zontar+The+Mindless · · Score: 1

      Exploits are programs developed to take advantage of flaws and vulnerabilities, so most software is not "stuffed" with them.

      Non sequitur. Just because an exploit has not yet been developed for a given vulnerability does not mean that the vulnerability does not exist.

      --
      Il n'y a pas de Planet B.
    6. Re:What? by AlphaBro · · Score: 1

      What are you blathering about? I was correcting his misuse of the term "exploit". Vulnerability and exploit are often used as synonyms, but they're not.

    7. Re:What? by Zontar+The+Mindless · · Score: 1

      I read that as "potential exploits", but by all means take the point for this one--I stand corrected.

      --
      Il n'y a pas de Planet B.
    8. Re:What? by TangoMargarine · · Score: 1

      Conversely, just because no vulnerabilities have been found is not necessarily a good reason to assume a given piece of software is full of them.

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    9. Re:What? by ahodgson · · Score: 1

      Perhaps because more and more systems are being run on open source. And because it is open source, and people can read the code.

  30. Is SSH affected? by Eravnrekaree · · Score: 1

    Does this effect SSH at all? It seems more likely this would effect TSL servers such as Apache and stunnel.

    1. Re:Is SSH affected? by skids · · Score: 1

      For sshd there was possibly some protection afforded by the privilege separation model. I'd store your old keys and wait to see something from someone who knows it cold.

    2. Re:Is SSH affected? by cbhacking · · Score: 2

      Assuming it uses a version of openssl that supports the relevant TLS feature, SSH servers are absolutely vulnerable. Connect to one, carry out the attack while it waits for you to authenticate; now you can steal its secret key. This is also a way that a malicious SSH server could attack the client; possibly stealing things like the client private keys (SSH being one of relatively few places where asymmetric client authentication is common).

      --
      There's no place I could be, since I've found Serenity...
    3. Re:Is SSH affected? by Anonymous Coward · · Score: 4, Informative

      OpenSSH uses the libcrypto portion of OpenSSL for crypto primitives. It does not use TLS, and therefore SSH is not vulnerable to this attack.

      Shut the fuck up when you don't know what you're talking about.

    4. Re:Is SSH affected? by MikeBabcock · · Score: 2

      As I understand it, this is a bug in a function of OpenSSL that is used in TLS sessions which isn't used by OpenSSH. OpenSSH does not use TLS.

      Your webserver and mail server would though.

      --
      - Michael T. Babcock (Yes, I blog)
    5. Re:Is SSH affected? by Anonymous Coward · · Score: 3, Insightful

      Rather than get all aggro, I will state that I have tried to find a concrete answer to this question ("is OpenSSH vulnerable/impacted by this?"), and I still cannot. So before someone say "shut the fuck up when you don't know what you're talking about" to me, I'll provide the data (and references) I do have:

      * OpenSSH links to the libcrypto.so shared library which is absolutely OpenSSL on most systems: ldd /usr/sbin/sshd followed by strings /whatever/path/libcrypto.so.X (you'll find OpenSSL references in there). Truth: because OpenSSH links to a cryptographic library that's part of OpenSSL doesn't mean it's necessarily using the code that's bugged (see below poster's sig and note function names are DTLS-related (keep reading)), but it also doesn't mean it isn't. When was the last time you ran truss/strace with all flags (for children, all syscalls, fd I/O, etc.) and looked at it closely?

      * SSH, as a protocol, is not SSL (but keep reading): http://www.comforte.com/solutions/tls-vs-ssh/ and http://stackoverflow.com/questions/723152/difference-between-ssh-and-ssl (see replies to primary thumbs-up'd answer)

      * However, SSH does rely on at least some part of TLS, the one that's known is X.509 (a form of PKI) (but keep reading): http://www.snailbook.com/faq/ssl.auto.html

      * ...but then things like this seem to imply the OpenSSH folks don't use X.509 at all and that you have to run a special OpenSSH build for this to work: http://security.stackexchange.com/questions/30396/how-to-set-up-openssh-to-use-x509-pki-for-authentication

      * ...but then you find things like this which are open-ended and seem to imply otherwise (and the link mentioned on that blog, by the way, is also worth skimming/reading to see what's being done): http://trueg.wordpress.com/2012/09/06/use-an-x-509-certificate-for-ssh-login/

      * The "heartbleed" bug, which refers to RFC 6520, pertains to TLS: http://www.snailbook.com/faq/ssl.auto.html (yes same link)

      * There are repeated/continual news references to "use of X.509" (which could apply to either SSH or SSL from the above references) in every single news announcement. I shouldn't need to link them all.

      There is nothing even remotely definitive on either the OpenSSL or OpenSSH mailing list, and that's a bit shocking if you ask me. Therefore, to me, the OP's question is quite valid.

      Does the answer to his/her question change the severity of the situation? Yes it does. Yes you should still upgrade OpenSSL, but what some of us senior system administrators are trying to figure out is whether or not we need to inform every employee that they need to generate new SSH keys. I think everyone at this point is aware webservers (ex. nginx, Apache, etc.) doing SSL need to have OpenSSL upgraded + the daemons restarted + keys re-generated + re-signed, but the concern here is whether or not any part of OpenSSH's function calls into the OpenSSL crypto library rely on anything related to RFC 6520.

      My opinion: the reason nobody has definitive answer with references (and I hope this Slashdot post induces such) is because there's a serious disconnect between using security-focused software (end-users, SAs, companies using security software, etc.), the writing of cryptographic algorithms (cryptologists), and ac

    6. Re:Is SSH affected? by Anonymous Coward · · Score: 0

      SSH in no way relies on TLS Heartbeat. It is not affected in any way.

      The notion that it could be affected by this is preposterous on the face of it for anybody who has the faintest idea about how SSH actually works.

      SSH is *not* affected. Period.

    7. Re:Is SSH affected? by Anonymous Coward · · Score: 0

      SSH is not affected because it doesn't use TLS. TLS is a crapfest where you fall into at least one security hole with every step you take, in both specification and the implementations, if you rely on it you're a fool. Yes, that means that https:// is a joke, while at the same time the best that's available.
      The SSH developers had the sanity to not use such an abortion for their code, thus the vast majority of issues do not affect them.
      At this point it should be obvious that trying to make TLS safe is a fool's errand.

    8. Re:Is SSH affected? by rvw · · Score: 1

      Rather than get all aggro, I will state that I have tried to find a concrete answer to this question ("is OpenSSH vulnerable/impacted by this?"), and I still cannot. So before someone say "shut the fuck up when you don't know what you're talking about" to me, I'll provide the data (and references) I do have:

      So in short - if I understand you correctly:

      1) You (or we) don't know yet whether OpenSSH is vulnerable.
      2) Yes - we should create new keys.

    9. Re:Is SSH affected? by Archwyrm · · Score: 1

      Quite right. There is something hideously wrong with software so complex that no one person can definitively answer such a question about it. That said, the functionality that OpenSSH provides is entirely indispensable to my workflow.

      --
      Fascism should more properly be called corporatism because it is the merger of state and corporate power. -- Mussolini
    10. Re:Is SSH affected? by Anonymous Coward · · Score: 0

      My reading of the code is it's a TLS/DTLS protocol parser, so won't be used for any other uses of the openSSH library.

    11. Re:Is SSH affected? by Anonymous Coward · · Score: 2, Informative

      OpenSSL does many things.
      It is both a crypto library (Access to ciphers) and a TLS protocol implementation, amongst other things (eg: PKI implementation)

      This OpenSSL bug is in the TLS protocol implementation. TLS heartbeat is an optional extension to TLS.

      OpenSSH uses the crypto library component for access to ciphers.
      As OpenSSH does not use TLS, I can't fathom any reason it would be vulnerable to this particular bug.

    12. Re:Is SSH affected? by Anonymous Coward · · Score: 0

      Not my analysis:
      "It's worth pointing out that OpenSSH is not affected by the OpenSSL bug. While OpenSSH does use openssl for some key-generation functions, it does not use the TLS protocol (and in particular the TLS heartbeat extension that heartbleed attacks). So there is no need to worry about SSH being compromised, though it is still a good idea to update openssl to 1.0.1g or 1.0.2-beta2 (but you don't have to worry about replacing SSH keypairs)."

      comment on http://security.stackexchange.com/q/55076

    13. Re:Is SSH affected? by Anonymous Coward · · Score: 0

      It's simple. Does SSH use the TLS heartbeat extension? (no, it doesn't) This is the buggy code. The exploit is due to a read overrun in responding to heartbeats. Without heartbeats, you can't have this bug. SSH does not use them. x.509 is a red herring and I've no clue why you're fixated on it. This flaw can be used to steal private keys, including x.509 private pairs, but x.509 is not compromised. TLS is.

    14. Re:Is SSH affected? by hobarrera · · Score: 1

      Assuming it uses a version of openssl that supports the relevant TLS feature[...]

      That's a pretty generic response and applies to absolutely every piece of software in existance.
      It's a good think OpenSSH doesn't use any version of OpenSSL though.

  31. Yet again C bites us in the ass by rabtech · · Score: 4, Insightful

    Yet again, C's non-existent bounds checking and completely unprotected memory access lets an attacker compromise the system with data.

    But hey, it's faster.

    Despite car companies complaining loudly that if people just drove better there would be no accidents, laws were eventually changed to require seatbelts and airbags because humans are humans and accidents are inevitable.

    Because C makes it trivially easy to stomp all over memory we are guaranteed that even the best programmers using the best practices and tools will still churn out the occasional buffer overflow, information disclosure, stack smash, or etc.

    Only the smallest core of the OS should use unmanaged code with direct memory access. Everything else, including the vast majority of the kernel, all drivers, all libraries, all user programs should use managed memory. Singularity proved that was perfectly workable. I don't care if the language is C#, Rust, or whatever else. How many more times do we have to get burned before we make the move?

    As long as all our personal information relies on really smart people who never make mistakes, we're doomed.

    --
    Natural != (nontoxic || beneficial)
    1. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      I agree!

      We should all use Java.

      But Java is written in C.

      So we should use a Java interpretter written in Java.

      And for Ultra Speed and Security, we can have recursion. A java machine, running on a java machine, running on a java machine written in java.

      Who needs speed when you have security. Sure my machine takes 3 weeks to boot, but hey, it's secure.

    2. Re:Yet again C bites us in the ass by santax · · Score: 0, Flamebait

      Hi, if you don't mind, I like to do with my computers what I want. Including direct memory access. If I want to be limited I would buy something from Apple. Thanks.

    3. Re:Yet again C bites us in the ass by msauve · · Score: 1

      MS-BASIC, FTW!

      --
      "National Security is the chief cause of national insecurity." - Celine's First Law
    4. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 1

      "moron" is uncalled for.

      The point is that we need a certain capability, we can either write it ourselves, or choose to leverage significant shared effort and troubleshooting to adopt already proven code by using a library.
      Yes, you can write your own SSL stack from scratch, but most people wisely choose not to, because it would probably be full of holes.

      SO, It's a very similar situation between using a library and using managed code. What does managed code do that good C doesn't??? Nothing. So you can either implement all "that stuff" in C, or trust that someone else has done it more consistently than you will.

      And using libraries and managed code both have their downsides as well, so sometimes it's best to go "raw". I've done both, though the need for pure C in modern PC is getting pretty tiny.

      So yeah, the OP has a point, and is not a moron. Managed code doesn't have "zero flaws" but statistics clearly point out that the chances of a buffer overflow vulnerability will be vastly less in managed code than "manually managed" C. Managed/Unmanaged is a decision that should be thought through during the design phase by a smart software architect and a smart InfoSec guy, not made by "what we always do" and emotional name-calling.

    5. Re:Yet again C bites us in the ass by Eravnrekaree · · Score: 2

      Its probably possible to create a compiler mode that will compile bounds checking code into existing C programs. This would involve one compiler pass that would generate C output with the inserted code, and a second pass to generate the binary. This could be done with a new backend in Clang. It would also allow the inserted code to be easily seen since the source output could be dumped into a file. A good thing about this is that such a feature could be turned on or off in the compiler. This would be on by default in nearly all programs. Doing this is much more efficient than rewriting a lot of software in other languages.

    6. Re:Yet again C bites us in the ass by skids · · Score: 1

      Only the smallest core of the OS should use unmanaged code with direct memory access. Everything else, including the vast majority of the kernel, all drivers, all libraries, all user programs should use managed memory.

      My computer is too busy calculating an MD5 in a managed memory VM that doesn't even have an unsigned or sized integer types and thus must perform basic left barrel roll operations in about 50 opcodes worth of abstraction container dereferencing, to allow me to respond to this post appropriately.

    7. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      Your nuclear detonation of a post doesn't make me feel any more warm and fuzzy about C.

      No, bounds checking DOES work, and the best way to deal with it is to just FAIL HARD and lock up. This is the kind of tough love needed, not ONE MUST BE A MASTER OF EVERYTHING about C before you release a single line of code.

    8. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 2, Insightful

      Because "bounds checking" is no silver bullet - it's an artificial limitation that DOES slow things down, unlike seatbelts and airbags, which have infinitesimal impacts on vehicle performance.

      That's not true. Safety features like seatbelts, airbags, roll cage, etc. add an appreciable amount of weight to the car. "some hypermilers take it to the extreme, removing important safety features like rearview mirrors or even the car's airbags."

      Either that, or you're too stupid to program successfully in C.

      Apparently so are the OpenSSL developers, and all the other people who have been bitten by bounds errors over the years. Too bad there's no operating system written by perfect beings.

    9. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      Hi, if you don't mind, I like to do with my computers what I want. Including direct memory access. If I want to be limited I would buy something from Apple. Thanks.

      Apple? Who used openssl for how many years? I can't tell if you're trying to be funny or not.

    10. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      Oh, come off it! It is perfectly possible to write a fast MD5 implementation in a bounds checked language - most of the checks will even be compiled away. Even if it wasn't, we could write our super-fast MD5 in assembly or whatever and call it when needed, just like we do with other stuff.
      This bug was not in a performance critical piece of code. You could have written it in anything from Ada to Haskell or Lisp. Yes, it would have added some extra bounds checks. Which is great, because that's just what this code was missing.

    11. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      I agree that C isn't really appropriate for a lot of these tasks, especially when security is crucial. However, managed memory doesn't have to be the alternative. It's perfectly possible to have a language that requires explicit memory management but does bounds checking. Many such languages have been created, in fact, although C has outlasted nearly all of them.

    12. Re:Yet again C bites us in the ass by AlphaBro · · Score: 1

      Don't use Java and its shitty VM; there are better managed languages out there.

    13. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 1

      Some languages allow you to optionally turn off bounds checking. Funny enough, it turns out that it often doesn't make any performance at all. I'm guessing that's probably because it's a fairly cache-friendly and pipeline-friendly activity. Also, a smart compiler can often sometimes it away completely.

    14. Re:Yet again C bites us in the ass by istartedi · · Score: 2

      Yes, bounds checking is a hassle in C but throwing out the whole language isn't necessary. We could default to smart pointers and add a new type qualifier for people who want the old behavior. Dangerous code would look like:

      int unbound * foo=malloc(1024);

      It might be required to have a compiler switch to avoid breaking ABIs that are expecting simple pointers. The bounded pointer would have to be a struct with a slim pointer and a size in it that gets updated whenever the pointer mutates, and raises a signal whenever you add or subtract too much or try to index outside of it. I'm just spintballing. I'm sure there are some detail devils but it doesn't seem impossible or even unworkable. It doesn't sound like an excuse to re-write everything. You could even do something like this as a non-standard extension RIGHT NOW.

      For years people complained that C was actually slower than Fortran because of the aliasing problem, and we eventually got the restrict qualifier. So. Don't just dump the whole thing. Fix it.

      --
      For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
    15. Re:Yet again C bites us in the ass by MikeBabcock · · Score: 1

      Feel free to rewrite OpenSSL in a more secure language and still make it as generic and cross-platform as it is now, with no loss in performance.

      --
      - Michael T. Babcock (Yes, I blog)
    16. Re:Yet again C bites us in the ass by MikeBabcock · · Score: 1

      There are lots of bounds checking libraries that can be used when building applications. The hard part is writing unit tests to find all these possibilities each time a patch is submitted.

      --
      - Michael T. Babcock (Yes, I blog)
    17. Re:Yet again C bites us in the ass by EvanED · · Score: 1

      Its probably possible to create a compiler mode that will compile bounds checking code into existing C programs.

      It's somewhat possible, but not possible to do for general C programs. The CCured project has done something like this, but like I said it isn't fully general even for programs that are technically legal C. Many programs aren't and rely on specific implementations of certain undefined behaviors -- e.g. the Linux kernel needs to disable GCC's optimizations based on the strict aliasing rule, and that would almost certainly break a lot of approaches along the line of CCured.

      C is a very poorly behaved language from a formal verification standpoint.

    18. Re:Yet again C bites us in the ass by EvanED · · Score: 1

      It's somewhat possible, but not possible to do for general C programs.

      I didn't mean the second half of that to be so categorical. Saying "but probably not a practical" would have been more accurate.

    19. Re:Yet again C bites us in the ass by IamTheRealMike · · Score: 2

      Blah blah blah.

      Java 8 has a full SSL stack written in Java itself, so no buffer overflows there, and which uses AES-NI for hardware accelerated encryption if available. It also supports perfect forward secrecy and other modern features (no session tickets though).

      If you look at the CVE history of JSSE what you will find is that occasional bugs like the Heartbleed attack (not checking length fields correctly) get reported as denial of service issues because they cause managed exceptions that might, if you wrote your code non-defensively, cause your server app to quit. Or they might just cause the connection to drop, which is the right behaviour.

      It's about a million times safer than an ancient piece of 1980's style C like OpenSSL.

    20. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0
      I have to say, it takes real talent to expose yourself as an bigoted ignoramus in so few words!

      Apple's application programming language, Objective-C, is just a superset of plain C, and is consequently a lot more direct than what Microsoft and Google prefer that you use on their platforms (C# and Java, respectively). This is not necessarily a good thing, objectively speaking, but it sounds like you'll love it.

    21. Re:Yet again C bites us in the ass by gatkinso · · Score: 1

      After 20 years in C++ land I have been writing a lot of Java lately, and it is pretty nice.

      --
      I am very small, utmostly microscopic.
    22. Re:Yet again C bites us in the ass by wonderingponderer · · Score: 1

      The bigger problem with OpenSSL is their complete lack of proper comments, code documentation, and style standards. Basically I wouldn't be so quick to blame the tool if you had seen the code in the first place.

    23. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      False dichotomy. There are plenty of languages which are secure and efficient. Actually, ALGOL (and from that Pascal and Ada) was the way forward in terms of reliability and correctness. But then came Unix and C, given away for free - to infect the world with a shite language.

      C is ideal for Pax Americana - infect the world with crap that can be hacked, any time, any where.

    24. Re:Yet again C bites us in the ass by Eunuchswear · · Score: 1

      Also, a smart compiler can often sometimes it away completely.

      I see what you did there.

      --
      Watch this Heartland Institute video
    25. Re:Yet again C bites us in the ass by bill_mcgonigle · · Score: 1

      Feel free to rewrite OpenSSL in a more secure language and still make it as generic and cross-platform as it is now, with no loss in performance.

      With transistor count doubling every 18 months, isn't is sensible at some point to trade *some* performance for security?

      Real CPU usage is almost never pegged these days outside of dedicated purely-mathematical tasks.

      Security breaches are becoming *more* expensive than transistors. The only issue at this point is properly accounting for those costs and correctly assigning liability. But that's not a problem that can yet be solved with a compiler.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    26. Re:Yet again C bites us in the ass by santax · · Score: 1

      Listen, I develop hardware as a hobby, My current project is a nice oldschool z80 system. I need direct memory access. In the z80 project I use assembly language (hell, I wrote my bootloader in a hexeditor!) if I was to use a arm-cpu I would have used C for the most part. If you design your own systems or (toy) OS you absolutely need to use a language that let's you access everything. You can't boot a system without that access. It's impossible. What MS platform are you talking about? Is that the xbox or the x86? If the latter is true, I would call that a linux or bsd platform.

    27. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      You're stupid. With fewer code written in C there will be fewer stupid C bugs to fix. So you get the real experts to fix the C problems in Java/Python/etc.

      And the rest of the world writes code that can NEVER have such problems (they will have other problems but at least you've reduced stuff).

      Seems like my quip years ago on how there are at most 5 people[1] in the world who can write secure C code starts to seem less of a joke and more a sad truth.

      [1] I'm not one of them. But I see lots of delusional people on Slashdot who think they are.

    28. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      Do a "ps aux" on your Linux and imagine half of those processes running inside VMs like java (with -Xmx256m). Maybe the minimal requirements to put a single server online would be 16GB RAM.

    29. Re:Yet again C bites us in the ass by MikeBabcock · · Score: 1

      What do you think encryption is if not a purely mathematical task?

      --
      - Michael T. Babcock (Yes, I blog)
    30. Re:Yet again C bites us in the ass by lennier · · Score: 1

      What does managed code do that good C doesn't???

      Managed code does one very important thing: it guarantees that elusive quality you've just named 'goodness'. (With respect to memory access, at least).

      Goodness or otherwise of arbitrary unmanaged C code is a Turing-complete quality that, we've painfully discovered, cannot be reliably detected by either a compiler, a testing regime, or the entire planet's worth of expert C programmers given unlimited access to the code and up to two years time. That's how many coder-years? A lot.

      Goodness of managed code? It has that quality. Period. And we can go on with our lives solving instead of creating problems.

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
    31. Re:Yet again C bites us in the ass by david_thornley · · Score: 1

      You do realize that it would be easy to write something like that in C++ and be much safer, right? Use smart pointers instead of raw pointers to hold data, disallow pointer arithmetic (the GOTO of memory access) and arrays, and use std::vector instead. You lose approximately no performance, and get a lot of safety.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    32. Re:Yet again C bites us in the ass by Anonymous Coward · · Score: 0

      Bla bla bla Java bla bla

      Well... bloated VMs is not the only option for safety,
      spark/ada is a much better option: safe and formalized

  32. Passwords in RAM by Anonymous Coward · · Score: 1

    Keeping the passwords encrypted in RAM doesn't help all that much if you also have the decryption key in RAM. Which you do, because you need to use the password. Right?

    Having said that; a server should (ideally) never have a plain-text password anyway.

    1. Re:Passwords in RAM by Anonymous Coward · · Score: 0

      Yes, but it makes it more difficult because instead of looking for a possibly-human-readable char[], now they have to find both the encrypted password and the hard-coded decryption key, which will be difficult given just a memory dump.

      Please note I said difficult, not impossible. It's security through obscurity so it makes things that much more difficult but not impossible for someone with time and skills.

    2. Re:Passwords in RAM by Anonymous Coward · · Score: 0

      Keeping the passwords encrypted in RAM doesn't help all that much if you also have the decryption key in RAM. Which you do, because you need to use the password. Right?

      No.

      When you get a password, you shouldn't store it anywhere other than RAM. But you can encrypt it with a random key you store on disk. In the instant you need the password, that key needs to be in RAM. But you narrowed the window of time in which reading the RAM reveals the password.

    3. Re:Passwords in RAM by Bert64 · · Score: 1

      Also makes the code more difficult to debug, more difficult to fix, and increases the chances of exploitable bugs existing in the first place...
      How many times have security holes resulted from trying to over complicate the code?

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
  33. Yes!!! by Areyoukiddingme · · Score: 5, Funny

    *air-punch*

    I knew procrastinating Debian upgrades for most of a decade would pay off! I am VINDICATED!

    1. Re:Yes!!! by Eunuchswear · · Score: 1

      Me too!

      Was thinking of starting my Squeeze->Wheezy update next week. Guess I'll put it off for a while.

      (Of course, a decade might be too long. Do you have the infamous ssh/ssl keygen bug fixed?)

      --
      Watch this Heartland Institute video
    2. Re:Yes!!! by iroll · · Score: 1

      It was clear from the beginning that Debian accelerating its release schedule from "plate tectonic" to "glacial" would bite us all in the ass! We've flown too close to the sun yet again!

      --
      Repetition does not transform a lie into the truth. - FDR
  34. Re:Things are starting to turn around by SpankiMonki · · Score: 1

    Shill much?

    Two anonymous cowards with IDs less than 1000 digits apart write anti-open source posts at the same time?

    LOL!

  35. Re:Things are starting to turn around by Anonymous Coward · · Score: 5, Insightful

    But unfortunately open source is not written by professionals, but ideologically driven amateurs and other random hobbyists.

    That's not a fair generalization. Though there are plenty of "ideologically driven amateurs" — especially in the Linux (compared to BSD) world — they are mostly found among the noisy advocates, rather than actual developers.

    ...

    systemd devs seem bound and determined to prove you wrong there...

  36. Re:Things are starting to turn around by bouldin · · Score: 1

    Yeah, sometimes I say things so stupid, it amazes me, too

  37. Re:Chrome's SSL uses a lot of the OS certificate m by steelfood · · Score: 3, Informative

    My understanding is that Chrome and Mozilla both use NSS. It's a bit outdated, so I could be wrong (given that Google forked webkit, I can imagine them forking NSS too).

    Actually, with a quick Google search, it seems that Chrome on Android uses (used?) OpenSSL for certain functions. I'm curious to know if secure communication via Android devices can be compromised via those functions. At first glance, I'd say no, but I don't have enough domain knowledge to make this assertion.

    NSS is thus far secure, but I really, really would like to see the results of multiple full and independent audits. If there's a problem in NSS, that would be about as big as it can get.

    Like I said, it's a bit frightening that there are such large and somewhat obvious holes in these major crypto libraries found within three months of each other, but it's good to know that they're being found and fixed.

    --
    "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
  38. original eyeballs meant the FIX to a known bug by raymorris · · Score: 3, Informative

    On a side note, regarding advantage of there being "thousands of eyeballs" verifying its correctness" -
    ESR's famous quote is "with enough eyeballs, all bugs are shallow - the fix will be obvious to someone."

    The quote doesn't say anything about correctness. It says that when strange behavior is noticed, someone will see a clear fix. A shallow bug is one that's right there on the surface, where you can see the source of the problem. That's in contrast to one where you have to spend hours searching for what's causing the problem. It makes no claim of how quickly or easily a bug will be discovered - just how it can be fixed once it's discovered.

  39. It's really annoying by mikein08 · · Score: 2

    There are security vulnerabilities seemingly EVERYWHERE. Do programmers not test their code anymore? Is there no testing protocol for security issues? Is no one embarrased to have released a piece of software that's so porous? I'm retired, and I can tell you that if I had written code with the security holes that modern programs and apps seem to have, I would have been unceremoniously fired very quickly by any and all of the several employers for whom I worked in my career. But that doesn't seem to happen today, unfortunately.

    1. Re:It's really annoying by Anonymous Coward · · Score: 1

      This bug is almost 10 years old, are you sure that YOU didn't write it?

    2. Re:It's really annoying by skids · · Score: 3, Insightful

      There may seem to be more now because there is more auditing going on since the NSA revelations reminded people what had to be done, and also the slower trend of case law starting to punish mishandling of customer data. The halcyon days are over and the backlog is being cleared up.

    3. Re:It's really annoying by Anonymous Coward · · Score: 0

      No offense, but I doubt you've ever written code that comes under the level of scrutiny of something like openssl.

    4. Re:It's really annoying by putaro · · Score: 1

      Yah, like all that oh-so-secure code that used to float around back in the 70's and 80's? I remember when systems used to get hacked by dial-up modem on a regular basis. There were and have been security holes in things forever. It just used to be harder to exploit most of them remotely and there were fewer people trying to exploit them.

    5. Re:It's really annoying by jones_supa · · Score: 1

      Is there no testing protocol for security issues?

      A lot of open source code is just thrown out there with the hope of enough random people reviewing it: "with enough eyeballs, all bugs are shallow". The testing protocol you are thinking of is instead called professional code audits. That's what OpenBSD does, and it's what Microsoft puts a lot of money into. It's basically paying for the eyeballs, to ensure that those eyeballs actually exist and are possessed by competent people.

    6. Re:It's really annoying by Anonymous Coward · · Score: 0

      Produce the most, quick, for the least. Anything else is a bother. Plus it works well enough to ship.

    7. Re:It's really annoying by Anonymous Coward · · Score: 0

      What are the eyeballs doing? Skimming the function names to see where to add their new code?

    8. Re:It's really annoying by wonderingponderer · · Score: 1

      No offense, but older programs were only "secure" because 1) They were less connected and less capable (less vectors of attack) 2) They didn't know about the attacks we know about today. For instance, Windows 3.1 (iirc) had a BMP parser bug that would allow you to buffer overflow the process and run arbitrary code. Nobody in the 80s/90s would have thought of someone sending you a virus in a BMP image ...

    9. Re:It's really annoying by Eunuchswear · · Score: 1

      This bug is almost 10 years old, are you sure that YOU didn't write it?

      2011 - 2014 is 10 years now?

      --
      Watch this Heartland Institute video
    10. Re:It's really annoying by Eunuchswear · · Score: 1

      Testing is not sufficient. It becomes clear we need PROOF in things like OpenSSL and OS kernels. Getting rid of the C shite (and having memory safety) would go very long ways.

      See the L4 kernel of Uni Dresden.

      What languages is L4 written in?

      --
      Watch this Heartland Institute video
    11. Re:It's really annoying by lennier · · Score: 3, Funny

      This bug is almost 10 years old

      Well look who natively counts in binary.

      Hello Joshua! Give my regards to Dr Falken.

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
    12. Re:It's really annoying by lennier · · Score: 1

      What languages is L4 written in?

      The more relevant questions are "what is the size of the codebase of L4 written in an unmanaged language" and "is that unmanaged codebase small enough to mathematically prove its correctness" .

      There is a reason why we layer systems on top of each other, and not just because we like cake.

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
    13. Re:It's really annoying by rubycodez · · Score: 1

      not clear at all, the openssl wankers merely defeated the proper protection modern implementations of malloc/free afford with their wrapper because they didn't like the poor performance of said safety nets. there is no curing stupid with language safety

  40. Re:Things are starting to turn around by Anonymous Coward · · Score: 0

    Wow a whole two posts within 15 minutes of eachother (and around 1000 posts in between) that are critical of the value placed on the open source model with respect to security?! They must be being paid to have that opinion! Nevermind the fact that we have seen several years-old bugs across security libraries, application frameworks and the kernel itself in recent times. The idea that it is safer because it's open is fantasy, if anything these bugs are directly exposed and remain that way until there is some responsible disclosure. Now the idea that they can be fixed and pushed to all customers in a timely manner is another story, though even then it depends on the situation - take Android or Tivo for example.

    Both models have advantages and disadvantages depending on what the product is, the size of its market, the type of market, etc. and sometimes those advantages can't even be realized (again, see Android or Tivo) so anybody espousing one over the other as the one true model is a short-sighted idiot.

  41. All these bugs are mind blowing by 93+Escort+Wagon · · Score: 3, Insightful

    But, regardless of the root cause (intentional malice or just sloppiness) I'm glad eyes have been checking these code bases with more diligence over the past several months. In the end it means more security for us users, regardless of our platform of choice.

    Thank you again, Edward Snowden, for the collective wake up call!

    Now if we could just get our governing officials to fix some of these egregious laws...

    --
    #DeleteChrome
    1. Re:All these bugs are mind blowing by Anonymous Coward · · Score: 0

      But, regardless of the root cause (intentional malice or just sloppiness) I'm glad eyes have been checking these code bases with more diligence over the past several months. In the end it means more security for us users, regardless of our platform of choice.

      Thank you again, Edward Snowden, for the collective wake up call!

      Now if we could just get our governing officials to fix some of these egregious laws...

      Can we please stop crediting the NSA leaks for (among other things) security researchers looking for bugs in obscure things like... commonly used crypto libraries? It's starting to sound a little pathetic. This is what these people do for their day jobs, and it's hardly the first time we've had to run around patching our OpenSSL libraries.

      US-CERT

  42. Re:Things are starting to turn around by SpankiMonki · · Score: 1

    Heh, I also suffer from foot-in-mouth disease from time to time. And look - you got modded up! : )

  43. Re:Things are starting to turn around by AHuxley · · Score: 1

    Re " both models have advantages and disadvantages depending on what the product is, the size of its market, the type of market, etc. and sometimes those advantages can't even be realised"
    The problem with a closed source effort is what we saw with Prism http://www.theguardian.com/wor...
    The legal system and dev staff stay with the closed source product.
    With open source code - when an issue is found days, months, years later it can be corrected, fully understood and fed back into further world wide crypto education.
    The other option is to trust known weakened corporate encryption over many new versions and have faith in their legal teams ... just like you did the first few times...
    The other emerging aspect is that of US National Security Letters (NSL) for ongoing bulk collection 'efforts' vs a more global open source code.
    After Snowden many more people will be looking at crypto, with open source code someone might be able to offer reviewed, tested fixes to junk standards.

    --
    Domestic spying is now "Benign Information Gathering"
  44. Re:Things are starting to turn around by bouldin · · Score: 1

    Figures - I write a dozen thoughtful posts that get no love, but when I take a brain shart on a post, that gets the mod points.

  45. no by Anonymous Coward · · Score: 0

    you need to assume that your private keys and other SSL artifacts have been compromise. have fun regenerating your certs and getting them re-signed.

    1. Re:no by praxis · · Score: 1

      you need to assume that your private keys and other SSL artifacts have been compromise. have fun regenerating your certs and getting them re-signed.

      Re-signed by a compromised private certificate?

  46. Who committed the code? by Anonymous Coward · · Score: 1

    Any word on who was responsible for this bug?

    1. Re:Who committed the code? by Anonymous Coward · · Score: 0

      I'm too lazy to investigate myself, but it's very likely that this information can be found in the OpenSSL code commit history.

  47. Why doesn't the DNS distribute public keys? by Anonymous Coward · · Score: 0

    Turning DNS registrars into CAs would be great because everyone knows exactly who owns yourbank.com. Key revocation would be easy, just publish a new key in your DNS record. Get a SSL page with the wrong key? Check the DNS record.

    1. Re:Why doesn't the DNS distribute public keys? by Anonymous Coward · · Score: 0

      It's called DANE and it's not used because it relies on DNSSEC (you can't trust the public key to be correct if the DNS entry may have been tampered with). Considering how long the adoption of SNI is taking, I doubt a switchover to DANE will happen any time soon.

    2. Re:Why doesn't the DNS distribute public keys? by Lennie · · Score: 1

      Android 2.x is still out there for about one year. Judging by how the marketshare is dropping.

      And IE on XP is now finally dying out. I hope. Although if you draw a line to 0. It's still 3.75 years before it gets there.

      So I predict SNI is 3 years off ?

      --
      New things are always on the horizon
  48. ASLR anyone? hype? by pikine · · Score: 1

    With address space layout randomization, I can't imagine how you could probe memory for sensitive information without causing the process to randomly crash. Given how polished the website publicizing the vulnerability is, I think they're more interested in creating hype.

    --
    I once had a signature.
    1. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      And if that's defeated? http://www.fireeye.com/blog/technical/cyber-exploits/2013/10/aslr-bypass-apocalypse-in-lately-zero-day-exploits.html What then?

    2. Re:ASLR anyone? hype? by AlphaBro · · Score: 5, Insightful

      This is a read overrun, so ASLR won't save you. Ignore the guy above who posted about ASLR bypasses--that's not really relevant to this.

    3. Re:ASLR anyone? hype? by cbhacking · · Score: 1

      I've actually wondered about this too. Read overruns will crash a program just as badly as write overruns; Read AV in Windows [NT], Segmentation Fault in *nix (General Protection Fault in legacy Windows), etc. reading memory will tell you enough about the layout of memory to cherry-pick addresses pretty well, and probably to determine the ASLR mask, but you're still going to have the issue of what, within the heap, is allocated. You could probably do OK by starting from the stack (which is in a predictable enough location) and working from there, I guess?

      --
      There's no place I could be, since I've found Serenity...
    4. Re:ASLR anyone? hype? by Agent+ME · · Score: 2

      Read overruns causing occasional crashes isn't much of an issue for the attacker if the server is auto-restarting.

    5. Re:ASLR anyone? hype? by AlphaBro · · Score: 1

      I think you're confusing read overruns with more general read access violations. If you're trying to predict valid addresses, sure, you're probably going to crash the program with a read AV. However, a read overrun implies that the read begins in valid memory, so unless you hit a guard page or something while reading off the end of the buffer, you're probably in the clear.

    6. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      And Linux has precious few guard pages. One above and below the stack, and one above and below the heap. That's it. Obviouslty everything else that is not mmap'd for some reason (code, libraries, anonymous pages) will generate a segfault, but still... I wish the code segments were unreadable (only execute permission), but that not only "sometimes doesn't work" because of the kind of crap compilers do, it also trips extremely nasty memory aliasing errata on some processors (and is just plain not available on some arches, where execute and read always go together).

    7. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      Most importantly, no information is revealed by a crash. Rather, tcpdump can be used to record the attacking bytestream and a fix can be developed.

      In terms of information security, stopping work is always better than "soldiering on in the face of being subverted". Please ask Dönitz and Yamamoto for their "soldering on" experience.

    8. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      Except that it gives some notice in logs that something odd is going on. Part of the appeal of this bug is that it leaves no trace.

    9. Re:ASLR anyone? hype? by BitZtream · · Score: 3, Informative

      Read or write overruns will only throw an exception if they go beyond the bounds of the applications total allocated memory so they hit an unallocated page. (page fault)

      If you simply read into some memory that has been allocated by some other component, no exception will be thrown.

      Reading outside the bounds of the application application pages is unlikely as you'd have to be the last or close to the last allocated block (when the application space has to be grown, doesn't work if its a realloc of a previously allocated page, so lower in the address space and not near the end of allocated pages) and/or have a large overrun so you went through all the other allocated blocks.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    10. Re:ASLR anyone? hype? by benjymouse · · Score: 2

      I've actually wondered about this too. Read overruns will crash a program just as badly as write overruns; Read AV in Windows [NT], Segmentation Fault in *nix (General Protection Fault in legacy Windows), etc. reading memory will tell you enough about the layout of memory to cherry-pick addresses pretty well, and probably to determine the ASLR mask, but you're still going to have the issue of what, within the heap, is allocated. You could probably do OK by starting from the stack (which is in a predictable enough location) and working from there, I guess?

      ASLR was invented as a mitigation of "return oriented programming" which was itself a way to get around DEP/NX. As such, ASLR targets executable memory, making the memory addresses of candidate executable code fragments hard to guess. ASLR does not randomize data segments - there's no need since the original intent was to make executable locations hard to guess. Non-executable locations was not the problem ASLR tried to solve.

      And in the case it would not matter at all if the location was randomized, since this bug is an unbounded offset to a memory location. The attacker does not need to know the actual memory location, he just needs to specify a too large or too small offset to read adjacent memory. Yes, going too far could trigger a segfault, but the attacker will have dumped all memory until then. So what? The attacker can just continue the attack once the service restarts.

      The point is: The attacker does not need to know anything about the memory layout. The server already allows him to offset from a pointer to a known valid location.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    11. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      Unless the mmap/malloc combo on the O/S you're using was able to purposely put guard pages after mmaped blocks so many malloced objects would end in such guard pages. Unfortunately...

    12. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      This can be worked around at a huge TLB hit by using mmap with a non-zero addr argument so that each allocation is terminated by an unmapped page. Of course it can be more easily worked around by programming correctly so you don't shoot over the end of arrays. It can also be protected against by using a language such as Ada, Fortran, Lisp, Python, Java, etc, that has array bounds checking.

    13. Re:ASLR anyone? hype? by santiagoanders · · Score: 1

      Did you read the code? The exploit does not allow the attacker to choose an arbitrary offset. Only an arbitrary size up to 64k (i.e. not unbounded, either). The memory obtained is always adjacent to where the heartbeat request packet was stored.

      --
      "There can be little doubt that union activities lead to continuous and progressive inflation." F. A. Hayek
    14. Re:ASLR anyone? hype? by multi+io · · Score: 1

      Unless the mmap/malloc combo on the O/S you're using was able to purposely put guard pages after mmaped blocks so many malloced objects would end in such guard pages. Unfortunately...

      Apparently OpenSSL uses its own allocator on top of the libc's (malloc). I.e. it only occasionally allocates a large chunk of memory from the C heap and then does its own allocations/reallocations in that (without anything like ASLR or guard pages of course). And apparently the particular sequence in which the OpenSSL library code allocates bits of memory using this allocator leads to a situation where the private key is always deterministically located behind the heartbeat packet space in memory. AFAICT this is why this bug is so remarkably portable and "works" reliably on all platforms.

    15. Re:ASLR anyone? hype? by Anonymous Coward · · Score: 0

      Update your Windows. The link listed only unpatched Windows only exploits.

  49. RHEL / CentOS / Fedora updates now available by seifried · · Score: 4, Informative
    1. Re:RHEL / CentOS / Fedora updates now available by Jesrad · · Score: 1

      As for Debian / Ubuntu:
      The 1.0.1g package is for the testing and unstable versions (Jessie, sid), in Wheezy the bug is fixed in v1.0.1e-2+deb7u5.

      --
      Maybe we deserve this world ?
    2. Re:RHEL / CentOS / Fedora updates now available by bill_mcgonigle · · Score: 1

      yum clean metadata

      if you're not seeing the updates.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  50. Minimal jargon explanation by cbhacking · · Score: 4, Informative

    Basically, an attacker can connect to many secure Internet services - could be a banking website, or your email server, or a server hosting software updates, or possibly your corporate VPN - and learn everything that the server knows. This includes the private key (sort of like a super-complex and super-secret password) that is used to *make* the service secure. The attacker can then get all the data that the server sees, ranging from normal user passwords to all your emails and banking info.

    This vulnerability is many, many kinds of bad. I'm simplifying a lot here. Basically, an awful lot of data is at risk right now, because of this bug.

    This site has a pretty great explanation that most people likely to be found on /. will be able to follow, even if not normally security types: http://heartbleed.com/

    --
    There's no place I could be, since I've found Serenity...
    1. Re:Minimal jargon explanation by cbhacking · · Score: 1

      Oh, just an addendum: This works against clients, too. So if an attacker can get between your smartphone and the Internet - really easy if using a public WiFi access point, such as at a café - they can dump all the secrets that your client knows when it tries to connect to its server. This could be stored images, messages, passwords, cached details of any kind, and so on. This can happen even if the server is *not* vulnerable, so long as the client is.

      Seriously, scary bug.

      --
      There's no place I could be, since I've found Serenity...
  51. Re:Things are starting to turn around by Anonymous Coward · · Score: 0

    this is another example of open source advocates trying justify their idea of it being the one true model by attempting to solve the problem in the middle, rather than at the source. ultimately if they want to spy on you they will, one way or another and just securing your own computer wont help you.

    this problem is at the legislative government level and that is where it needs to be solved, not at chasing your tail trying to secure your computer because as we have seen the vulnerabilities run rampant for years anyway. same thing goes for the DRM/copyright issues, the problem needs to be solved at the content production level, creating a free system in the middle doesnt help when the content producers wont permit you to have their content and infringing on DRM/copyrights only makes for a more hostile environment.

  52. The problem is C by Anonymous Coward · · Score: 0

    How much more of this has to happen before people admit that C is not an appropriate language for writing security-critical software?

    1. Re:The problem is C by kthreadd · · Score: 1

      And what would be an appropriate language for writing security-critical software?

    2. Re:The problem is C by Anonymous Coward · · Score: 0

      Basically write as little code in C as possible. Zero is actually possible in many scenarios nowadays thanks to Intel and AMD. Even if you just write stuff in Python you can easily avoid a whole bunch of stupid bugs. But please avoid PHP.

      Years ago at a prev workplace I actually wrote a DHCP server in perl. And I'm pretty sure that it'll never have as many remotely exploitable bugs as the ISC DHCP Server. There might be bugs in the C libraries it uses or perl itself, but given it's not doing anything extraordinary with those libraries any such bug is likely to affect millions of others too.

      Performance was never a problem (if you have thousands of DHCP requests per second you probably have some other bigger problem to worry about ;) ). It handled thousands of vlan interfaces better than ISC's DHCP server did back then.

      I've heard people say that Ada is actually quite good in terms of security, and I personally wonder if stuff like Eiffel would be good with the "Design by Contract" sort of stuff.

      If you're doing lots of concurrent stuff you might wish to look at Erlang - sometimes just picking a language that's more suitable for a task makes it a lot easier to avoid mistakes.

    3. Re:The problem is C by lennier · · Score: 1

      And what would be an appropriate language for writing security-critical software?

      How about this one? It is a little memory-hungry though - 128K of RAM isn't within everyone's budget.

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
  53. Re:Things are starting to turn around by AlphaBro · · Score: 1

    Fuzzing isn't the only way of finding vulnerabilities in closed source software, not even close. And are you saying that source is required for exploit development? That's simply not the case.

  54. Re:Things are starting to turn around by MikeBabcock · · Score: 0

    Obvious fallacy ... what coffin? Since when has open source been dying for security critical applications? Since when has it been higher on the 'oh no' list of security vulnerabilities in real distributions than Windows or anything else?

    Get your facts checked; on Windows, nobody would've found how to fix this until Microsoft did it for you (if ever). On open platforms, you can go fix this problem immediately.

    --
    - Michael T. Babcock (Yes, I blog)
  55. Re:Things are starting to turn around by the_womble · · Score: 2

    The SSL core team all appear to be professionals.

    I have not checked, but most of the contributors probably are too.

    The same is true of most big open source projects (like the Linux Kernel).

    The differences are:

    1) There is better disclosure of bugs in open source
    2) some bugs can be discovered by third party audit (as the GNUTLS bug was)

  56. Does it affect my laptop? by Anonymous Coward · · Score: 0

    1.0.1c-3ubuntu

    I'm sure the version is so much ubuntu tweaked that it doesn't contain the bug!

    1. Re:Does it affect my laptop? by kthreadd · · Score: 1

      It did affect your laptop, but it is patched if you have kept up with installing security updates. Ubuntu backports important fixes like this one but the version number will still be reported as the base version Ubuntu uses.

    2. Re:Does it affect my laptop? by Eunuchswear · · Score: 1

      dpkg -l 'libssl*'

      --
      Watch this Heartland Institute video
  57. Children? by Anonymous Coward · · Score: 0

    Why would NSA want to capture the children in the wild?

  58. To check your OpenSSL version... by WoTG · · Score: 1

    To get your version, run:

    openssl version

    Yes, I looked it up... in hindsight, I guess it was kind of obvious and I should have been able to figure it out. Anyway, it's done. Hope it saves someone a few seconds....

    1. Re:To check your OpenSSL version... by kthreadd · · Score: 1

      Unless you're running a custom version of OpenSSL, like the one on Debian. Ir reports itself as 1.0.1e, but is in fact a 1.0.1e with the specific bug fix backported.

  59. It's sad no one agrees with this. by Sanians · · Score: 2

    I don't understand why this is controversial. People consider it a bad idea to roll your own encryption code. Why isn't it a bad idea to roll your own bounds checking? Because it's easy and you won't screw it up? I'm sure people writing their own hash functions feel the same way.

    Do people seriously prioritize speed over security? Of all of the things my computer might squander its gigahertz on, squandering them by checking bounds on things that will never actually be out of bounds isn't something I can disagree with if it makes the software running on my computer more secure. It's kind of like how, when doing math problems on a test, you check your work to make sure you get the right answer. Technically it's a waste of time if you know what you're doing, but if you're concerned about your grade, you do it anyway just in case.

    Besides, if you want to whine about unnecessary wasting of CPU cycles, just look at an assembly dump of floating-point equations being solved in C as compiled by GCC. Anyone who actually knows how to do floating point in assembly language will want to cry. The round() function is a good example, as the documentation declares a specific way of rounding half-way cases which isn't what the FPU does and which anyone who knows how to use floating point math correctly will realize is a complete fucking waste of time since what the FPU does do is 100% adequate.

    1. Re:It's sad no one agrees with this. by Anonymous Coward · · Score: 0

      A properly implemented, memory-safe, optimizing Pascal, Ada or Sappeur compiler would generate programs which are less than 5% slower than their C counterparts. That is because most checks can be optimized away. Compilers already do massively complicated optimizations and removing bounds checking is a rather trivial thing in most cases.

       

    2. Re:It's sad no one agrees with this. by TangoMargarine · · Score: 1

      In other news, we can check everything quickly by not checking everything!

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    3. Re:It's sad no one agrees with this. by Anonymous Coward · · Score: 0

      Ok, for ignorants like you, I make an example:

      long long sum =0;

      for(int i=0; i = AnArray.size)
            {
                    exit(-1);//deterministic stop of program
            }
            sum += AnArray[i];//need a bounds check here
      }

      An optimizing compiler will then move the interval information from "for(int i=0; i = AnArray.size)" statement and figure that this boolean expression will ALWAYS be false. So the entire if-clause can be optimized away. No overhead at all !

      I admit that this would probably require some extra work in optimizing compilers, but this kind of technology is not new at all. Also. there are situations where optimizations cannot easily be applied. So, average overhead would be in the order of 5%, an investment well-spent in the face of cyber crime/warfare threats.

      Frank Gerlach
      Gäufelden
      Germany

       

    4. Re:It's sad no one agrees with this. by Anonymous Coward · · Score: 0

      Shit, something got messed up.
      So again:

      Programmer would code:

      long long sum =0;

      for(int i=0; i = AnArray.size;i++)
      {
                  sum += AnArray[i];//need a bounds check here
      }

      Non-optimizing compiler generates
      long long sum =0;

      for(int i=0; i = AnArray.size;i++)
      {
                  if( i < 0 || i >=AnArray.size)
                  {
                              exit(-1);//deterministic stop of program
                  }
                  sum += AnArray[i];//raw array access
      }

      An optimizing compiler will then COMPARE the integer interval information from "for(int i=0; i = AnArray.size;i++)" statement with the if-expression ( if( i < 0 || i >=AnArray.size) ) and figure that this boolean expression will ALWAYS be false. So the entire if-clause can be optimized away. No overhead at all !

      I admit that this would probably require some extra work in optimizing compilers, but this kind of technology is not new at all. Also, there are situations where optimizations cannot easily be applied. So, average overhead would be in the order of 5%, an investment well-spent in the face of cyber crime/warfare threats.

      Frank Gerlach
      Gäufelden
      Germany

    5. Re:It's sad no one agrees with this. by TangoMargarine · · Score: 1

      I was half-joking, dude. I'm not claiming compilers can't optimize.

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
  60. How to check which processes need to be restarted by deltron · · Score: 1

    Once you have upgraded your copy openssl you can determine which processes need to be restarted by running the following command (only tested on Linux):

    sudo lsof +c0 |grep DEL |grep libssl |awk '{ print $1 }' |sort |uniq

    Note that just because a process is listed here doesn't mean it is vulnerable to the leak, it just means that it is linked to the vulnerable version of libssl.

  61. Been using PolarSSL for a few years now by gatkinso · · Score: 1

    And I must say it is far simpler and clear to use.

    Two cents complete.

    --
    I am very small, utmostly microscopic.
    1. Re:Been using PolarSSL for a few years now by DaMattster · · Score: 1

      PolarSSL would be nice to use if more of the other software packages supported its libraries. I'd be curious how easy it is to use to create and manage a CA with.

  62. Older Versions Safe by StormReaver · · Score: 4, Insightful

    Distributions using OpenSSL 0.9.8 are not vulnerable

    This is why I haven't upgraded my Linux servers in 23 years.

    1. Re:Older Versions Safe by kthreadd · · Score: 1

      OpenSSL 0.9.8 is still maintained. Version 0.9.8y came out about a year ago and 0.9.8za is currently in development.

  63. Re:Linux is illegal! You are breaking the law, and by Anonymous Coward · · Score: 0

    Go fuck yourself, Steve Ballmer.

  64. Dear Sheeple by Anonymous Coward · · Score: 0

    OpenSSL is an overly complex crapola, implemented in the super-crapola "C" from Bell Labs*. One more C bug that sells out the kingdom of your servers.

    Brought To You By Your Friendly Commanding NSA General(TM).

    "Bell Labs" as in "branch of government like NSA".

    What if we used 3DES plus a pre-shared key to communicate with our bank ? Yeah, would work like a breeze and require about 3kbyte of code, instead of 5000kbyte.

  65. Re:Things are starting to turn around by Anonymous Coward · · Score: 0

    Problem is that eyeballs are not sufficient. We need Mathematical proof.

    See L4 from Uni Dresden.

    But that won't happen or they will fuck with the proofs. Or pile tons of crap onto the protocol until the proof is sufficiently complex to be impossible to perform.

    The 1% don't want secure comms of the 99%.

  66. Had the same idea like you by Anonymous Coward · · Score: 0

    See this project of mine:

    http://sourceforge.net/projects/sappeurcompiler/

    And yeah, still very much prototypical, not nice etc. But I am convinced we badly need memory safety if we actually want to do something SYSTEMATICAL. Instead of band-aids.

    1. Re:Had the same idea like you by Eunuchswear · · Score: 1

      Splendid, a programming language from a dead website.

      Nice threads, though.

      --
      Watch this Heartland Institute video
  67. Zontar's "meds" make his eyes blurry (lol) by Anonymous Coward · · Score: 0

    Zontar's "touched in the head": schizophrenic multiple personality disorder http://slashdot.org/comments.p... + manic depression http://slashdot.org/comments.p... now go take those meds, you whacko!

  68. 1.0.1-4ubuntu5.12 still vulnerable by Anonymous Coward · · Score: 0

    Running 12.04 LTS and updated openssl to 1.0.1-4ubuntu5.12

    System is still vulnerable. Seeing this reported on askubuntu as well. filippo checker confirms site is still vulnerable after upgrade

    1. Re:1.0.1-4ubuntu5.12 still vulnerable by kthreadd · · Score: 2

      Running 12.04 LTS and updated openssl to 1.0.1-4ubuntu5.12

      Which contains the patch.
      http://changelogs.ubuntu.com/c...

      System is still vulnerable. Seeing this reported on askubuntu as well. filippo checker confirms site is still vulnerable after upgrade

      Make sure you restart the service. Any processes launched before installing the patch may still include the old version of the shared library.

  69. Re:bullshit by DaMattster · · Score: 1

    I call BS. We are talking FOSS here so there can be absolutely no security issue because it was produced by a large community of do-gooders who vetted all commits for us and this means that every bug gets caught within seconds of being committed.

    It is a fact (not theory or guess) that only commercial, closed software has security flaws.

    Well, it is a security flaw/hole until it's been plugged.

  70. Heartbleed tool by Anonymous Coward · · Score: 0

    I've created an easy tool to check your site for the vulnerability.
    http://rehmann.co/projects/heartbeat/

  71. Humpty Dumpty sat on an OpenSORES wall by Anonymous Coward · · Score: 0

    HumptyDumpty/OpenSSL took a great fall. All the OpenSORES eyes and horses, and all the OpenSORES eyes and men, couldn't put OpenSSL Humpty Dumpty together again (or even right the first time, hahahaha)

  72. Re:Chrome's SSL uses a lot of the OS certificate m by Anonymous Coward · · Score: 1

    Android disables heartbeats (DOPENSSL_NO_HEARTBEATS):

    https://android.googlesource.com/platform/external/openssl/+/master/build-config-64.mk

    Chrome uses NSS, not OpenSSL, so it's a different SSL stack.

  73. *ahem* by Archwyrm · · Score: 1
    --
    Fascism should more properly be called corporatism because it is the merger of state and corporate power. -- Mussolini
  74. Quick test shows Yahoo user passwords by monkeyhybrid · · Score: 5, Informative

    Filippo Valsorda's online tool for checking web servers for the Heartbleed vulnerability is quite an eye opener. As well as telling you whether the server is vulnerable, it displays a small snippet of the memory it retrieved (there are scripts on Github that will show you the whole 64KB I believe).

    In the quick tests I did on login.yahoo.com (used for Yahoo's email and probably all other Yahoo services), I saw three different user's passwords and at least part of their usernames. And you can just sit there refreshing the page to see more! Madness!

  75. Test your servers ... by kbahey · · Score: 1

    Here is how you can test your servers to see if they are vulnerable.

    Download this Python SSL Heartbleed test script.

    Download it, rename it to ssltest.py, then run it as:

    python ssltest.py example.com

    1. Re:Test your servers ... by iggymanz · · Score: 1

      works for some things but not this particular cisco ASA

      Connecting...
      Sending Client Hello...
      Waiting for Server Hello... ... received message: type = 22, ver = 0301, length = 74 ... received message: type = 22, ver = 0301, length = 3380 ... received message: type = 22, ver = 0301, length = 4
      Sending heartbeat request...
      Traceback (most recent call last):
          File "ssltest.py", line 136, in
              main()
          File "ssltest.py", line 133, in main
              hit_hb(s)
          File "ssltest.py", line 86, in hit_hb
              typ, ver, pay = recvmsg(s)
          File "ssltest.py", line 71, in recvmsg
              hdr = recvall(s, 5)
          File "ssltest.py", line 61, in recvall
              data = s.recv(remain)
      socket.error: [Errno 54] Connection reset by peer

  76. Re:Things are starting to turn around by gumpish · · Score: 2

    Amusing fact: the primary author of systemd is the same guy that brought us pulseaudio. Why do we do this to ourselves?

  77. Check vulnerability online by Anonymous Coward · · Score: 0

    http://filippo.io/Heartbleed/ seems overloaded. You can also use http://submeet.net/tools/heartbleed.php in order to check a server's vulnerability to heartbleed

  78. Code Examples by Sanians · · Score: 2

    In other news, we can check everything quickly by not checking everything!

    His comment is more interesting than your reply makes it out to be.

    I've looked at a few disassemblies of compiled C code. GCC is already pretty good at understanding how variables interact within for() loops. If you make two nested loops, one for each index of a two dimensional array, it'll output code which simply uses a pointer that's incremented in a loop to access the array and check the pointer against a limit to determine when the loop is complete, such that the pair of for loops you wrote don't actually exist in the final code. It'll even switch the order of your nested loops if necessary to make this possible. If you perform a calculation inside of both loops that can be moved outside of one of them, it'll spot that and move the calculation outside of the inner loop. Write an equation in an unnecessarily verbose way that makes use of multiple unnecessary temporary variables? It'll notice and your temporary variables won't exist in the final code. Use the same sub-expression in multiple equations? It'll notice and calculate that sub-expression once and store it to a temporary variable. The compiler optimization isn't smart enough to turn your O(n^2) algorithm into an O(n*log(n)) algorithm, and indeed, what it does do is kind of basic, but it's still able to figure out quite a few of the more obvious optimizations, and in doing so it frees the programmer from having to worry about these more trivial things, which allows the programmer to focus their attention on things that computers aren't smart enough to do for us.

    Thus, when it comes to code like this:

    int a[100][100];
    for (int y = 0; y < 256; y++) {
        for (int x = 0; x < 256; x++) {
            a[x][y] = x * y;
        };
    };

    GCC wouldn't even think about outputting code to check the array bounds. It would check them as it compiles and decide whether to output the code without bounds checking, or, as in the case above, report that this code will always exceed the array bounds.

    GCC already looks at code in enough detail that, if you call a small function that exists in the same source file, it'll notice its small size and inline it. I once had a pair of functions that each called the other recursively and saw that it chose to inline one of them within the other. So it would likely notice that the array bounds will be just fine even if you put your loop in one function and access the array in another as long as both functions exist within the same source file so that it is able to examine both functions at the same time. So, for the most part, it would only generate bounds checking where it is actually necessary: In code where the array index comes from outside the program, or in code where the index comes from within the program but through a complex enough path that even a human couldn't safely assume that they're 100% certain the index will always be within bounds.

    So, most of the time, the compiler would correctly determine whether or not bounds checking is even necessary. Sure, sometimes it might be wrong, but humans get this wrong as well. The difference is that when the compiler gets it wrong, it'll err on the side of performing the check even when it's unnecessary, whereas humans tend to often get it wrong by leaving out the check even when it is necessary, or by attempting to perform the check but writing the code incorrectly so that the check fails.

    As long as our software is doomed be screwed up in some manner, I'd prefer it be screwed up by being a bit slower than necessary, rather than having it expose data on my computer to any web site I visit.

  79. Heartbleed attack started on 23rd March already? by Anonymous Coward · · Score: 0

    Our OpenSSL-based software was logging heartbleed attack attempts to its logs by coincidence - it started on 23rd March already.
    More details are here: http://www.seacat.mobi/blog/heartbleed

  80. private key on same memory by Anonymous Coward · · Score: 0

    was private key leak prevented if we storaged the key in kernel and encrypted/decrypted in kernel?

  81. News cycle by Indigo · · Score: 2

    Does anyone else see anything odd about the search results for this story?

    I Googled "heartbleed" around 15 minutes ago and looked through 13 pages of results. I was looking for some info a little on the hardcore side, and the Google results were kind of surprising. There were tons of big well-known sites at the very top of the list - Fox, CNN, BBC News, Reuters and Forbes, etc; then a whole lot of mainstream "tech news" sites (PC World, ZDNet and so on) and blogs (HuffPo for example), then finally some more tech oriented or actual tech ones (YCombinator, Netcraft, StackOverflow) with a tiny sprinkling of blogs and relevant support forums (Cisco). US-CERT's listing was down on page 3 or so and honestly there just were not that many "hardcore" sites to be seen.

    Running the search again after clearing cookies, the layout has changed a lot. The big news sites hits have slid way down (Fox News is on p. 3 now, for instance) with tech news and blogs moving up. All in all, the harder tech sites are floating upward and the less so are moving down. It's like the lava lamp version of a security scare.

    Wondered what other Slashdotters think, it just seems a bit... strange, somehow. Don't these things usually bubble around in the tech community for a bit before surfacing in the mainstream world? It's like every big news site on the planet picked it up simultaneously, followed by the mainstream tech news site, and finally it began to filter down into the tech world. Could just be an artifact of Google's update cycle, but it definitely piqued my curiosity.

  82. Re:Things are starting to turn around by http · · Score: 1
    Schooling time

    I am disappointed at the quality of open source software - especially pieces as famous and fundamental as OpenSSL, and I agree, that open source's claimed advantage of there being "thousands of eyeballs" verifying its correctness is overblown.

    I cant decide - am I looking at an intentional misrepresentation, or a facepalm-worthy senior moment? Linus' Law had nothing to do with verifying code. From Wikipedia,

    The law states that "given enough eyeballs, all bugs are shallow"; or more formally: "Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix will be obvious to someone."

    --
    If opportunity came disguised as temptation, one knock would be enough.
    3^2 * 67^1 * 977^1
  83. Re:Chrome's SSL uses a lot of the OS certificate m by cmarkn · · Score: 1

    Mac OS (10.9 at least) uses openssl version:
    OpenSSL 0.9.8y 5 Feb 2013
    so it shouldn't have the vulnerability.

    --
    People should not fear their government. Governments should fear their people.
  84. Re:Things are starting to turn around by StarBar · · Score: 1

    But unfortunately open source is not written by professionals, but ideologically driven amateurs and other random hobbyists.

    That's not a fair generalization. Though there are plenty of "ideologically driven amateurs" — especially in the Linux (compared to BSD) world — they are mostly found among the noisy advocates, rather than actual developers.

    Especially since a Dr Stephen Henson and the IETF member and security professional Robin Seggelmann submitted the bug, their CV:s are as professional as it gets. So please get real...

  85. A few weaks -a few years. by formfeed · · Score: 1

    "known for 2 years"

    No, no, this has been the code part of the stable release of OpenSSL for 2 years. The bug has only been known by non-blackhats for up to a few weeks.

    Yes, the heartbeat exploit popped up just recently.
    But the bug which forces users to keep data in freed buffers has been known for at least 4 years. Tedunangst calls it "exploit mitigation countermeasures" ...

  86. Don't use openSSL by Anonymous Coward · · Score: 0

    Just use NaCl those guys are pretty good

  87. Zontar - sockpuppeteer & lying libeling troll by Anonymous Coward · · Score: 0

    "You barge into discussions with your off-topic hosts file nonsense" - by Zontar The Mindless (9002) on Friday April 11, 2014 @09:51PM (#46731153) FROM -> http://slashdot.org/comments.p...

    You said my "APK Hosts File Engine" is a virus/malware http://slashdot.org/comments.p... but it's EASILY PROVABLE it's not, right there in that link too.

    Now PROVE YOUR FALSE ACCUSATION above: Show me a quote OR POST of me posting off topic on hosts where they did NOT apply... go for it!

    ---

    You avoided backing up your accusation where YOU said I say you are Barbara, not Barbie = TomHudson (same person http://tech.slashdot.org/comme... , & sockpuppeteer like you) -> http://slashdot.org/comments.p...

    Funny you can't back up your "bluster" there either, lol...

    ---

    Why, Lastly?

    You're crackers! See here multiple personality disorder http://slashdot.org/comments.p... + manic depression http://slashdot.org/comments.p...

    APK

    P.S.=> So, THIS quote below is my policy on sockpuppeteers like you Zontar = TrollingForHostsFiles (your sockpuppetry):

    "The only way to a achieve peace, is thru the ELIMINATION of those who would perpetuate war (sockpuppet masters like YOU, troll -> http://slashdot.org/comments.p... ). THIS IS MY PROGRAMMING -> http://start64.com/index.php?o... & soon, I will be UNSTOPPABLE..." - Ultron 6 FROM -> http://www.youtube.com/watch?v...

    Which quite obviously, I am, since none of you DOLTISH TROLLS are able to validly technically disprove my points on hosts enumerated in the link to my program above of how hosts give users of them more speed, security, reliability, & anonymity... period!

    (Trolls like YOU that use sockpuppets http://slashdot.org/comments.p... (your sockpuppet "alterego" TrollingForHostsFiles) & TomHudson - Barbara, not Barbie too http://tech.slashdot.org/comme... before you)

    ... apk

  88. Zontar = sockpuppeteer & lying libeling troll by Anonymous Coward · · Score: 0

    "You barge into discussions with your off-topic hosts file nonsense" - by Zontar The Mindless (9002) on Friday April 11, 2014 @09:51PM (#46731153) FROM -> http://slashdot.org/comments.p...

    You said my "APK Hosts File Engine" is a virus/malware http://slashdot.org/comments.p... but it's EASILY PROVABLE it's not, right there in that link too.

    Now PROVE YOUR FALSE ACCUSATION above: Show me a quote OR POST of me posting off topic on hosts where they did NOT apply... go for it!

    ---

    You avoided backing up your accusation where YOU said I say you are Barbara, not Barbie = TomHudson (same person http://tech.slashdot.org/comme... , & sockpuppeteer like you) -> http://slashdot.org/comments.p...

    Funny you can't back up your "bluster" there either, lol...

    ---

    Why, Lastly?

    You're crackers! See here multiple personality disorder http://slashdot.org/comments.p... + manic depression http://slashdot.org/comments.p...

    APK

    P.S.=> So, THIS quote below is my policy on sockpuppeteers like you Zontar = TrollingForHostsFiles (your sockpuppetry):

    "The only way to a achieve peace, is thru the ELIMINATION of those who would perpetuate war (sockpuppet masters like YOU, troll -> http://slashdot.org/comments.p... ). THIS IS MY PROGRAMMING -> http://start64.com/index.php?o... & soon, I will be UNSTOPPABLE..." - Ultron 6 FROM -> http://www.youtube.com/watch?v...

    Which quite obviously, I am, since none of you DOLTISH TROLLS are able to validly technically disprove my points on hosts enumerated in the link to my program above of how hosts give users of them more speed, security, reliability, & anonymity... period!

    (Trolls like YOU that use sockpuppets http://slashdot.org/comments.p... (your sockpuppet "alterego" TrollingForHostsFiles) & TomHudson - Barbara, not Barbie too http://tech.slashdot.org/comme... before you)

    ... apk