Heartbleed: Difference between revisions
→Exploitation: Changed date from April 16 to April 8th. The referenced article was published on the 16th but explicitly notes that the day of the hacking was the 8th. |
→Resolution: Fixing misleading information. See talk page for more. |
||
Line 36: | Line 36: | ||
[[The Sydney Morning Herald]] published a timeline of the discovery on April 15, 2014, which shows that some of the organizations were able to patch against the bug before its public disclosure. In some cases, it is not clear how they found out.<ref>{{citation|url=http://www.smh.com.au/it-pro/security-it/heartbleed-disclosure-timeline-who-knew-what-and-when-20140414-zqurk.html|work=[[The Sydney Morning Herald]]|title=Heartbleed disclosure timeline: who knew what and when|date=2014-04-14|author=Ben Grubb}}</ref> |
[[The Sydney Morning Herald]] published a timeline of the discovery on April 15, 2014, which shows that some of the organizations were able to patch against the bug before its public disclosure. In some cases, it is not clear how they found out.<ref>{{citation|url=http://www.smh.com.au/it-pro/security-it/heartbleed-disclosure-timeline-who-knew-what-and-when-20140414-zqurk.html|work=[[The Sydney Morning Herald]]|title=Heartbleed disclosure timeline: who knew what and when|date=2014-04-14|author=Ben Grubb}}</ref> |
||
=== |
===Code Patch=== |
||
Bodo Moeller and Adam Langley of [[Google]] prepared the fix for Heartbleed. The resulting patch, which was added to [[Red Hat]]'s issue tracker, is dated March 21, 2014.<ref>{{cite web|url=https://bugzilla.redhat.com/attachment.cgi?id=883475 |title=heartbeat_fix |publisher= |date= |accessdate=April 14, 2014}}</ref> The next chronological date available from the public evidence is the claim by [[CloudFlare]] that they fixed the flaw on their systems on March 31, 2014.<ref>{{cite web|title=CloudFlare – Update on the Heartbleed OpenSSL Vulnerability |url=https://support.cloudflare.com/hc/en-us/articles/201660084-Update-on-the-Heartbleed-OpenSSL-Vulnerability |date=April 12, 2014 }}</ref> Stephen N. Henson applied the fix to OpenSSL's version control system on 7 April.<ref name="fix"/> The first fixed version, 1.0.1g, was released on the same day. |
Bodo Moeller and Adam Langley of [[Google]] prepared the fix for Heartbleed. The resulting patch, which was added to [[Red Hat]]'s issue tracker, is dated March 21, 2014.<ref>{{cite web|url=https://bugzilla.redhat.com/attachment.cgi?id=883475 |title=heartbeat_fix |publisher= |date= |accessdate=April 14, 2014}}</ref> The next chronological date available from the public evidence is the claim by [[CloudFlare]] that they fixed the flaw on their systems on March 31, 2014.<ref>{{cite web|title=CloudFlare – Update on the Heartbleed OpenSSL Vulnerability |url=https://support.cloudflare.com/hc/en-us/articles/201660084-Update-on-the-Heartbleed-OpenSSL-Vulnerability |date=April 12, 2014 }}</ref> Stephen N. Henson applied the fix to OpenSSL's version control system on 7 April.<ref name="fix"/> The first fixed version, 1.0.1g, was released on the same day. |
||
Revision as of 23:34, 10 June 2014
Heartbleed is a security bug in the OpenSSL cryptography library. OpenSSL is a widely used implementation of the Transport Layer Security (TLS) protocol. Heartbleed may be exploited whether the party using a vulnerable OpenSSL instance for TLS is a server or a client.
Heartbleed results from improper input validation (due to a missing bounds check) in the implementation of the TLS heartbeat extension,[3] the heartbeat being the basis for the bug's name.[4] The vulnerability is classified as a buffer over-read,[5] a situation where software allows more data to be read than should be allowed.[6]
A fixed version of OpenSSL was released on April 7, 2014, on the same day Heartbleed was publicly disclosed. At that time, some 17 percent (around half a million) of the Internet's secure web servers certified by trusted authorities were believed to be vulnerable to the attack, allowing theft of the servers' private keys and users' session cookies and passwords.[7][8][9][10][11] The Electronic Frontier Foundation,[12] Ars Technica,[13] and Bruce Schneier[14] all deemed the Heartbleed bug "catastrophic". Forbes cybersecurity columnist Joseph Steinberg wrote, "Some might argue that [Heartbleed] is the worst vulnerability found (at least in terms of its potential impact) since commercial traffic began to flow on the Internet."[15]
A British Cabinet spokesman recommended that "People should take advice on changing passwords from the websites they use... Most websites have corrected the bug and are best placed to advise what action, if any, people need to take."[16] On the day of disclosure, the Tor Project advised anyone seeking "strong anonymity or privacy on the Internet" to "stay away from the Internet entirely for the next few days while things settle."[17]
As of May 20, 2014[update], 1.5% of the 800,000 most popular TLS-enabled websites were still vulnerable to Heartbleed.[18]
Heartbleed is registered in the Common Vulnerabilities and Exposures system as CVE-2014-0160.[5] The federal Canadian Cyber Incident Response Centre issued a security bulletin advising system administrators about the bug.[19]
Other TLS implementations, such as GnuTLS and Mozilla's Network Security Services, are not affected, as the defect lies in OpenSSL's implementation rather than in the Internet protocol itself. Consequently, none of Microsoft's products or services is affected by Heartbleed.[20]
History
Appearance
The Heartbeat Extension for the Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) protocols was proposed as a standard in February 2012 by RFC 6520.[21] It provides a way to test and keep alive secure communication links without the need to renegotiate the connection each time.
In 2011, one of the RFC's authors, Robin Seggelmann, then a Ph.D. student at the University of Duisburg-Essen, implemented the Heartbeat Extension for OpenSSL. Following Seggelmann's request to put the result of his work into OpenSSL,[22][23][24] his change was reviewed by Stephen N. Henson, one of OpenSSL's four core developers. Henson apparently failed to notice a bug in Seggelmann's implementation,[25] and introduced the flawed code into OpenSSL's source code repository on December 31, 2011. The vulnerable code was adopted into widespread use with the release of OpenSSL version 1.0.1 on March 14, 2012. Heartbeat support was enabled by default, causing affected versions to be vulnerable by default.[26][27][28]
Discovery
According to Mark J. Cox of OpenSSL, Neel Mehta of Google's security team reported Heartbleed on April 1, 2014.[29]
The bug was named by an engineer at Codenomicon, a Finnish cybersecurity company, which also created the bleeding heart logo, and launched the domain Heartbleed.com to explain the bug to the public.[30] According to Codenomicon, Neel Mehta first reported the bug to OpenSSL, but both Google and Codenomicon discovered it independently.[26] Codenomicon reports April 3, 2014 as their date of discovery of the bug and as their date of notification of NCSC-FI (formerly known as CERT-FI) for vulnerability coordination.[26][31] Mehta also congratulated Codenomicon, without going into detail.[32]
The Sydney Morning Herald published a timeline of the discovery on April 15, 2014, which shows that some of the organizations were able to patch against the bug before its public disclosure. In some cases, it is not clear how they found out.[33]
Code Patch
Bodo Moeller and Adam Langley of Google prepared the fix for Heartbleed. The resulting patch, which was added to Red Hat's issue tracker, is dated March 21, 2014.[34] The next chronological date available from the public evidence is the claim by CloudFlare that they fixed the flaw on their systems on March 31, 2014.[35] Stephen N. Henson applied the fix to OpenSSL's version control system on 7 April.[36] The first fixed version, 1.0.1g, was released on the same day.
Deployment
As of May 8, 2014[update], 318,239 of the public web servers remained vulnerable.[37]
Certificate renewal and revocation
According to Netcraft, about 30,000 of the 500,000+ X.509 certificates which could have been compromised due to Heartbleed had been reissued by April 11, 2014, although fewer had been revoked.[38]
On May 9, 2014, only 43% of affected web sites had reissued their security certificates.[39] In addition, 7% of the reissued security certificates used the potentially compromised keys. "By reusing the same private key, a site that was affected by the Heartbleed bug still faces exactly the same risks as those that have not yet replaced their SSL certificates," Netcraft stated.[39] Said eWeek, Heartbleed is "likely to remain a risk for months, if not years, to come."[39]
Exploitation
The Canada Revenue Agency reported the theft of Social Insurance Numbers belonging to 900 taxpayers, and stated that they were accessed through an exploit of the bug during a 6-hour period on April 8, 2014.[40] When the attack was discovered, the agency shut down its web site and extended the taxpayer filing deadline from April 30 to May 5.[41] The agency said it will provide anyone affected with credit protection services at no cost. On April 16, the RCMP announced they had charged an engineering student in relation to the theft with "unauthorized use of a computer" and "mischief in relation to data".[42][43]
In another incident, the UK parenting site Mumsnet had several user accounts hijacked, and its CEO was impersonated.[44] The site published an explanation of the incident.[45]
Anti-malware researchers in turn exploited Heartbleed to access secret forums used by cybercriminals.[46]
On April 12, 2014, at least two independent researchers were able to steal private keys using this attack from an experimental server intentionally set up for that purpose by CloudFlare.[47][48]
It was reported by a professor at University of Michigan that a computer in China that had been used for hacking and other malicious activities attempted on April 8, 2014 to exploit Heartbleed to attack a university server, which was actually a honeypot intentionally left vulnerable, designed to attract attacks which could then be studied.[49]
Possible knowledge and exploitation prior to disclosure
Many major web sites patched or disabled the bug within days of its announcement,[50] but it is unclear whether potential attackers were aware of it earlier and to what extent it was exploited.
Based on examinations of audit logs by researchers, it has been reported that some attackers may have exploited the flaw for at least five months before discovery and announcement.[51][52] Errata Security pointed out that a widely used non-malicious program called "Masscan", introduced six months before Heartbleed's disclosure, abruptly terminates the connection in the middle of handshaking in the same way as Heartbleed, generating the same server log messages, adding "Two new things producing the same error messages might seem like the two are correlated, but of course, they aren't".[53]
According to Bloomberg News, two unnamed insider sources informed it that the United States National Security Agency was aware of the flaw since shortly after its introduction, but chose to keep it secret, instead of reporting it, in order to exploit it for their own purposes.[54][55][56] The NSA has denied this claim,[57] as has Richard A. Clarke, who was a member of an advisory panel that reviewed the United States' electronic surveillance policy; he told Reuters on April 11, 2014 that the NSA had not known of Heartbleed.[58]
Behavior
The RFC 6520 Heartbeat Extension tests TLS/DTLS secure communication links by allowing a computer at one end of a connection to send a "Heartbeat Request" message, consisting of a payload, typically a text string, along with the payload's length as a 16-bit integer. The receiving computer then must send the exact same payload back to the sender.
The affected versions of OpenSSL allocate a memory buffer for the message to be returned based on the length field in the requesting message, without regard to the actual size of that message's payload. Because of this failure to do proper bounds checking, the message returned consists of the payload, possibly followed by whatever else happened to be in the allocated memory buffer.
Heartbleed is therefore exploited by sending a malformed heartbeat request with a small payload and large length field to the vulnerable party (usually a server) in order to elicit the victim's response, permitting attackers to read up to 64 kilobytes of the victim's memory that was likely to have been used previously by OpenSSL.[59] Where a Heartbeat Request might ask a party to "send back the four-letter word 'bird'", resulting in a response of "bird", a "Heartbleed Request" (a malicious heartbeat request) of "send back the 500-letter word 'bird'" would cause the victim to return "bird" followed by whatever 496 characters the victim happened to have in active memory. Attackers in this way could receive sensitive data, compromising the confidentiality of the victim's communications. Although an attacker has some control over the disclosed memory block's size, it has no control over its location, and therefore cannot choose what content is revealed. OpenSSL typically responds with the chunks of memory it has most recently discarded.
Affected OpenSSL installations
The affected versions of OpenSSL are OpenSSL 1.0.1 through 1.0.1f (inclusive). Later versions (1.0.1g and ulterior[60]) and previous versions (1.0.0 branch and older) are not vulnerable.[61] Installations of the affected versions are vulnerable unless OpenSSL was compiled with -DOPENSSL_NO_HEARTBEATS.[62]
Vulnerable program and function
The vulnerable program source files are t1_lib.c and d1_both.c and the vulnerable functions are tls1_process_heartbeat() and dtls1_process_heartbeat().[63]
Patch
The problem can be fixed by ignoring Heartbeat Request messages that ask for more data than their payload needs.
Version 1.0.1g of OpenSSL adds some bounds checks to prevent the buffer over-read. For example, the following test has been added, which discards the Heartbeat Request preventing a reply from being constructed if it would trigger the Heartbleed:
if (1 + 2 + payload + 16 > s->s3->rrec.length) return 0; /* silently discard per RFC 6520 sec. 4 */
The version control system contains a complete list of changes.[36]
Impact
The data obtained by a Heartbleed attack may include unencrypted exchanges between TLS parties likely to be confidential, including any form post data in users' requests. Moreover, the confidential data exposed could include authentication secrets such as session cookies and passwords, which might allow attackers to impersonate a user of the service.[64]
An attack against a server may also reveal the server's private master key,[26][28][65] which would enable attackers to decrypt communications (future or past stored traffic captured via passive eavesdropping, unless perfect forward secrecy is used, in which case only future traffic can be decrypted if intercepted via man-in-the-middle attacks).
An attacker having gained authentication material may impersonate the material's owner after the victim has patched Heartbleed, as long as the material is accepted (for example, until the password is changed or the private key revoked). Heartbleed therefore constitutes a critical threat to confidentiality. However, an attacker impersonating a victim may also alter data. Indirectly, Heartbleed's consequences may thus go far beyond a confidentiality breach for many systems.
A survey of American adults conducted in April 2014 showed that 60 percent had heard about Heartbleed. Among those using the Internet, 39 percent had protected their online accounts, for example by changing passwords or canceling accounts; 29 percent believed their personal information was put at risk because of the Heartbleed bug; and six percent believed their personal information had been stolen.[66]
Client-side vulnerability
Although the bug received more attention due to the threat it represents for servers,[67] TLS clients using affected OpenSSL instances are also vulnerable. In what the Guardian therefore dubbed "reverse Heartbleed", malicious servers are able to exploit Heartbleed to read data from a vulnerable client's memory.[68] Security researcher Steve Gibson said of Heartbleed that "it's not just a server-side vulnerability, it's also a client-side vulnerability because the server, or whomever you connect to, is as able to ask you for a heartbeat back as you are to ask them."[69]
The stolen data could contain usernames and passwords.[70] Reverse Heartbleed affected millions of application instances.[68] Some of the applications vulnerable are listed in the "Software applications" section below.
Specific systems affected
Cisco Systems has identified 75 of its products as vulnerable, including IP phone systems and telepresence (video conferencing) systems.[71]
Websites and other online services
An analysis posted on GitHub of the most visited websites on April 8, 2014 revealed vulnerabilities in sites including Yahoo!, Imgur, Stack Overflow, Slate, and DuckDuckGo.[72][73][74] The following sites have services affected or made announcements recommending that users update passwords in response to the bug:
- Akamai Technologies[75]
- Amazon Web Services[76]
- Ars Technica[77]
- Bitbucket[78]
- BrandVerity[79]
- Freenode[80]
- GitHub[81]
- IFTTT[82]
- Internet Archive[83]
- Mojang[84]
- Mumsnet[44]
- PeerJ[85]
- Pinterest[86]
- Prezi[87]
- Reddit[88]
- Something Awful[89]
- SoundCloud[90]
- SourceForge[91]
- SparkFun[92]
- Stripe[93]
- Tumblr[94][95]
- Wattpad[citation needed]
- All Wikimedia Foundation wikis (including Wikipedia in all languages)[96][97]
- Wunderlist[98]
The Canadian federal government temporarily shut online services of the Canada Revenue Agency (CRA) and several government departments over Heartbleed bug security concerns.[99][100]
Platform maintainers like the Wikimedia Foundation advised their users to change passwords.[96]
The servers of LastPass were vulnerable,[101] but due to additional encryption and forward secrecy, potential attacks were not able to exploit this bug. However, LastPass recommended that its users change passwords for vulnerable websites.[102]
The Tor Project recommended that Tor relay operators and hidden service operators revoke and generate fresh keys after patching OpenSSL, but noted that Tor relays use two sets of keys and that Tor's multi-hop design minimizes the impact of exploiting a single relay.[17] 586 relays later found to be susceptible to the Heartbleed bug were taken off-line as a precautionary measure.[103][104][105][106]
Games including Steam, Minecraft, Wargaming.net, League of Legends, GOG.com, Origin, Sony Online Entertainment, Humble Bundle, and Path of Exile were affected and fixed.[107]
Software applications
Vulnerable software applications include:
- Several Hewlett-Packard server applications, such as HP System Management Homepage (SMH) for Linux and Windows.[108]
- Some versions of FileMaker 13[109]
- LibreOffice 4.2.0 to 4.2.2 (fixed in 4.2.3)[110][111]
- LogMeIn claimed to have "updated many products and parts of our services that rely on OpenSSL".[112]
- MySQL Workbench 6.1.4 and earlier[113]
- Oracle MySQL Connector/C 6.1.0-6.1.3 and Connector/ODBC 5.1.13, 5.2.5-5.2.6, 5.3.2[113]
- Oracle Big Data Appliance (includes Oracle Linux 6)[113]
- Primavera P6 Professional Project Management (includes Primavera P6 Enterprise Project Portfolio Management)[113]
- WinSCP (FTP client for Windows) 5.5.2 and some earlier versions (only vulnerable with FTP over TLS/SSL, fixed in 5.5.3)[114]
In addition, the Common Vulnerabilities and Exposures database, associated with the US Department of Homeland Security, advises that the following companies have had their software/products affected by Heartbleed[citation needed]:
- McAfee and in particular some versions of software providing anti-viral coverage for Microsoft Exchange, software firewalls, and McAfee Email and Web Gateways[115]
- VMware series of Horizon products, emulators and cloud computing suites[116]
Several other Oracle Corporation applications were affected.[113]
Operating systems/firmwares
Several GNU/Linux distributions were affected, including Debian[117] (and derivatives such as Linux Mint and Ubuntu[118]) and Red Hat Enterprise Linux[119] (and derivatives such as CentOS,[120] Oracle Linux 6[113] and Amazon Linux[121]), as well as the following operating systems:
- Android 4.1.1, used in various portable devices.[122] Chris Smith writes in BGR that just this one version of Android is affected but that it is a popular version of Android (Chitika claim 4.1.1 is on 50 million devices;[123] Google describe it as less than 10% of activated Android devices). Ulterior Android versions are not vulnerable.[124][125]
- Firmware for some Cisco Systems routers[127][128][71]
- Firmware for some Juniper Networks routers[128][129]
- Western Digital My Cloud product family firmware[132]
Vulnerability testing services
Several services have been made available to test whether Heartbleed affects a given site. However, many services have been claimed to be ineffective for detecting the bug.[133] The available tools include:
- Tripwire SecureScan
- AppCheck - static binary scan, from Codenomicon
- Arbor Network's Pravail Security Analytics
- Norton Safeweb Heartbleed Check Tool
- Heartbleed testing tool by a European IT security company[134]
- Heartbleed Scanner by Italian cryptologist Filippo Valsorda[135]
- Heartbleed Vulnerability Test by Cyberoam[136]
- Critical Watch Free Online Heartbleed Tester[137]
- Metasploit Heartbleed scanner module[138]
- Heartbleed Server Scanner by Rehmann[139]
- Lookout Mobile Security Heartbleed Detector, an app for Android devices that determines the OpenSSL version of the device and indicates whether the vulnerable heartbeat is enabled[140]
- Heartbleed checker hosted by LastPass[141]
- Online network range scanner for Heartbleed vulnerability by Pentest-Tools.com[142]
- Official Red Hat offline scanner written in the Python language[143]
- Qualys SSL Labs' SSL Server Test which not only looks for the Heartbleed bug, but can also find other SSL/TLS implementation errors.
- Browser extensions, such as Chromebleed and FoxBleed
- SSL Diagnos
- CrowdStrike Heartbleed Scanner - Scans routers, printers and other devices connected inside a network including intranet web sites.[144]
Other security tools have added support for finding this bug. For example, Tenable Network Security wrote a plugin for its Nessus vulnerability scanner that can scan for this fault.[145] The Nmap security scanner includes a Heartbleed detection script from version 6.45.[146]
Sourcefire has released Snort rules to detect Heartbleed attack traffic and possible Heartbleed response traffic.[147] Open source packet analysis software such as Wireshark and tcpdump can identify Heartbleed packets using specific BPF packet filters that can be used on stored packet captures or live traffic.[148]
Remediation
Although installing fixed software (dynamic versions of the OpenSSL library and binaries using OpenSSL statically) is a necessary step to address Heartbleed, more work may be needed. Running applications depending on OpenSSL may continue to use in-memory vulnerable OpenSSL code until they have been restarted before they stop being vulnerable.
Furthermore, a system attacked via Heartbleed may have its confidentiality and even its integrity at grave risk even after the vulnerability itself has been fixed. To regain confidentiality and authenticity, compromised servers must regenerate all compromised private key-public key pairs and must revoke and replace all certificates linked to these. In general, all compromised authentication material (such as passwords) must be replaced.[149] It is rarely possible to confirm that a system which was affected has not been compromised.
Consequences of Heartbleed may remain even after the vulnerability was fixed and all compromised authentication material revoked. Much more system-specific work may be needed to confirm or restore the system's integrity, which may have been compromised if attackers used compromised authentication material to impersonate users in order to perform unauthorized modifications.
Browser security certificate revocation awareness
Since Heartbleed threatened the privacy of private keys, users of a website which was compromised could suffer from Heartbleed's effects even after the website was fixed and its previous certificate revoked, if their browser is unaware of certification revocations. The Security Certificate Revocation Awareness Test does not test whether a system has the Heartbleed bug, but allows users to test whether their web browser lets them visit a web site which uses a revoked security certificate.[150][151]
Root causes, possible lessons, and reactions
Although evaluating the total cost of Heartbleed is difficult, eWEEK estimated US$500 million as a starting point.[152]
David A. Wheeler's paper How to Prevent the next Heartbleed analyzes why Heartbleed wasn't discovered earlier, and suggests several techniques which could have led to a faster identification, as well as techniques which could have reduced its impact. According to Wheeler, the most efficient technique which could have prevented Heartbleed is an atypical test suite thoroughly performing what he calls "negative testing", i.e. testing that invalid inputs cause failures rather than successes. Wheeler highlights that a single general-purpose test suite could serve as a base for all TLS implementations.[153]
According to an article on The Conversation written by Robert Merkel, Heartbleed revealed a "massive failure of risk analysis". Merkel thinks OpenSSL gives more importance to performance than to security, which no longer makes sense in his opinion. But Merkel considers that OpenSSL should not be blamed as much as OpenSSL users, who chose to use OpenSSL, without funding better auditing and testing. Merkel explains that 2 aspects determine the risk that more similar bugs will cause vulnerabilities. The library's source code influences the risk of writing bugs with such an impact. Secondly, OpenSSL's processes affect the chances of catching bugs quickly. On the first aspect, Merkel mentions the use of the C programming language as one risk factor which favored Heartbleed's appearance, echoing Wheeler's analysis.[153][154]
On the same aspect, Theo de Raadt, founder and leader of the OpenBSD and OpenSSH projects, has criticized the OpenSSL developers for writing their own memory management routines and thereby, he claims, circumventing OpenBSD C standard library exploit countermeasures, saying "OpenSSL is not developed by a responsible team."[155][156] Following Heartbleed's disclosure, members of the OpenBSD project forked OpenSSL into LibreSSL.[157]
The author of the change which introduced Heartbleed, Robin Seggelmann,[158] stated that he "missed validating a variable containing a length" and denied any intention to submit a flawed implementation.[22] Following Heartbleed's disclosure, Seggelmann suggested focusing on the second aspect, stating that OpenSSL is not reviewed by enough people.[159] Although Seggelmann's work was reviewed by an OpenSSL core developer, the review was also intended to verify functional improvements, a situation making vulnerabilities much easier to miss.[153]
OpenSSL core developer Ben Laurie claimed that a security audit of OpenSSL would have caught Heartbleed.[160] Software engineer John Walsh commented "Think about it, OpenSSL only has two [fulltime] people to write, maintain, test, and review 500,000 lines of business critical code."[161] The OpenSSL foundation's president, Steve Marquess, said "The mystery is not that a few overworked volunteers missed this bug; the mystery is why it hasn't happened more often."[161] David A. Wheeler described audits as an excellent way to find vulnerabilities in typical cases, but noted that "OpenSSL uses unnecessarily complex structures, which makes it harder to both humans and machines to review." He wrote:
There should be a continuous effort to simplify the code, because otherwise just adding capabilities will slowly increase the software complexity. The code should be refactored over time to make it simple and clear, not just constantly add new features. The goal should be code that is “obviously right”, as opposed to code that is so complicated that “I can’t see any problems”.[153]
LibreSSL made a big code cleanup, removing more than 90,000 lines of C code just in its first week.[162]
Heartbleed is sign of an economic problem which needs to be fixed, according to security researcher Dan Kaminsky. Seeing the time taken to catch this simple error in a simple feature from a "critical" dependency, Kaminsky fears numerous future vulnerabilities if nothing is done. When Heartbleed was discovered, OpenSSL was maintained by a handful of volunteers, only one of whom worked full-time.[163] Yearly donations to the OpenSSL project were about US$2,000.[164] The Heartbleed website from Codenomicon advised money donations to the OpenSSL project.[26] After learning about donations for the 2 or 3 days following Heartbleed's disclosure totaling US$841, Kaminsky commented "We are building the most important technologies for the global economy on shockingly underfunded infrastructure."[165] Core developer Ben Laurie has qualified the project as "completely unfunded".[164] Although the OpenSSL Software Foundation has no bug bounty program, the Internet Bug Bounty initiative awarded US$15,000 to Google's Neel Mehta, who discovered Heartbleed, for his responsible disclosure.[164]
The industry's collective response to the crisis was the Core Infrastructure Initiative, a multi-million dollar project announced by the Linux Foundation on April 24, 2014 to provide funds to critical elements of the global information infrastructure.[166] Founding backers include Amazon, Dell, Facebook, Fujitsu, Google, IBM, Intel and Microsoft. The initiative intends to allow lead developers to work full-time on their projects and to pay for security audits, hardware and software infrastructure, travel, and other expenses.[167] OpenSSL is a candidate to become the first recipient of the initiative's funding.[166]
References
- ^ McKenzie, Patrick (April 9, 2014). "What Heartbleed Can Teach The OSS Community About Marketing".
- ^ Biggs, John (April 9, 2014). "Heartbleed, The First Security Bug With A Cool Logo". TechCrunch.
- ^ "Cyberoam Security Advisory - Heartbleed Vulnerability in OpenSSL". April 11, 2014.
- ^ "How Heartbleed Works: The Code Behind the Internet's Security Nightmare". April 9, 2014.
- ^ a b "CVE – CVE-2014-0160". Cve.mitre.org. Retrieved April 10, 2014.
- ^ "CWE – CWE-126: Buffer Over-read (2.6)". Cwe.mitre.org. February 18, 2014. Retrieved April 10, 2014.
- ^ Mutton, Paul (April 8, 2014). "Half a million widely trusted websites vulnerable to Heartbleed bug". Netcraft Ltd.
- ^ Perlroth, Nicole; Hardy, Quentin (April 11, 2014). "Heartbleed Flaw Could Reach to Digital Devices, Experts Say". New York Times.
- ^ Chen, Brian X. (April 9, 2014). "Q. and A. on Heartbleed: A Flaw Missed by the Masses". New York Times.
- ^ Wood, Molly (April 10, 2014). "Flaw Calls for Altering Passwords, Experts Say". New York Times.
- ^ Manjoo, Farhad (April 10, 2014). "Users' Stark Reminder: As Web Grows, It Grows Less Secure". New York Times.
- ^ Zhu, Yan (April 8, 2014). "Why the Web Needs Perfect Forward Secrecy More Than Ever". Electronic Frontier Foundation.
- ^ Goodin, Dan (April 8, 2014). "Critical crypto bug exposes Yahoo Mail, other passwords Russian roulette-style". Ars Technica.
- ^ "Schneier on Security: Heartbleed". Schneier on Security. April 11, 2014.
- ^ Steinberg, Joseph (April 10, 2014). "Massive Internet Security Vulnerability – Here's What You Need To Do". Forbes.
- ^ Kelion, Leo (April 11, 2014). "BBC News - US government warns of Heartbleed bug danger". BBC.
- ^ a b "OpenSSL bug CVE-2014-0160". Tor Project. April 7, 2014.
- ^ "AVG on Heartbleed: It's dangerous to go alone. Take this (an AVG tool)". The Register. May 20, 2014. Retrieved May 24, 2014.
- ^ "OpenSSL Heartbleed Vulnerability". Cyber Security Bulletins. Public Safety Canada. April 11, 2014. Retrieved April 14, 2014.
- ^ Tracey Pretorius (April 10, 2014). "Microsoft Services unaffected by OpenSSL "Heartbleed" vulnerability". Microsoft Security Blog. Microsoft. Retrieved June 7, 2014.
- ^ Seggelmann, R.; et al. (February 2012). "Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) Heartbeat Extension". RFC 6520. Internet Engineering Task Force (IETF). Retrieved April 8, 2014.
{{cite web}}
: Explicit use of et al. in:|author=
(help) - ^ a b Grubb, Ben (April 11, 2014). "Man who introduced serious 'Heartbleed' security flaw denies he inserted it deliberately". The Sydney Morning Herald.
- ^ "#2658: [PATCH] Add TLS/DTLS Heartbeats". OpenSSL. 2011.
- ^ "Meet the man who created the bug that almost broke the Internet". Globe and Mail. April 11, 2014.
- ^ Site of Appearance and Discovery[clarification needed] on Github
- ^ a b c d e Codenomicon Ltd (April 8, 2014). "Heartbleed Bug".
- ^ Goodin, Dan (April 8, 2014). "Critical crypto bug in OpenSSL opens two-thirds of the Web to eavesdropping". Ars Technica.
- ^ a b Hagai Bar-El (April 9, 2014). "OpenSSL "Heartbleed" bug: what's at risk on the server and what is not".
- ^ "Mark J Cox – #Heartbleed". Retrieved April 12, 2014.
- ^ "Why is it called the 'Heartbleed Bug'?".
- ^ "Näin suomalaistutkijat löysivät vakavan vuodon internetin sydämestä - transl/Finnish researchers found a serious leakage of the heart of the Internet". April 10, 2014. Retrieved April 13, 2014.
- ^ Mehta, Neel. "Don't forget to patch DTLS". Twitter. Retrieved April 11, 2014.
- ^ Ben Grubb (April 14, 2014), "Heartbleed disclosure timeline: who knew what and when", The Sydney Morning Herald
- ^ "heartbeat_fix". Retrieved April 14, 2014.
- ^ "CloudFlare – Update on the Heartbleed OpenSSL Vulnerability". April 12, 2014.
- ^ a b "Git – openssl.git/commitdiff". The OpenSSL Project. April 7, 2014. Retrieved April 10, 2014.
- ^ Graham, Robert (May 8, 2014). "300k servers vulnerable to Heartbleed one month later". Errata Security. Retrieved June 7, 2014.
- ^ "Heartbleed certificate revocation tsunami yet to arrive". Netcraft. April 11, 2014. Retrieved April 24, 2014.
- ^ a b c Sean Michael Kerner (May 10, 2014). "Heartbleed Still a Threat to Hundreds of Thousands of Servers". eWEEK.
- ^ Heartbleed bug: 900 SINs stolen from Revenue Canada, CBC News, April 14, 2014 Some of the details are in the video linked from the page.
- ^ Canada Revenue Agency pushes tax deadline to May 5 after Heartbleed bug, Vancouver Sun, April 13, 2014
- ^ Thibedeau, Hannah (April 16, 2014). "Heartbleed bug accused charged by RCMP after SIN breach". CBC News.
- ^ Heartbleed hack case sees first arrest in Canada, BBC News, April 16, 2014
- ^ a b Kelion, Leo (April 14, 2014). "BBC News - Heartbleed hacks hit Mumsnet and Canada's tax agency". BBC News.
- ^ Mumsnet and Heartbleed as it happened, Mumsnet
- ^ Ward, Mark (April 29, 2014). "Heartbleed used to uncover data from cyber-criminals". BBC News.
- ^ Lawler, Richard (April 11, 2014). "Cloudflare Challenge proves 'worst case scenario' for Heartbleed is actually possible". Engadget.
- ^ "The Heartbleed Challenge". CloudFlare. 2014.
- ^ Jordan Robertson (April 16, 2014). "Hackers from China waste little time in exploiting Heartbleed". The Sydney Morning Herald.
- ^ Cipriani, Jason (April 9, 2014). "Heartbleed bug: Check which sites have been patched". CNET.
- ^ Gallagher, Sean (April 9, 2014). "Heartbleed vulnerability may have been exploited months before patch". Ars Technica.
- ^ "Were Intelligence Agencies Using Heartbleed in November 2013?", April 10, 2014, Peter Eckersley, EFF.org
- ^ Graham, Robert (April 9, 2014). "No, we weren't scanning for hearbleed[sic] before April 7". Errata Security.
- ^ Riley, Michael (April 12, 2014). "NSA Said to Exploit Heartbleed Bug for Intelligence for Years". Bloomberg L.P.
- ^ "Report: NSA exploited Heartbleed for years". USA Today. Retrieved April 11, 2014.
- ^ "NSA exploited Heartbleed bug for two years to gather intelligence, sources say". Financial Post. Retrieved April 11, 2014.
- ^ "Statement on Bloomberg News story that NSA knew about the 'Heartbleed bug' flaw and regularly used it to gather critical intelligence". National Security Agency. April 11, 2014.
- ^ Mark Hosenball; Will Dunham (April 11, 2014). "White House, spy agencies deny NSA exploited 'Heartbleed' bug". Reuters.
- ^ Troy Hunt (April 9, 2014). "Everything you need to know about the Heartbleed SSL bug".
- ^ Git log for OpenSSL 1.0.1g
- ^ "Spiceworks Community Discussions". community.spiceworks.com. Retrieved April 11, 2014.
- ^ The OpenSSL Project (April 7, 2014). "OpenSSL Security Advisory [07 Apr 2014]".
- ^ "Cyberoam Users Need not Bleed over Heartbleed Exploit". cyberoam.com. Retrieved April 11, 2014.
- ^ "Why Heartbleed is dangerous? Exploiting CVE-2014-0160". IPSec.pl. 2014.
- ^ John Graham-Cumming (April 28, 2014). "Searching for The Prime Suspect: How Heartbleed Leaked Private Keys". CloudFlare blog. CloudFlare. Retrieved June 7, 2014.
- ^ Lee Rainie; Maeve Duggan (April 30, 2014). "Heartbleed's Impact". Pew Research Internet Project. Pew Research Center. p. 2.
- ^ Bradley, Tony (April 14, 2014). "Reverse Heartbleed puts your PC and devices at risk of OpenSSL attack". PCWorld. IDG Consumer & SMB.
- ^ a b Charles Arthur (April 15, 2014). "Heartbleed makes 50m Android phones vulnerable, data shows". The Guardian. Guardian News and Media Limited.
- ^ "Security Now 451". Twit.Tv. Retrieved April 19, 2014.
- ^ Ramzan, Zulfikar (April 24, 2014). "'Reverse Heartbleed' can attack PCs and mobile phones". SC Magazine. Haymarket Media, Inc.
- ^ a b "OpenSSL Heartbeat Extension Vulnerability in Multiple Cisco Products". Cisco Systems. April 9, 2014.
- ^ "heartbleed-masstest: Overview". GitHub. Retrieved April 19, 2014.
- ^ "heartbleed-masstest/scans at master · musalbas". GitHub. Retrieved April 19, 2014.
- ^ Cipriani, Jason (April 10, 2014). "Which sites have patched the Heartbleed bug?". CNET. Retrieved April 10, 2014.
- ^ "Heartbleed FAQ: Akamai Systems Patched". Akamai Technologies. April 8, 2014.
- ^ "AWS Services Updated to Address OpenSSL Vulnerability". Amazon Web Services. April 8, 2014.
- ^ "Dear readers, please change your Ars account passwords ASAP". Ars Technica. April 8, 2014.
- ^ "All Heartbleed upgrades are now complete". BitBucket Blog. April 9, 2014.
- ^ "Keeping Your BrandVerity Account Safe from the Heartbleed Bug". BrandVerity Blog. April 9, 2014.
- ^ "Twitter / freenodestaff: we've had to restart a bunch..." April 8, 2014.
- ^ "Security: Heartbleed vulnerability". GitHub. April 8, 2014.
- ^ "IFTTT Says It Is 'No Longer Vulnerable' To Heartbleed". LifeHacker. April 8, 2014.
- ^ "Heartbleed bug and the Archive | Internet Archive Blogs". Blog.archive.org. April 9, 2014. Retrieved April 14, 2014.
- ^ "Twitter / KrisJelbring: If you logged in to any of". Twitter.com. April 8, 2014. Retrieved April 14, 2014.
- ^ "The widespread OpenSSL 'Heartbleed' bug is patched in PeerJ". PeerJ. April 9, 2014.
- ^ "Was Pinterest impacted by the Heartbleed issue?". Help Center. Pinterest. Retrieved April 20, 2014.
- ^ "Heartbleed Defeated". Retrieved April 13, 2014.
- ^ Staff (April 14, 2014). "We recommend that you change your reddit password". Reddit. Retrieved April 14, 2014.
- ^ "IMPORTANT ANNOUNCEMENTS FROM THE MAKERS OF CHILI". Retrieved April 13, 2014.
- ^ Codey, Brendan (April 9, 2014). "Security Update: We're going to sign out everyone today, here's why". SoundCloud.
- ^ "ctsai" (April 10, 2014). "SourceForge response to Heartbleed". SourceForge.
- ^ "Heartbleed". SparkFun. April 9, 2014.
- ^ "Heartbleed". Stripe (company). April 9, 2014. Retrieved April 10, 2014.
- ^ "Tumblr Staff-Urgent security update". April 8, 2014. Retrieved April 9, 2014.
- ^ Hern, Alex (April 9, 2014). "Heartbleed: don't rush to update passwords, security experts warn". The Guardian.
{{cite news}}
: Italic or bold markup not allowed in:|publisher=
(help) - ^ a b Grossmeier, Greg (April 8, 2014). "[Wikitech-l] Fwd: Security precaution – Resetting all user sessions today". Wikimedia Foundation. Retrieved April 9, 2014.
- ^ Grossmeier, Greg (April 10, 2014). "Wikimedia's response to the "Heartbleed" security vulnerability". Wikimedia Foundation blog. Wikimedia Foundation. Retrieved April 10, 2014.
- ^ "Wunderlist & the Heartbleed OpenSSL Vulnerability". April 10, 2014.
- ^ "Security concerns prompts tax agency to shut down website". CTV News. April 9, 2014. Retrieved April 9, 2014.
- ^ "Heartbleed: Canadian tax services back online". CBC News. Retrieved April 14, 2014.
- ^ Fiegerman, Seth (April 14, 2014). "The Heartbleed Effect: Password Services Are Having a Moment". Mashable.
- ^ "LastPass and the Heartbleed Bug". LastPass. April 8, 2014. Retrieved April 28, 2014.
- ^ "[tor-relays] Rejecting 380 vulnerable guard/exit keys". Lists.torproject.org. Retrieved April 19, 2014.
- ^ "Tor Weekly News — April 16th, 2014 | The Tor Blog". Blog.torproject.org. Retrieved April 19, 2014.
- ^ Gallagher, Sean (May 17, 2012). "Tor network's ranks of relay servers cut because of Heartbleed bug". Ars Technica. Retrieved April 19, 2014.
- ^ Mimoso, Michael. "Tor Blacklisting Exit Nodes Vulnerable to Heartbleed Bug | Threatpost | The first stop for security news". Threatpost. Retrieved April 19, 2014.
- ^ Paul Younger (April 11, 2014). "PC game services affected by Heartbleed and actions you need to take". IncGamers.
- ^ "HP Servers Communication: OpenSSL "HeartBleed" Vulnerability". April 18, 2014.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ "FileMaker products and the Heartbleed bug". May 6, 2014.
- ^ italovignoli (April 10, 2014). "LibreOffice 4.2.3 is now available for download". The Document Foundation. Archived from the original on April 12, 2014. Retrieved April 11, 2014.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ "CVE-2014-0160". LibreOffice. April 7, 2014. Retrieved May 2, 2014.
- ^ "LogMeIn and OpenSSL". LogMeIn. Retrieved April 10, 2014.
- ^ a b c d e f "OpenSSL Security Bug - Heartbleed / CVE-2014-0160". Retrieved May 12, 2014.
- ^ "Recent Version History". WinSCP. April 14, 2014. Retrieved May 2, 2014.
- ^ "McAfee Security Bulletin – OpenSSL Heartbleed vulnerability patched in McAfee products". McAfee KnowledgeBase. McAfee. April 17, 2014.
- ^ "Response to OpenSSL security issue CVE-2014-0160/CVE-2014-0346 a.k.a: "Heartbleed"". VMware, Inc. Retrieved April 17, 2014.
- ^ "DSA-2896-1 openssl -- security update". The Debian Project. April 7, 2014.
- ^ "Ubuntu Security Notice USN-2165-1". Canonical, Ltd. April 7, 2014. Retrieved April 17, 2014.
- ^ "Important: openssl security update". Red Hat, Inc. April 8, 2014.
- ^ "Karanbir Singh's posting to CentOS-announce". centos.org. April 8, 2014.
- ^ "Amazon Linux AMI Security Advisory: ALAS-2014-320". Amazon Web Services, Inc. April 7, 2014. Retrieved April 17, 2014.
- ^ "Android 4.1.1 devices vulnerable to Heartbleed bug, says Google". NDTV Convergence. April 14, 2014.
- ^ "Around 50 million Android smartphones are still vulnerable to the Heartbleed Bug". Fox News. April 17, 2014.
- ^ "Heartbleed: Android 4.1.1 Jelly Bean could be seriously affected". BGR Media. April 16, 2014.
- ^ Blaich, Andrew (April 8, 2014). "Heartbleed Bug Impacts Mobile Devices". Bluebox.
- ^ Snell, Jason (April 22, 2014). "Apple releases Heartbleed fix for AirPort Base Stations". Macworld.
- ^ Kleinman, Alexis (April 11, 2014). "The Heartbleed Bug Goes Even Deeper Than We Realized – Here's What You Should Do". The Huffington Post.
- ^ a b Yadron, Danny (April 10, 2014). "Heartbleed Bug Found in Cisco Routers, Juniper Gear". Dow Jones & Company, Inc.
- ^ "2014-04 Out of Cycle Security Bulletin: Multiple products affected by OpenSSL "Heartbleed" issue (CVE-2014-0160)". Juniper Networks. April 14, 2014.
- ^ IPCop (April 8, 2014). "IPCop 2.1.4 is released". 139697815506679.
- ^ "OpenSSL "Heartbleed" Information Disclosure, ECDSA". Electric Sheep Fencing LLC. April 8, 2014. Retrieved May 2, 2014.
- ^ "Heartbleed Bug Issue". Western Digital. April 10, 2014.
- ^ Brewster, Tom (April 16, 2014). "Heartbleed: 95% of detection tools 'flawed', claim researchers". The Guardian. Guardian News and Media Limited.
- ^ "Heartbleed OpenSSL extension testing tool, CVE-2014-0160". Possible.lv. Retrieved April 11, 2014.
- ^ "Heartbleed Scanner" by Italian cryptologist Filippo Valsorda
- ^ Heartbleed Vulnerability Test Tool" by Cyberoam
- ^ "Critical Watch :: Heartbleed Tester :: CVE-2014-0160". Heartbleed.criticalwatch.com. Retrieved April 14, 2014.
- ^ Metasploit module
- ^ Heartbleed Server Scanner by Rehmann
- ^ "Heartbleed Detector: Check If Your Android OS Is Vulnerable with Our App". Lookout Mobile Security blog. April 9, 2014. Retrieved April 10, 2014.
- ^ "Heartbleed checker". LastPass. Retrieved April 11, 2014.
- ^ "OpenSSL Heartbleed vulnerability scanner :: Online Penetration Testing Tools | Ethical Hacking Tools". Pentest-tools.com. Retrieved April 11, 2014.
- ^ Stafford, Jared (April 14, 2014). "heartbleed-poc.py". Red Hat, Inc.
- ^ Lynn, Samara. "Routers, SMB Networking Equipment - Is Your Networking Device Affected by Heartbleed?". PCMag.com. Retrieved April 24, 2014.
- ^ Mann, Jeffrey (April 9, 2014). "Tenable Facilitates Detection of OpenSSL Vulnerability Using Nessus and Nessus Perimeter Service". Tenable Network Security.
- ^ "Nmap 6.45 Informal Release". April 12, 2014.
- ^ "VRT: Heartbleed Memory Disclosure – Upgrade OpenSSL Now!". April 8, 2014.
- ^ "Blogs | How to Detect a Prior Heartbleed Exploit". Riverbed. April 9, 2014.
- ^ "Patched Servers Remain Vulnerable to Heartbleed OpenSSL | Hayden James". Haydenjames.io. Retrieved April 10, 2014.
- ^ "Security Certificate Revocation Awareness Test". Gibson Research Corporation. Retrieved April 19, 2014. The URI used for this reference serves to both describe and perform the test. Therefore, the reference cannot be accessed from revocation-aware browsers.
- ^ "Security Certificate Revocation Awareness – Specific Implementations". Gibson Research Corporation. Retrieved June 7, 2014.
- ^ Sean Michael Kerner (April 19, 2014). "Heartbleed SSL Flaw's True Cost Will Take Time to Tally". eWEEK.
- ^ a b c d A. Wheeler, David (April 29, 2014). "How to Prevent the next Heartbleed".
- ^ Merkel, Robert (April 11, 2014). "How the Heartbleed bug reveals a flaw in online security". The Conversation.
- ^ "Re: FYA: http: heartbleed.com". Gmane. Retrieved April 11, 2014.
- ^ "Theo De Raadt's Small Rant On OpenSSL". Slashdot. Dice. April 10, 2014.
- ^ "OpenBSD has started a massive strip-down and cleanup of OpenSSL". OpenBSD journal. April 15, 2014.
- ^ Lia Timson (April 11, 2014). "Who is Robin Seggelmann and did his Heartbleed break the internet?". The Sydney Morning Herald.
- ^ Williams, Chris (April 11, 2014). "OpenSSL Heartbleed: Bloody nose for open-source bleeding hearts". The Register.
- ^ Smith, Gerry (April 10, 2014). "How The Internet's Worst Nightmare Could Have Been Avoided". The Huffington Post.
The bug revealed this week was buried inside 10 lines of code and would have been spotted in an audit, according to Laurie, who works on the security team at Google.
- ^ a b Walsh, John (April 30, 2014). "Free Can Make You Bleed". SSH Communications Security.
- ^ Seltzer, Larry (April 21, 2014). "OpenBSD forks, prunes, fixes OpenSSL". Zero Day. ZDNet. Retrieved April 21, 2014.
- ^ Pagliery, Jose (April 18, 2014). "Your Internet security relies on a few volunteers". CNNMoney. Cable News Network.
- ^ a b c Perlroth, Nicole (April 18, 2014). "Heartbleed Highlights a Contradiction in the Web". The New York Times. The New York Times Company.
- ^ Kaminsky, Dan (April 10, 2014). "Be Still My Breaking Heart". Dan Kaminsky's Blog.
- ^ a b "Amazon Web Services, Cisco, Dell, Facebook, Fujitsu, Google, IBM, Intel, Microsoft, NetApp, Rackspace, VMware and The Linux Foundation Form New Initiative to Support Critical Open Source Projects". The Linux Foundation. April 24, 2014.
- ^ Paul, Ian (April 24, 2014). "In Heartbleed's wake, tech titans launch fund for crucial open-source projects". PCWorld.