New OpenSSL Man-in-the-Middle Flaw Affects All Clients
Trailrunner7 (1100399) writes 'There is a new, remotely exploitable vulnerability in OpenSSL that could enable an attacker to intercept and decrypt traffic between vulnerable clients and servers. The flaw affects all versions of the OpenSSL client and versions 1.0.1 and 1.0.2-beta1 of the server software. The new vulnerability could only be exploited to decrypt traffic between a vulnerable client and a vulnerable server, and the attacker would need to have a man-in-the-middle position on a network in order to do so. That's not an insignificant set of conditions that must be present for a successful attack, but in the current environment, where open wireless networks are everywhere and many users connect to them without a second thought, gaining a MITM position is not an insurmountable hurdle. Researchers who have looked at the vulnerable piece of code say that it appears to have existed, nearly unchanged, in the OpenSSL source since 1998.'
"but in the current environment, where open wireless networks are everywhere and many users connect to them without a second thought"
But if you have a man in the middle position, most of those same users would have just clicked "ignore" or typed yes to the "connect anyway" prompt.
Ultimately you still need to get the encryption information across securely. The next big thing will be making encryption connection-agnostic.
No Text
Just to be clear, versions 1.01 and 1.02(beta) is the same as saying "Any OpenSSL version released since early 2012", right? It sounds like the summary is trying to downplay the threat a little bit.
The more of these we find, the more secure OpenSSL will be. I hope we continue to find these kinds of problems and see them fixed. If open source has one strength, it's that when many skilled eyes DO converge on the code it can be tested and fixed far more quickly than a corporation with limited resources and only paid developers can do the same sort of debugging work. The trick is getting the eyes there in the first place.
...and it was like ten Christmases to them. They're probably really down that they just lost one of their best toys.
"When information is power, privacy is freedom" - Jah-Wren Ryel
This flaw can only be exploited if both the client and server are running a vulnerable version of OpenSSL.
While OpenSSL is very common on the server side, it is much less common on the client side.
For example, most web browsers don't use OpenSSL.
This is a flaw, but it requires both ends use vulnerable OpenSSL versions. Which means your day-to-day life may or may not be affected that much.
I mean, if you use iOS, OS X, or Windows, you're more than likely NOT using OpenSSL on the client side (except say, if you use Firefox on Windows) - since Apple and Microsoft have their own SSL implementations. If you have an Android phone or tablet, then yes, it's quite likely an issue, and while both are popular, people generally don't use them that much for data (iOS traffic, after 7 years, has finally dropped to below 50% of all mobile traffic out there, despite Android outselling iOS by a huge margin). And nevermind the oddball Linux user.
So the real question is, how many people really ARE affected?
Heartbleed affects everyone because it exposes server secrets irrespective of the client side. But this vulnerability is only really present if both ends use OpenSSL.
If you use HTTPS from, say, your Node.js app to connect to someone's PHP-based REST service, you're vulnerable and so are your users. Wouldn't surprise me a bit if this is being used in the wild by state actors to attack entire web applications/services, in order to target just a few of their users. They don't care about collateral damage.
Given all the open-source SSL/TLS security flaws (OpenSSL, gnutls, Apple SSL) that have come out these past few months - mostly thanks to renewed interest in hunting flaws, thanks to the Snowden revelations, I suspect - I hope that companies like Microsoft are also seeing this as a wake-up call driving them to do code reviews on their closed-source SSL/TLS code.
#DeleteChrome
I mean, if you use iOS, OS X, or Windows, you're more than likely NOT using OpenSSL on the client side (except say, if you use Firefox on Windows)
Ummm, firefox uses NSS, not OpenSSL: http://en.wikipedia.org/wiki/Network_Security_Services
The real limiter for your average user is the requirement for man in the middle position.
Even without this flaw, most users will just click through any warning that comes up during a man in the middle attack.
It's still a bad thing that the mechanism designed to protect us from man in the middle is broken, but for the average user, the mechanism is already broken via apathy.
does this affect LibreSSL?
Firefox uses NSS, not OpenSSL.
If I understood it correctly, my older OpenSSL package (openssl 0.9.8o-1ubuntu4.6) should be fine, right?
So the real question is, how many people really ARE affected?
That would depend on how much, if any, of OpenSSL code was incorporated into Microsoft and Apple products regardless of the GPL. After all, 1998, was a long time ago.
That's not an insignificant set of conditions that must be present for a successful attack
But it is exactly the point of TLS, to protect against such an attacker. If you know you don't have a man-in-the-middle then you don't even need it in the first place.
True that the server might not be running that version, but a non-trivial number of them are.
That's quite the parabolic sentence there. I hope you didn't give yourself whiplash.
Corporation, n. An ingenious device for obtaining individual profit without individual responsibility. - Ambrose Bierce
Firefox has its own SSL stack across all OSes (libnss), so it shouldn't be vulnerable. AFAIK, chrome/chromium uses OpenSSL across all platforms.
A flaw just sitting in the open for 16 years? Man, surely that's impossible what with it being open source and all those fervent well-trained altruistic supposed eyes constantly scanning the code.
Clearly, this demonstrates the strength of open source software.
I agree with your assessment and conclusion, and while I can't refute that apathetic users are a problem, I submit that apathetic users should NOT be a problem. In our current state of the art, users take a lot of blame for not implementing best practices regarding credential quality, changing passwords frequently, failing to read warnings, privacy statements and terms of conditions, etc. Users are also held accountable for not updating their operating systems and the programs that ride on the (Flash, Java, Other). The real burden, in my opinion, rests solely with the experts in the field. Users are reading about Heartbleed, OpenSSL, Man In The Middle, client, server, encryption, ...
Users want to level up on Candy Crush Saga and they want to leave all that mumbo-jumbo to people like we here on this board.
I think that's fair.
It little behooves the best of us to comment on the rest of us.
After reading the advisory from OpenSSL, I'm still confused by what is vulnerable and what isn't. The flaw requires both the client and server to be vulnerable. If the client is using OpenSSL, they're vulnerable for 0.9.8/1.0.0/1.0.1. But if the server is using OpenSSL, they're only vulnerable if using 1.0.1/1.0.2(beta). Yet the bullet list of recommendations points out that servers should upgrade even if they're using 0.9.8: * OpenSSL 0.9.8 SSL/TLS users (client and/or server) should upgrade to 0.9.8za. Let's say I have a server using 0.9.8 and client using 1.0.0. If I understand their explanation correctly, then this scenario is *not* vulnerable. Is that the same conclusion others would draw from their explanation?
The project name is written as LibReSSL. Clever, clever..
Fascism should more properly be called corporatism because it is the merger of state and corporate power. -- Mussolini
There are some inconsistencies in the /. summary, or at least some wordings that make it sound worse than it is:
16 years. Nearly unchanged... nearly. What does that mean? Is that tidbit even worth mentioning? If the vulnerability had been there for sixteen years, then we wouldn't be seeing problems in versions from only the past two years. Misleading? Just ignorance? Sensationalist so used? Something doesn't add up there. Either it's a sixteen-year-old bug, or it's not. Versions 1.0.1 and 1.0.2-beta tell us this is not a teenage bug.
Perhaps it is notable that the only place this sensational "fact" comes to light is from "researchers", and even there it has no mention of the relevance for this bug and only mentions this code is "nearly unchanged", meaning it was changed.
Still believe you can secure data.
WRONG. If the server is vulnerable, your session can be hijacked. http://ccsinjection.lepidum.co...
Oh I totally agree with this. Relying on the user to "make the decision" is (or should be) the last resort when a programmer can't figure out how to deal with a situation.
In the specific area of certificate verification on web browsers, the problem has been too many false positives. Lots of people are sloppy with their certificates, and users have gotten used to the idea that any error mentioning a certificate is probably no big deal (because the other 100 times they clicked the ok button the world didn't end). This then served only to encourage people to be even more sloppy (the user will just click the warning that comes up, no big deal).
Things are moving in a good direction now, with most of the major browsers making the dialog more menacing and (in the case of firefox at least) requiring several not-so-intuitive steps, and this having the effect of making letting your certificates expire/using incorrect certificates more of a big deal because you will lose traffic. I think we are at least at a point where most users will stop when they get one of these more complicated warnings and they are doing something like banking or buying something online.
SInce most EULA prohibit you from filing al lawsuit about your use of the software there is absolutely ZERO business motivation for any corporation to even look for security vulnerabilities - let alone devote money toward fixing them when they are the only ones who know if they have a vulnerability.
any ISP would be in a middle man position and able to decrypt your SSL traffic.
Time to change ALL my passwords again.
I see a lot of comments that try to convince that "closed source isn't any better". So my actual question is: would it be some kind of sin if closed source was actually better?
...which nobody in their right mind would use anyway. Granted though, openssl is still a piece of shit.
at least my install still uses 0.9.8n though who knows what other nasties lurk in that one
regardless of the GPL
OpenSSL is BSD licensed, not GPL licensed. They can incorporate all the code they want.
read the timeline here: https://plus.google.com/app/basic/stream/z12xhp3hbzbhhjgfm22ncvtbeua1dpaa004 ...and note how openbsd was specifically excluded from being notified. the openssl guys seem like real haters.
Something does not add up. How is there a new vulnerability that's been in the source for sixteen years? How are older versions of the server code not vulnerable if it's sixteen years old?
Anyone who is trying to communicate securely yet has someone with the resources to have access to the pipes at a point along the way. The people with that kind of access and resources are generally governments, spooks, etc. eg, it's the definition of something the NSA/Iran/China/UK et all would want in order to be able to seamelessly pull off MITM attacks on traffic, and if the NSA wants it, other agencies/regimes/etc. would have real use for it too.
Basically, just about everyone is affected.
Let's itemize some of its problems:
- A codebase that seems to have been implemented by a bunch of retards.
- A documentation that is pitiful most of the time, and misleading the rest of the time.
- A constant source of deeply serious bugs.
- An absurdly complex, and very poorly documented, API that insists in forcing the application programmer to deal with aspects of the SSL/TLS protocol that ought to have been sorted out by the library.
The fact that so much of the security of the Internet depends on this sorry piece of software is scary and depressing.
how about libressl?
Is OpenVPN affected?
open source fucking sucks, it's a failed experiment.
Thank you for saving me time. He is a dangerous idiot, unfortunately like 90% or so of drivers. What you said is exactly 100% correct. I would give you a higher percentage but there is a limit ;-)
Driving is a cooperative endeavor, and when you speed you are not just breaking the law, but that covenant. Someone else driving at above the speed limit makes it harder for less skilled drivers, thus clearly contributing to greater danger for everyone.
Instead of attempting to rewrite OpenSSL can't some leaker just send us the patches the NSA uses on Linux installations?
The blurb mentions a problem, but not a patch or fix. The heartblead notice came out with a new version (the new version came out the day they announced the vulnerability). Its this just a notice without a fix?
The patch comes with patch version "h". I just built it for Linux (ubuntu 14.04 with kernel 3.15.0-rc8). I should be able to incorporate it in my website within 45 minutes or so (it takes that long for a corei7 to build the 26 pieces of software I use for my site including apr, apr-util, curl, fftw, gmp, Imagemagick, lcms, libevent, libmcrypt, libmemcached, libpng, libtool, libxml2, libxslt, lua, mcrypt, memcached, mhash, modsecurity, openssl, pcre, re2c, t1lib, mariadb, apache, mariadb, and php.
openssl-libs-1.0.1e-37.fc20.1.x86_64
openssl-1.0.1e-37.fc20.1.x86_64
With the last entry in the "libs" change log being Mon Apr 07 2014.
Today:
openssl-libs-1.0.1e-38.fc20.x86_64
openssl-1.0.1e-38.fc20.x86_64
From the "libs" changelog (removed the accents from the name):
* Thu Jun 05 2014 Tomas Mraz 1.0.1e-38
- fix CVE-2010-5298 - possible use of memory after free
- fix CVE-2014-0195 - buffer overflow via invalid DTLS fragment
- fix CVE-2014-0198 - possible NULL pointer dereference
- fix CVE-2014-0221 - DoS from invalid DTLS handshake packet
- fix CVE-2014-0224 - SSL/TLS MITM vulnerability
- fix CVE-2014-3470 - client-side DoS when using anonymous ECDH
Not bad a fix, virtually on the same day the vulnerability is announced. Of course in a production environment you should not be using Fedora but if you are using Redhat there is a fix already, however any self respecting System Admin should now be raising change requests to upgrade the relevant packages (you most likely don't even need a reboot although managers normally feel better with one) after checking with their software support. Actually the same procedures should apply for any Linux distribution that is used in a production environment.
There ain't no such thing as proprietary standards only proprietary formats. Standards are by definition open.
I suppose the NSA didn't know about this one as well ?
Any code that has finalized it's development and only has bugfixes, not new features/code can be auditable and secure.
Any project with random new features added in a non-development, and non-major version builds should be considered suspect as a matter of course.
Unfortunately very few projects hold to the stable/development cycle and especially open source projects are prone to 'bleeding edgism' since that's what pays developers bills, not creating a well architected piece of code that will require no other changes other than to fix preexisting bugs.