Definition · TLS & Certificates

What is Heartbleed?

Heartbleed, disclosed in April 2014 and tracked as CVE-2014-0160, was an implementation flaw in OpenSSL’s handling of the TLS heartbeat extension. A heartbeat request carries a payload and a length field; the vulnerable code trusted the stated length without checking it against the data actually sent, then copied that many bytes out of memory into the reply. An attacker could claim a large payload with a tiny message and receive up to 64KB of whatever happened to sit adjacent in the process’s memory — repeatedly, and without authentication.

It is important to be precise about what it was and was not. Heartbleed was a bug in one library, not a weakness in TLS itself. Only OpenSSL 1.0.1 through 1.0.1f were affected, along with the 1.0.2 beta, and the fix landed in 1.0.1g. Implementations such as GnuTLS, NSS and Windows Schannel were untouched. Because the heartbeat extension works in both directions, vulnerable clients could also be attacked by a malicious server.

Why it mattered so much

The leaked memory was unpredictable but could include anything the process held: private keys, session cookies, credentials submitted moments earlier, and decrypted request bodies. Exploitation left no trace in application logs, so nobody could prove what had or had not been taken. That combination forced a broad response — patch, then reissue and revoke certificates on the assumption that private keys might be exposed, then invalidate sessions and rotate credentials. It was also one of the first vulnerabilities with a name, a logo and mainstream news coverage, which changed how serious flaws have been communicated ever since.

Its status today

Heartbleed is a historical vulnerability rather than a current widespread risk. The affected OpenSSL branches reached end of life long ago, and the patched version is more than a decade old, so mainstream servers and distributions are not exposed. External scanners still test for it, and it still appears in Nuclei template sets, for one reason: unmaintained embedded devices, appliances and abandoned virtual machines occasionally remain online with the original firmware. A Heartbleed finding today is therefore less interesting as a TLS problem than as a signal that a host has not been updated in years, and almost certainly carries other unpatched CVEs too.

See CVE, CVSS, patch management, certificate revocation, TLS handshake and POODLE for the other headline TLS issue of 2014.

See what your business is exposing

SurfaceLoop checks every internet-facing asset you own across seven risk categories, daily.