A very bad bug, Heartbleed, has been found in OpenSSL:
Bug is in the OpenSSL’s implementation of the TLS/DTLS (transport layer security protocols) heartbeat extension (RFC6520). When it is exploited it leads to the leak of memory contents from the server to the client and from the client to the server.
- via heartbleed.com
This is a stop what ever you are doing and upgrade to a fixed version of OpenSSL NOW! level bug. More from heartbleed.com:
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.
This is just about as bad as it can get.
A few tools have been thrown together if you want test for this vulnerability. The really scary one is http://filippo.io/Heartbleed/, which will allow you to run a live check against a hostname and show you the resulting memory dump. Source code for that site is available here. If you are looking for a script to test locally take a look at https://github.com/titanous/heartbleeder.
OpenSSL versions impacted according to heartbleed.com:
- OpenSSL 1.0.1 through 1.0.1f (inclusive) are vulnerable
- OpenSSL 1.0.1g is NOT vulnerable
- OpenSSL 1.0.0 branch is NOT vulnerable
- OpenSSL 0.9.8 branch is NOT vulnerable
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. OpenSSL 1.0.1g released on 7th of April 2014 fixes the bug.
You can find out which version of OpenSSL you are running with
openssl version -v -b. The
-b is important because some updates are not changing the version number. For instance the fixed version on Ubuntu 13.10 reports:
OpenSSL 1.0.1e 11 Feb 2013
built on: Mon Apr 7 20:33:19 UTC 2014
The version wasn’t changed, so you’ll need to know the build date.
Heartbleed was announced yesterday ( 7 Apr 2014 ), I expect that we are going to see more fallout from this over the next few days. Tools to exploit this are already widely available, not updating is not an option.