Joined up thinking for the Irish Left
Eurostat Has Done Us a Favour Thu Jul 30, 2015 15:57 | Michael Taft
On the ?Unelectable? Jeremy Corbyn Tue Jul 28, 2015 15:28 | Ian Maleney
Reality and Myth of the US ?Internet Revolution? ? And its lessons for China Wed Jul 22, 2015 13:45 | John Ross
Ghosts of Alternatives Past Fri Jul 17, 2015 12:28 | Helena Sheehan
No Country for Young People Fri Jul 17, 2015 12:14 | Michael Taft
Irish Left Review >>
SYRIZA: Was capitulation inevitable? Fri Jul 17, 2015 14:14 | Sami El-Sayed
The four contradictions of liberalism Fri Jul 17, 2015 13:52 | yeksmesh
Between Ideology and Public Discourse Tue Jul 14, 2015 15:07 | Gavin Mendel-Gleason
Commentary and Discussion to the Syriza Victory in the Greek Referendum Mon Jul 06, 2015 01:10 | Jerome Nikolai Warren
Trotsky and TTIP: how secret diplomacy serves elite interests Tue Jun 09, 2015 16:02 | yeksmesh
Spirit of Contradiction >>
Life should be full of strangeness, like a rich painting
THE WRATH OF KANE: BANKING CRISES AND POLITICAL POWER 09:32 Fri Jan 30, 2015
ALWAYS THE ARTISTS: WEEK THREE OF THE BANK INQUIRY 23:11 Thu Jan 22, 2015
FIANNA FÁIL AND THE BANK INQUIRY : SOME INITIAL OBSERVATIONS 21:04 Mon Jan 12, 2015
PETER NYBERG BANK INQUIRY EVIDENCE, 17 DECEMBER 2014 18:05 Sun Dec 28, 2014
For Some Vicious Mole of Nature: Making Sense of The Irish Bank Crisis 21:07 Fri Dec 26, 2014
Dublin Opinion >>
Farewell from NWL Sun May 19, 2013 14:00 | namawinelake
Happy 70th Birthday, Michael Sun May 19, 2013 14:00 | namawinelake
Of the Week? Sat May 18, 2013 00:02 | namawinelake
Noonan denies IBRC legal fees loan approval to Paddy McKillen was in breach of E... Fri May 17, 2013 14:23 | namawinelake
Gayle Killilea Dunne asks to be added as notice party in Sean Dunne?s bankruptcy Fri May 17, 2013 12:30 | namawinelake
NAMA Wine Lake >>
The latest HEARTBLEED OpenSSL bug
Friday April 11, 2014 09:43 by wageslave
The false sense of security of the internet has been completely overturned by the latest security bug to be discovered. A bug in the popular OpenSSL library used by many of the most important and frequently used server sites on the net allows arbitrary chunks of memory to be read remotely from user machines and servers, possibly containing very sensitive data, user tokens, bank details, emails and passwords. What does all this mean and how did it happen and what can we do to protect ourselves?
The latest security hole to rock the internet in the wake of the Snowden revelations is pretty huge. A bug in the OpenSSL library means that client computers can read arbitrary chunks of memory from servers all over the internet. Apparently this has been the case for the last two years.
For those who don't understand what this means, an SSL library is being used whenever you see that padlock icon appear in the address area of your browser. This usually happens when you are connecting to a website which requires some privacy such as your banking site or your webmail or other such servers.
To put this in perspective, about 66% of internet servers use a particular OpenSSL library to manage these sensitive connections with their clients.
So what is the problem?
ok the problem is this. When your computer connects to a server using this OpenSSL library, your computer and the server have a protocol called a "heartbeat" whereby they exchange a bit of data back and forth at regular intervals to maintain the connection. If this heartbeat stops, the connection is closed. Makes sense. However an error was introduced in the code used in this process (Rather suspiciously it was on new years eve, December 31 2011, when few people were looking. ).
The error was as follows:
in order to maintain the heartbeat, crucially, the client sends a few pieces of data to the server
heartbeat_type, pl, payload
where heartbeat_type defines the information structure to be used,
pl is the length of "payload" in bytes
and "payload" is some arbitrary piece of data.
once the server gets this data, it temporarily stores the "payload" data in its memory somewhere.
It then uses the software function memcopy(bp,pl,payload) to copy this data into a suitably formatted data packet to transmit back to the client.
The client then receives the packet, and it knows the server is alive, the two computers communicate for a bit, or not as the case may be, then the heartbeat process is repeated again after a suitable interval. And so on until the client disconnects from the server
ok that all sounds fine. Or it would be assuming the client was not malicious. Because it turns out the client can "lie" to the server when setting up this heartbeat data. The client can pretend the payload is much larger than it actually is because as you may have noticed, the client sends both the length of the payload and the payload itself to the server. And crucially, the server does NOT check the length is actually correct. This is the crux of the problem. A "buffer underrun"
So if a malicious client connects to the server and sends a false length of "64K" (the largest size it will accept) but only sends one "byte" in the payload, then the server dutifully sends back 64k of data.
Now out of the 64k sent back by the server, only 1k is actually our original payload. So what exactly is in the rest of this data packet returned from our server? This is a very good question!. The answer is whatever was in the memory of the server adjacent to where it temporarily stored our payload. This could be absolutely anything. Security certificates, Passwords, IP addresses, emails, user security tokens, anything.
And if you stay connected to the server, you can do this all night until something juicy comes back in the response from the server.
No doubt you can see the problem now.
A malicious server can also do the same thing to any client that connects to it.
Was it intentional?
At the moment it is not clear whether it was malicious. However if you have been keeping up with the Edward Snowden revelations, you will know that the NSA are up to all sorts of tricks to get your information, and this one is basically an open door for them to read the memory of 66% of internet servers. This includes many of the top services we all use on a regular basis. They could also compromise anyone they can trick into connecting to one of their servers too. A tactic the Snowden leaks show that they do use. It's all certainly very suspicious, and the timing of this code change is particularly suspicious in my book. it looks like it may have been used to monitor IRC traffic which is where the likes of anonymous would be hanging out.
What should I do to protect myself?
It is suggested that you update your OS if you are using any of the flavours of linux which are using the compromised library version.
(OpenSSL versions 1.0.1 through 1.0.1f (inclusive) are vulnerable )
this ships with the following versions of linux:
Debian Wheezy (stable), OpenSSL 1.0.1e-2+deb7u4
Ubuntu 12.04.4 LTS, OpenSSL 1.0.1-4ubuntu5.11
CentOS 6.5, OpenSSL 1.0.1e-15
Fedora 18, OpenSSL 1.0.1e-4
OpenBSD 5.3 (OpenSSL 1.0.1c 10 May 2012) and 5.4 (OpenSSL 1.0.1c 10 May 2012)
FreeBSD 10.0 - OpenSSL 1.0.1e 11 Feb 2013
NetBSD 5.0.2 (OpenSSL 1.0.1e)
OpenSUSE 12.2 (OpenSSL 1.0.1c)
Update to OpenSSL version 1.0.1g as soon as you can through the usual system updating procedures for linux
Apple say their OSX is safe but if you are using OSX mavericks, they recommend updating to 10.9.2 just to be safe. Some free programs may use the library so they will need updating
Windows is not affected according to microsoft, although some free programs may use the OpenSSL library and they will need updating.
Alas, that is not the end of it. The bug has been in the wild for two years. There is always the possibility that your passwords etc may have been compromised on many of the internet servers you use. It is recommended you change all your passwords on the internet services you use.
It is highly recommended you wait until these servers have updated their security certificates and replaced any compromised SSL code on their servers and given the all clear before you log on and change your passwords
You should check out this site for some helpful information on some of the main sites, but it is by no means a full list:
The official site for information is here:
For those of you who are a bit more technically minded, there is a good analysis here:
A simpler explanation here: