Null-Prefix SSL Attacks Enabled In New sslsniff 48
An anonymous reader writes "Moxie Marlinspike, who recently published new attacks on SSL at Defcon 17, seems to have released the new version of sslsniff which supports these attacks. While the release appears to coincide with a patch from Mozilla, every product that uses the Microsoft CryptoAPI is still vulnerable, including Internet Explorer and Outlook. The new version of sslsniff also supports built-in modes for hijacking software auto-updates that depend on SSL, and apparently includes techniques for defeating OCSP as well — making the elimination of existing null-prefix certificates difficult."
Re: (Score:1, Funny)
Re:Just to make things easier in the future (Score:4, Insightful)
every product [...] is still vulnerable,
Fixed.
Re: (Score:2)
but they've already got WIndows installed?
Appears to coincide.. (Score:5, Insightful)
appears to coincide with a patch from Mozilla
If some guy waited until Microsoft fixed a vulnerability to release a patch, but not before Mozilla fixed the patch, then we would all be crying foul.
Since it's the other way around, nobody will have a problem I'm sure.
Re:Appears to coincide.. (Score:5, Funny)
English is hard.
Re: (Score:1)
Don't forget the time machine (Score:2)
And it would require some kind of time machine to jump back before Mozilla fixed the same vulnerability.
Re: (Score:2)
Re: (Score:3, Informative)
Re:Appears to coincide.. (Score:5, Funny)
I do, it comes right after "oh-shit-we're-screwed sunday and "pwned monday".
Re:Appears to coincide.. (Score:4, Interesting)
You're absolutely right. If this guy didn't inform anyone except Mozilla, he's bringing browsers wars to a new low, by being willing to expose a majority of web users involved in e-commerce and other "secure" online access to his vulnerability for whatever the lead time of patching is, but exempting users of his favorite browser. IF that's what he did, that's ridiculous, childish, and petty.
What about all the other vendors of SSL dependent software? SSL based VPNs like OpenVPN for example. No love for them either? Just Mozilla?
It shows how people like Dan K are smart enough to recognize major vulnerabilities that can potentially affect massive amounts of service/traffic/commerce need to be handled differently. It doesn't reduce the respect you gain as a security researcher for finding such a major flaw to give vendors notification in a reasonable time period before publication. I'm all for full disclosure as a means of punishing companies that don't respond, but for larger vulnerabilities I think notification and a deadline are the way to go.
Re: (Score:1, Informative)
From the security advisory at Mozilla [mozilla.org]
Looks like MS was informed (as they certainly should have been), just considerably slower on the fix (imagine that?). How long should have Mozilla waited before releasing their fix? Until after Windows 7 ships and MS decides they can afford some dev cycles to go patch WinXP?
Re: (Score:2)
According to the article Dan K was one of the people who discovered the flaw. Why do you assume that Microsoft and others weren't notified months ago when Mozilla was?
Re:Appears to coincide.. (Score:5, Informative)
You're absolutely right. If this guy didn't inform anyone except Mozilla, he's bringing browsers wars to a new low, by being willing to expose a majority of web users involved in e-commerce and other "secure" online access to his vulnerability for whatever the lead time of patching is, but exempting users of his favorite browser. IF that's what he did, that's ridiculous, childish, and petty.
Reading the article, there seemed to be a good reason to inform Mozilla first, because they were the most vulnerable. Apparently, to spoof say Internet Explorer, you need a certificate for "www.ebay.com\0.evilhackers.com", one for "www.amazon.com\0.evilhackers.com" and so on, but to spoof Mozilla-based browsers, a certificate for "*\0.evilhackers.com" will be accepted for _every_ site in existence.
Re: (Score:1)
Re: (Score:2)
Re: (Score:3, Insightful)
Evidently Mozilla was notified as early as February. What makes you think that Microsoft wasn't notified at the same time?
Winning combination (Score:5, Funny)
Re:Winning combination (Score:5, Funny)
Moxie Marlinspike? I thought we had a new Ubuntu release. And I was wondering what happened to the L's.
C null-terminated string brain damage! (Score:1)
Gotta love that C null-terminated string brain damage!\0Heh. Stupid fsckers will never see this!!!
Re: (Score:2)
Yay, Slashdot is written in perl. ;)
Re: (Score:2)
What planet are you on? CryptoAPI is only easier if all you want is the most basic web server certificate functions. As soon as you start wanting to do any custom subjects or anything else even slightly outside the the nine dots CryptoAPI is a confusing mess.
Protocols (Score:3, Interesting)
Just wondering... will this help analysis of some "secured" protocols, maybe?
I don't know how it works, but let's say something like Steam uses SSL or similar (I have no idea if it does, just pretend)... before we couldn't do the protocol analysis without a massive reverse-engineering going on (could only see "client to server" messages because we only have access to the client's private key). Now we might be able to fool non-patched SSL programs to believe that they are talking to an authentic server without having to delve into their code and thus be able to see / fake both sides of the conversation?
Am I way off the mark, or is this now possible with unpatched programs relying on SSL etc. layers to hide their protocols?
Re: (Score:2)
If the program uses a known API for encrypted communication and is linked dynamically, one could simply provide a shared library/DLL that copies the unencrypted messages... the API implementation used doesn't even have to be open source, as one could just write an intermediary library that implements all the functions of the original and copies the data before calling the original library.
If the program dynamically links to an open-source library for encryption, or runs on Wine, you can just modify the impl
Yeah, right (Score:3, Interesting)
That is the first thing they think of. You can bet your lunch money that they statically link their crypto library, and then obfuscate the binary for good measure.
Re: (Score:2, Interesting)
Mua-ha-ha-ha.
I've run into one of those annoying runtime licensing systems that not only uses out-of-the-box static build of OpenSSL in its code, it's an older version, too.
Unobfuscated. With all the original OpenSSL symbol names. But they don't provide _all_ of OpenSSL, so you can't just use their old & busted one.
Yes, this causes a serious multiple-definition problem if you want to use that library in an SSL application.
Their "fix"? "Remove these filenames from the .a file we sent you. And these o
dot your i's and cross your t's (Score:2, Funny)
Is an "atttack" anything like an "attack"?
Re: (Score:3, Funny)
Re: (Score:2)
Well, in that case I pity the foo' who can't spell right.
Re: (Score:3, Funny)
It's an attack with Mr T in the middle.
You mean it's a man-in-the-middle attack?
The actual paper (Score:4, Informative)
Here's a link to the actual paper on the topic:
http://www.thoughtcrime.org/papers/null-prefix-attacks.pdf
NoLoveForDanKaminsky (Score:2)
You gets no love.
Tagged:noLoveForDanKaminsky
~Sticky
Interesting, but not exactly new (Score:2)
He found that if he created certificates for his own Internet domain that included null characters -- often represented with a \0 -- some programs would misinterpret the certificates.
That's because some programs stop reading text when they see a null character.
This is the same exploit used in an older Nintendo Wii jailbreak [marcansoft.com] - people just keep on using strcmp and its cousins to compare hashes.
Three parts to this (Score:2)
I saw Moxie's talk at BlackHat. Extremely good presentation. There are three things necessary to carry out this attack:
1. You need to convince a CA to sign your CR when you have a \0 in the common name.
2. You need to target a browser or other application that uses a vulnerable certificate parser.
3. You need to be able to execute a MitM attack.
And of course, there's a weak "4":
4. You need to be able to forge the OCRP "Try later" response, which is trivial since you're already "in the middle."
As far as part #