The flaw, known as “Heartbleed,” is contained in several versions of OpenSSL, a cryptographic library that enables SSL (Secure Sockets Layer) or TLS (Transport Security Layer) encryption.
The flaw, which was introduced in December 2011, has thankfully been fixed in OpenSSL 1.0.1g, which was released on Monday.
More information about the vulnerability is available at a website here, and the vulnerable versions of OpenSSL are 1.0.1 through 1.0.1f with two exceptions: OpenSSL 1.0.0 branch and 0.9.8.
The flaw would potentially allow attackers to monitor all information that flows between a user and a Web service, and could even decrypt past traffic they’ve collected, according to experts.
The bug was discovered by three researchers from security firm Codenomicon and Neel Mehta, a security researcher at Google.
“This allows attackers to eavesdrop communications, steal data directly from the services and users and to impersonate services and users,” the researchers wrote.
Operating systems that may have a vulnerable version of OpenSSL include Debian Wheezy, Ubuntu 12.04.4 LTS, CentOS 6.5, Fedora 18, OpenBSD 5.3, FreeBSD 8.4, NetBSD 5.0.2 and OpenSUSE 12.2, they wrote.
The programming mistake has left large amounts of private keys and and other secrets exposed to the Internet for a long time, according to Finnish security consultants Codenomicon. Attackers can read the memory of vulnerable systems in 64 kilobyte chunks, until they have the required information to succesfully compromise them.
"You are likely to be affected either directly or indirectly," the researchers said.
"OpenSSL is the most popular open source cryptographic library and TLS (transport layer security) implementation used to encrypt traffic on the Internet.,
"Your popular social site, your company's site, commerce site, hobby site, site you install software from or even sites run by your government might be using vulnerable OpenSSL. Many of online services use TLS to both to identify themselves to you and to protect your privacy and transactions. You might have networked appliances with logins secured by this buggy implementation of the TLS. Furthermore you might have client side software on your computer that could expose the data from your computer if you connect to compromised services."
The researchers said the problem, CVE-2014-0160, is a missing bounds check in the handling of the TLS heartbeat extension (hence the name 'Heartbleed'), which can then be used to view 64K of memory on a connected server. This allows attackers to obtain the private keys used to encrypt traffic.
The attackers can only access 64K of memory during one iteration of the attack, but the attackers can “keep reconnecting or during an active TLS connection keep requesting arbitrary number of 64 kilobyte chunks of memory content until enough secrets are revealed,” the website said.
The researchers advised administrators to apply the up-to-date version of SSL, revoke any compromised keys and reissue new keys.