A new security vulnerability in an older version of TLS / SSL was announced this week and has been named “DROWN” by its authors (Decrypting RSA with Obsolete and Weakened eNcryption). It’s estimated to affect up to 11 million servers using the TLS / SSL protocol, from websites to e-mail servers. This unique attack allows a third-party who has intercepted encrypted traffic between a client and an unaffected server, such as one only supporting TLSv1.1 and TLSv1.2, to use another server that is using the same RSA private / public key-pair to act as an oracle to decrypt the intercepted traffic. This leads to a larger attack surface than would normally be exposed if the vulnerability were isolated to a single host since it allows an adversary to perform a “cross-protocol” attack by taking advantage of servers sharing the same TLS / SSL certificates.
In other words, this means that even if a server is configured correctly with proper TLS versions, cipher suites, and is using RSA key exchange, users who interface with that website could be at risk if there is another server that has the same TLS / SSL certificate and supports SSLv2. This attack can also be done using servers running TLS / SSL with different application protocols, such as an e-mail server with the same TLS / SSL certificate acting as an oracle to compromise security for a website. TLS / SSL configurations on e-mail servers and FTP servers are often overlooked, and is considered high-risk in this situation since an attacker could use that server to decrypt communication from the protected host.
There have been other attacks in previous TLS / SSL protocol versions and implementations that used what’s known as an “oracle” to decrypt communication, but these have always been constrained to the affected protocol. An “oracle” is an unintended side-effect of a server’s inconsistency to respond to different errors the same way, thus allowing an attacker to understand the specific reasons why a transaction failed, and possibly leak information about the underlying data. In most systems, understanding errors is important for diagnostic capabilities, but in cryptographic systems, it might compromised protected data.