Joined up thinking for the Irish Left
Bin Charges: From Private Circus to Public Service Tue Jun 21, 2016 12:38 | Michael Taft
Beyond Grexit & Brexit, Advocating an Irish and a British role in solving Europe... Tue Jun 21, 2016 12:18 | Tony Phillips
Hardship never lasts forever? Wed May 04, 2016 15:50 | Raymond Deane
DDCI calls on New Government to Strictly Regulate Vulture Fund Acquisitions Wed May 04, 2016 15:22 | Irish Left Review
Warning: Ultra-Low Spend Economy Ahead Wed May 04, 2016 11:59 | Michael Taft
Irish Left Review >>
For lefties too stubborn to quit
They led people to the top of the cliff and then wondered why they jumped? 23:38 Sat Jun 25, 2016 | irishelectionliterature
Films and TV and books depicting the 1980s? 15:28 Sat Jun 25, 2016 | WorldbyStorm
The Iron Lady 12:04 Sat Jun 25, 2016 | WorldbyStorm
Buran ? the Soviet Shuttle 11:07 Sat Jun 25, 2016 | WorldbyStorm
Home produced 10:03 Sat Jun 25, 2016 | WorldbyStorm
Cedar Lounge >>
Life should be full of strangeness, like a rich painting
Notes for a Book on Money and the Irish State - The Marshall Aid Program 15:10 Sat Apr 02, 2016
The Financial Crisis:What Have We Learnt? 19:58 Sat Aug 29, 2015
Money in 35,000 Words or Less 21:34 Sat Aug 22, 2015
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
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: