Live data from Hacker News

Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

github.com

71–78 of 78 posts

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#71

While I know private keys are important and you really don't want to leak them, I have to wonder if the security community's focus on the private keys as the crown jewels that heartbleed accesses is a little misplaced. If someone can steal your private key, yes, they can now impersonate your SSL server. For HTTPS, they'll need to actually perform a DNS spoof or similar to truly exploit that change, though. I guess th…

Preface: I don't understand this stuff much at all. I was under the impression that stuff gets encrypted with the public key, and can only be decrypted with the private key. Doesn't owning the private key let you snoop on all traffic, all of the time, forever until they change the keys?

You still have to be in a spot to snoop. If you are a random hacker wanting to snoop on a Russian bank, once you get their private key, you have to now tap into the network. This is unlikely to be within your ability. You might fly to Russia and sit in cybercafe's open to catch people on the open WiFi, but it's not something that's easy.

On the other hand, as the above comment says, you can use heartbleed in other ways, such as catching people's cookies from memory, then insert those cookies into your own browser and hijack their connection.

Among the things I'm famous for is having written a proxy server you can aim your browser through in order to do cookie hijacking: https://github.com/robertdavidgraham/hamster/

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#72
post #66
post #60

Earlier quoted context omitted.

"The function of the security community is to help people realize" You say that because you are not on the other end of this and don't suffer any of the consequences as a result of the actions of people who create some of these things which make it for sure easier for more people to exploit systems. Please don't take this as an attack but your perspective is based upon your job [1] and your apparent lack of exposure…

I'd like to offer a different perspective. You're free to dismiss me as well because I currently have a similar job description to 'djcapelis, but I've also been a sysadmin and front-line IT security guy (watching IDSes, patching systems), so I have a pretty good idea what the commoditization of exploit code means. I think that things like metasploit and heartleech are an almost purely unalloyed good. In my experienc…

Exactly, how many people didn't really care about unencrypted requests over public WiFi networks until everyone and their grandson could install Firesheep? Tools to make that attack had been available forever, but only after Firesheep did many people finally accept that basically any authenticated request should be done over a secure channel.

For a huge majority of folks, some unfortunately in the position of making decisions and policy surrounding security, the attack just isn't real until there's a nicely usable and widely available tool.

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#73

This should be a useful tool on its own, but I wrote it primarily because the pattern-matching rules for Snort are inadequate. IDS vendors won't fix their stuff until I can prove they are inadequate. Ugh. In the old days the mantra of full-disclosure was "well, if we don't make exploit tools, then the vendors won't issue patches." And then it became "well, if we don't make exploit tools, then the sysadmins won't patc…

This isn't true. One of the things I'm famous for is creating "BlackICE" 15 years ago, an intrusion-detection technology that we shipped as a variety of products, such as a personal firewall, gigabit IDS, and inline protection (i.e. intrusion-prevention-system or IPS). The distinguishing feature of this technology is that we wrote "protocol-decodes" for everything. This made the product faster, able to catch more thi…

I don't think I had a problem with "heartleech" until I read this comment. What exactly does Snort's TLS decoding have to do with extracting private keys from servers? That's not the bug. The bug is OpenSSL leaking memory when it receives a malformed TLS heartbeat. You could have demonstrated that without publishing "find_private_key()".

I think you published this because it was fun to write. "Auto pwn", as you call it, has nothing to do with convincing Snort to do anything.

I don't believe you agree with Daniel Weber's argument at all. Don't dodge it by making things up. Engage with it directly. I wouldn't think it would be that difficult for you to knock down.

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#74

This should be a useful tool on its own, but I wrote it primarily because the pattern-matching rules for Snort are inadequate. IDS vendors won't fix their stuff until I can prove they are inadequate. Ugh. In the old days the mantra of full-disclosure was "well, if we don't make exploit tools, then the vendors won't issue patches." And then it became "well, if we don't make exploit tools, then the sysadmins won't patc…

Illusion of security is worse than being insecure.

I hate seeing a green lock sign next to the url in my browser. I am amazed Snowden didn't leak anything about root CAs.

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#75
post #73

Earlier quoted context omitted.

This isn't true. One of the things I'm famous for is creating "BlackICE" 15 years ago, an intrusion-detection technology that we shipped as a variety of products, such as a personal firewall, gigabit IDS, and inline protection (i.e. intrusion-prevention-system or IPS). The distinguishing feature of this technology is that we wrote "protocol-decodes" for everything. This made the product faster, able to catch more thi…

I don't think I had a problem with "heartleech" until I read this comment. What exactly does Snort's TLS decoding have to do with extracting private keys from servers? That's not the bug. The bug is OpenSSL leaking memory when it receives a malformed TLS heartbeat. You could have demonstrated that without publishing "find_private_key()". I think you published this because it was fun to write. "Auto pwn", as you call…

Because Snort's signatures can't detect 'heartleech'.

But most other IDSs can, such as Bro.

Unless there is a tool that demonstrates this, people won't believe that there is a difference between Snort and Bro, because existing tools don't show a difference.

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#76
post #73

Earlier quoted context omitted.

I don't think I had a problem with "heartleech" until I read this comment. What exactly does Snort's TLS decoding have to do with extracting private keys from servers? That's not the bug. The bug is OpenSSL leaking memory when it receives a malformed TLS heartbeat. You could have demonstrated that without publishing "find_private_key()". I think you published this because it was fun to write. "Auto pwn", as you call…

Because Snort's signatures can't detect 'heartleech'. But most other IDSs can, such as Bro. Unless there is a tool that demonstrates this, people won't believe that there is a difference between Snort and Bro, because existing tools don't show a difference.

You didn't address what I wrote. The demonstration didn't require the extraction of private key material from servers, because that's not the bug. The difference between Bro and Snort has nothing to do with private key material.

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#77
post #60

Earlier quoted context omitted.

Everytime someone writes a tool to show what is possible in public, there's some jerk giving them a hard time about it. Don't be that jerk. The function of the security community is to help people realize when they're not safe. No one likes having their bubble burst, but it's important that it get burst or people don't fix the problems. We've seen this over, and over, and over. Find a good way to improve security tha…

"The function of the security community is to help people realize" You say that because you are not on the other end of this and don't suffer any of the consequences as a result of the actions of people who create some of these things which make it for sure easier for more people to exploit systems. Please don't take this as an attack but your perspective is based upon your job [1] and your apparent lack of exposure…

You're making bad assumptions and your logic doesn't hold water. I have very much worked on teams responsible for protecting computers from breaking zero days. Most memorable for me was probably when the Debian SSH key generation bug was released. I was there that morning, writing a scanner to find all the vulnerable machines my team was responsible for (and actually racing against the scanner a colleague on my former team who had responsibility for the whole org's security was writing) and trying to get them patched as quick as possible. (Most of ours were found and patched by the time my former team put up their version of the list out, and another bunch had been patched before their scan even got to them, so we did a good job that day.) What I'm trying to say is, I know exactly what it's like. That operational experience informs my work today even though I don't have a large operational role for many machines these days. (I'm only responsible for about 40-60 machines now.)

That all aside, the job of the security community is not to make your life or my life easier. And neither you or the person I was replying to gets to be angry at someone for exposing a problem because it inconveniences you or your colleagues.

The only thing that will do you any good is to fix your shit.

Pretending that it is someone else's fault that you have to scramble to fix your shit is not okay. I think my comment was phrased bluntly, but was both truthful and appropriate. I understand the emotions that cause it, but no one who blames others for their own problems has much high ground to stand on when it comes to empathy.

Re: Heartleech: Automated OpenSSL private key extraction tool using Heartbleed

#78
post #76

Earlier quoted context omitted.

Because Snort's signatures can't detect 'heartleech'. But most other IDSs can, such as Bro. Unless there is a tool that demonstrates this, people won't believe that there is a difference between Snort and Bro, because existing tools don't show a difference.

You didn't address what I wrote. The demonstration didn't require the extraction of private key material from servers, because that's not the bug. The difference between Bro and Snort has nothing to do with private key material.

People are good at convincing themselves there is no problem. Vendors are good at convincing people there is no problem. The demonstration has to hit them over the head with the obviousness of the exploit. If the private-key pops up automatically, and a sensor didn't detect it, they have to believe. Otherwise, when the sensor doesn't fire, they'll believe that the exploit is at fault.
Post reply on HN