News

OpenSSL Bug Allowed Attackers to Decrypt HTTPS Traffic

The OpenSSL cryptographic library was recently updated in response to a high severity vulnerability that was found its code. The vulnerability made it possible for attackers to get hold of the decryption key used for traffic secured by HTTPS and other transport layer security methods.

Thankfully, while the consequences of the vulnerability were high, the flaw can only be exploited when a very specific set of conditions are met. For starters, only version 1.0.2 even contains the vulnerability. The application reliant on it must then use groups based on the digital signature algorithm (DSA), which then generate ephemeral keys using the Diffie-Hellman key exchange. Server applications typically re-use the same private Diffie-Hellman exponent for the lifetime of the server process, by default. The result is that the server’s encrypted traffic then becomes vulnerable to a key-recovery attack, the same being the case in configurations that rely on a static Diffie-Hellman cipher suite.

When the requirements are met, an attacker can make a barrage of handshake requests to the vulnerable endpoint system. With enough requests, partial secret values can be obtained and combined using the Chinese Remainder Theorem to calculate the encryption key. More extensive information on the attack and vulnerability can be found on Antonio Sanso’s blog and as part of an OpenSSL security advisory.

Thankfully, the majority of mainstream OpenSSL and DSA-based Diffie-Hellman reliant applications don’t seem to meet these requirements. For example, the common Apache Web Server enables the SSL_OP_SINGLE_DH_USE option, which causes different private exponents to be used across the process’ lifespan. Meanwhile, the two main forks of OpenSSL, do not have the vulnerability present in them. Google’s BoringSSL removed the option for SSL_OP_SINGLE_DH_USE some months earlier, while in LibreSSL, it was deprecated less than a week ago. Anything that uses a static cipher suite risks continuing to be vulnerable, however.

Sanso reported the bug privately to the OpenSSL project maintainers on the 12th of January, meaning it took only two weeks for them to identify, test and roll out a fix. Curiously, at the time of the bug being reported, a fix relating to the re-use of Diffie-Hellman exponents had already been committed to the OpenSSL but was yet to be part of a release. For obvious security reasons, details of the vulnerability were not publicly released until a patch was already available so that would-be attackers would not be aware of the attack vector until it was already removed. While it may only affect edge-cases, if you’re running a server that relies on OpenSSL 1.0.2, you should be sure to update to 1.0.2f and those on 1.0.1 should install 1.0.1r although support for 1.0.1 is finishing at the end of this year.

Alexander Neil

Disqus Comments Loading...

Recent Posts

Fortnite Main Battle Royal Mode Was Thought up in the Back of an Uber

No matter who you are or where you are it's pretty sure thing that you've…

3 hours ago

Philips Evnia 42″ 3840×2160 OLED 138Hz 0.1ms A-Sync HDR Widescreen Gaming Monitor

Low input lag reduces time delay between devices to monitor SmartImage game mode optimised for…

4 hours ago

Alphacool Apex Stealth Metal fan 2000rpm Matte Black

High-quality, elegant as well as timeless design and technical innovation - these are the features…

4 hours ago

NZXT T120 RGB Performance 120mm CPU Cooler

Aluminum heat pipe cover discreetly hides copper piping 4 conductive copper heat pipes with Direct…

5 hours ago

ASUS ROG Ryujin III 240 ARGB Performance AIO CPU Liquid Cooler

The customizable ARGB fans snap together with a magnetic connector that links the fans and…

5 hours ago

Varmilo VEA88 CMYK Gaming Keyboard, MX-Red, White-LED

TKL mechanical keyboard with 88 keys in a UK ISO layout V-silk PBT keycaps with…

5 hours ago