Heartbleed: How did it get there? Why did it take so long to find?

The discovery of massive security vulnerability prompts speculation in crypto communities about NSA involvment

Published April 9, 2014 7:53PM (EDT)


The major news today that a huge security flaw -- Heartbleed -- has for more than two years rendered most of the Internet vulnerable, such that emails, passwords, credit card data and more are all at risk, prompts a series of questions.

Laypeople and cryptographers alike are abuzz with speculation over the key points: How did such a major vulnerability spread through so much of the Internet (attacking OpenSSL, the encryption central to most online security)? How did the bug reside in most online servers so long without detection? And what prompted the discovery of Heartbleed now, simultaneously by two separate groups, security firm Codenomicon and members of Google Security.

The rumor mill is churning, and little can be firmly established at this point. But it seems worth noting some theories bouncing around corners in the crypto community.

Insofar as accounting for Heartbleed's existence, troubling theories have abounded, which -- in the age of NSA revelation -- are sadly unsurprising. For some time, cryptographers have suggested that the NSA has been secretly paying open source developers (developers of open source tools like OpenSSL) to sneak in bugs. The term "open" is perhaps misleading here. Yes, OpenSSL encryption coding is technically openly, freely available for any site to use for security. But the code for it is, I am told, famously inscrutable. As such, it as at least plausible (although I'm certainly not stating as fact) that a spy agency could have an in (via compensation or coercion) with the builders of the obfuscated and complicated cryptography behind OpenSSL. As Johns Hopkins University computer scientist and cryptographer Matthew Green wrote as long ago as last year, there are a number of ways in which the NSA might consistently break SSL, but Occam's razor applied, the most likely way would not involve cracking codes at all, but stealing the appropriate RSA keys (the private system encryption key) from developers. Green wrote in a (reasonably technical) blog post in December 2013:

This technique [stealing RSA keys] is so obvious that it's hard to imagine NSA spending a lot of resources on sophisticated cryptanalytic attacks. We know that GCHQ and NSA are perfectly comfortable suborning even US providers overseas. And inside our borders, they've demonstrated a willingness to obtain TLS/SSL keys using subpoena powers and gag orders. If you're using an RSA connection to a major website, it may be sensible to assume the key is already known.

While it remains conjecture, given that we know from Snowden's leaks that the NSA has actively engaged in weakening the structural security of the Internet for mass surveillance purposes, it may not be foolish to at least question whether Heartbleed is the result of an operation of this type. However, OpenSSL code is highly complex; a flaw in it may be just that -- a mistake undetected by coders and undetectable by the masses. The fact that there is speculation of foul play, however, is correctly reflective of a distrust stemming from mass government surveillance, propped up by powerful tech players.

Moving on to why it to took so long to discover Heartbleed, given its magnitude, the likely answers are somewhat banal. First, as mentioned, OpenSSL code is notoriously complicated and obfuscated. A talented cryptographer (or team of) could certainly detect such a vulnerability. But the work to do so would be arduous and tedious. Reliant on university funding, beholden to research and teaching, the academic cryptography community may simply not have had the time or compulsion to hold a looking glass up to the notoriously inscrutable OpenSSL code.

So why now? The fact that two separate private security teams discovered Heartbleed at the same time, without working together, is (parsimony again applied) most likely simply a reflection of our political moment. Edward Snowden's NSA leaks have piqued a well-deserved distrust in online security, especially at the vital level of standard encryption. It's another testament to Snowden's public service, and the chilling state of totalized surveillance in which we live, that cryptographers are looking for vulnerabilities like Heartbleed. The fact that such flaws exist once again reminds us to awaken from any lingering cybernetic dreams of open, secure and democratic communication and living online. There is no such safe haven.

By Natasha Lennard

Natasha Lennard is an assistant news editor at Salon, covering non-electoral politics, general news and rabble-rousing. Follow her on Twitter @natashalennard, email nlennard@salon.com.

MORE FROM Natasha Lennard

Related Topics ------------------------------------------

Cryptography Encryption Google Heartbleed Nsa Openssl Rsa Keys Ssl Surveillance Vulnerability