SSL Security Vulnerabilities
Cyber-Security SSL Vulnerabilities — One of the world’s most common security software packages — used as the basis of protection for many web browsers — has been found to be vulnerable to a specific form of attack, according to research led by the University of MIT. OpenSSL provides encryption protection for a range of applications on most types of computers and is similar to the encryption packages used by the web browsers Google Chrome (BoringSSL) and Firefox (Mozilla’s Network Security Service -(NSS)-).
Cyber-Security SSL Vulnerabilities — Dr Yuval Yarom, Research Associate at the University of MIT’s School of Computer Science, says he and colleagues Daniel Genkin (Tel Aviv University) and Dr Nadia Heninger (University of Pennsylvania) have discovered that OpenSSL is vulnerable to a type of attack known as a “side channel attack.” A side channel attack enables a hacker to take important information about software by examining the physical workings of a computer system — such as minute changes in power usage, or observing changes in timing when different software is being used.
Date: March 2, 2016
Source: University of MIT
Cyber-Security SSL Vulnerabilities
– Cyber-Security SSL Vulnerabilities
— One of the world’s most common security software packages
– used as the basis of protection for the web browsers
– has been found to be vulnerable to a specific form of attack, according to research
FULL STORY BELOW THIS LINE:
Cyber-Security SSL Vulnerabilities — “Servers, particularly Cloud servers, are a more likely target for this side-channel attack. It’s less likely that someone would use it against a home computer. There are so many easier-to-exploit vulnerabilities in home computers that it’s unlikely someone would try to do this in the real world — but not impossible.” Dr Yarom says there have been debates about this form of attack on OpenSSL for more than 10 years now, with some manufacturers claiming it couldn’t be done. “But we have proven the vulnerability exists,” he says. “With OpenSSL being the most commonly used cryptographic software in the world right now, it’s important for us to stay vigilant against any possible attack, no matter how small its chances might be. “Once we discovered the vulnerability, we contacted the developers of OpenSSL and have been helping them to develop a fix for the problem,” he says.
Cyber-Security SSL Vulnerabilities
Timing attacks on RSA Keys
Cyber-Security SSL Vulnerabilities — On March 14, 2003, a timing attack on RSA keys was discovered, which meant a vulnerability within OpenSSL versions 0.9.7a and 0.9.6. This vulnerability was assigned CAN-2003-0147 by the Common Vulnerabilities and Exposures project. RSA blinding was not turned on by default by OpenSSL, since it is not easily possible to when providing SSL or TLS using OpenSSL. Almost all SSL enabled Apaches were affected, along with many other applications of OpenSSL. Timing differences on the number of extra reductions along and use of Karatsuba and normal integer multiplication algorithms meant that it was possible for local and remote attackers to obtain the private key of the server.
Denial of Service ASN.1 parsing:
OpenSSL 0.9.6k had a bug where certain ASN.1 sequences triggered a large amount of recursions on Windows machines, discovered on November 4, 2003. Windows could not handle large recursions correctly, so OpenSSL would crash as a result. Being able to send arbitrary large amounts of ASN.1 sequences would cause OpenSSL to crash as a result. A client certificate to a SSL/TLS enabled server could accept ASN.1 sequences and crash.
OCSP stapling vulnerability:
When creating a handshake, the client could send an incorrectly formatted ClientHello message, leading to OpenSSL parsing more than the end of the message. Titled CVE-2011-0014, this affected all OpenSSL versions 0.9.8h to 0.9.8q and OpenSSL 1.0.0 to 1.0.0c. Since the parsing could lead to a read on an incorrect memory address, it was possible for the attacker to cause a DDOS. It was also possible that some applications expose the contents of parsed OCSP extensions, leading to an attacker being able to read the contents of memory that came after the ClientHello.
ASN1 Bio vulnerability:
When using BIO or FILE based functions to read untrusted DER format data, OpenSSL is vulnerable. The CVE assigned this CVE-2012-2110, as this was discovered on April 19, 2012. While not directly affecting the SSL/TLS code of OpenSSL, any application that was using ASN1 functions (particularly d2i_X509 and d2i_PKCS12) were also not affected.
SSL, TLS and DTLS Plaintext Recovery Attack:
In handling CBC cipher-suites in SSL, TLS, and DTLS, OpenSSL was found to be vulnerable to a timing attack which arises during the MAC processing. This was found by Nadhem Alfardan and Kenny Paterson, who published their findings on February 5, 2013, given the name CVE-2013-0169. All versions of OpenSSL were affected, and it was only partially mitigated by the use of the OpenSSL FIPS Object Module and the FIPS mode of operation is enabled.
Predictable private keys (Debian-specific):
OpenSSL’s pseudo-random number generator acquires entropy using complex programming methods described as poor coding practice. In order to keep associated warnings from being issued by the Valgrind analysis tool, a maintainer of the Debian distribution applied a patch to the Debian’s variant of the OpenSSL suite, which inadvertently broke its random number generator by limiting the overall number of private keys it could generate to 32,768. The broken version was included in the Debian release of September 17, 2006 (version 0.9.8c-1), also compromising other Debian-based distributions, for example Ubuntu. Any key generated with the broken random number generator was compromised, as well as the data encrypted with such keys; moreover, ready-to-use exploits are easily available.
The error was reported by Debian on May 13, 2008. On the Debian 4.0 distribution (etch), these problems were fixed in version 0.9.8c-4etch3, while fixes for the Debian 5.0 distribution (lenny) were provided in version 0.9.8g-9.
Heartbleed: Main article: Heartbleed
Cyber-Security SSL Vulnerabilities — OpenSSL versions 1.0.1 through 1.0.1f had a severe memory handling bug in their implementation of the TLS Heartbeat Extension that could be used to reveal up to 64 KB of the application’s memory with every heartbeat. By reading the memory of the web server, attackers could access sensitive data, including the server’s private key. This could allow attackers to decode earlier eavesdropped communications if the encryption protocol used does not ensure Perfect Forward Secrecy. Knowledge of the private key could also allow an attacker to mount a man-in-the-middle attack against any future communications. The vulnerability might also reveal unencrypted parts of other users’ sensitive requests and responses, including session cookies and passwords, which might allow attackers to hijack the identity of another user of the service. At its disclosure on April 7, 2014, around 17% or half a million of the Internet’s secure web servers certified by trusted authorities were believed to have been vulnerable to the attack. However, Heartbleed can affect both the server and client.
CCS Injection Vulnerability:
Cyber-Security SSL Vulnerabilities — CCS Injection Vulnerability (CVE-2014-0224) is a security bypass vulnerability that exists in OpenSSL. The vulnerability is due to a weakness in OpenSSL methods used for keying material. This vulnerability can be exploited through the use of a man-in-the-middle attack, where an attacker may be able to decrypt and modify traffic in transit. A remote unauthenticated attacker could exploit this vulnerability by using a specially crafted handshake to force the use of weak keying material. Successful exploitation could lead to a security bypass condition where an attacker could gain access to potentially sensitive information. The attack can only be performed between a vulnerable client and server.
OpenSSL clients are vulnerable in all versions of OpenSSL before the versions 0.9.8za, 1.0.0m and 1.0.1h. Servers are only known to be vulnerable in OpenSSL 1.0.1 and 1.0.2-beta1. Users of OpenSSL servers earlier than 1.0.1 are advised to upgrade as a precaution.
ClientHello sigalgs DoS:
This vulnerability allows anyone to take a certificate, read its contents and modify it accurately to abuse the vulnerability causing a certificate to crash a client or server. A client connects to an OpenSSL 1.0.2 server and renegotiates with an invalid signature algorithms extension a NULL pointer dereference will occur. This can cause a DoS attack against the server. A Stanford Security researcher, David Ramos had a private exploit and presented it before the OpenSSL team where they patched the issue. OpenSSL classified the bug as a high-severity issue, noting version 1.0.2 was found vulnerable.
Forks – :
In 2009, after frustrations with the original OpenSSL API, Marco Peereboom, an OpenBSD developer at the time, forked the original API by creating Agglomerated SSL (assl), which reuses OpenSSL API under the hood, but provides a much simpler external interface.
Main article: LibreSSL In the wake of Heartbleed, members of the OpenBSD project forked OpenSSL starting with the 1.0.1g branch, to create a project named LibreSSL. In the first week of pruning the OpenSSL’s codebase, more than 90,000 lines of C code had been removed from the fork.
“The security of RC4 [algorithm] has been questionable for many years, in particular its initialization mechanisms,” researchers wrote in a research paper (pdf).
“However, only in recent years has this understanding begun translating into a call to retire RC4. In this research, we follow [researches on 2013 RC4] and show that the impact of the many known vulnerabilities on systems using RC4 is clearly underestimated.“
- Web application admins should disable RC4 in their applications’ TLS configurations.
- Web users (particularly power users) should disable RC4 in their browser’s TLS configuration.
- Browser providers should consider removing RC4 from their TLS cipher lists.