DROWN Attack on TLS – Everything You Need To Know


So SSL in general is having a rough time lately, now with the SSLv2 DROWN attack on TLS. And this is not long after Logjam and a while since Heartbleed, POODLE and FREAK.

DROWN is a cross-protocol attack that can decrypt passively collected TLS sessions from up-to-date clients and stands for Decrypting RSA with Obsolete and Weakened eNcryption.

DROWN Attack

DROWN is a serious vulnerability that affects HTTPS and other services that rely on SSL and TLS, some of the essential cryptographic protocols for Internet security. These protocols allow everyone on the Internet to browse the web, use email, shop online, and send instant messages without third-parties being able to read the communication.

The full technical paper is available here: drown-attack-paper.pdf [PDF]

In some ways this is just a new, improved, stronger version of the earlier Bleichenbacher attack.

A typical scenario requires the attacker to observe 1,000 TLS handshakes, then initiate 40,000 SSLv2 connections and perform 250 offline work to decrypt a 2048-bit RSA TLS cipher-text.

If any other server uses the same private key and allows SSLv2 connections, even for completely different protocol, you could be vulnerable. Many companies reuse the same certificate and key on their web and email servers, for instance. In this case, if the email server supports SSLv2 and the web server does not, an attacker can take advantage of the email server to break TLS connections to the web server.

Ouch.


In a worst case scenario and with adequate processing power, this could mean a real time man-in-the-middle attack is possible.

Am I vulnerable?

If you have any servers, anywhere with SSLv2 enabled – then yes. If you share private keys (that includes with a CDN provider, mail server, DNS server etc) you could be in worse trouble. Even if your web server doesn’t have SSLv2 enabled, you are still vulnerable.

How do I protect myself

For most of Linux bods, OpenSSL already released a patched version of their library last Tuesday – if you haven’t already installed it please do so ASAP.

On Ubuntu it’s as simple as doing aptitude update; aptitude safe-upgrade -y; and then restarting all relevant services, or simply rebooting.

Check your OpenSSL build date – it should be February 29th for you to be safe:

For nginx, newer versions disable SSLv2 by defauly anyway, but if you want to be sure use the following:

And for Apache:

So go and patch, and if you’re not sure about the implications of this attack I suggest regenerating your private keys, regenerate new SSL certs and install those after patching and blocking SSLv2 from all your services.

The official site for the attack can be found here: https://drownattack.com/

More Reading

Reddit: The DROWN Attack
One-third of all HTTPS websites open to DROWN attack
DROWN Vulnerability Hits SSL/TLS, but It’s No Heartbleed

Posted in: Cryptography, Exploits/Vulnerabilities

,


Latest Posts:


Socialscan - Command-Line Tool To Check For Email And Social Media Username Usage Socialscan – Command-Line Tool To Check For Email And Social Media Username Usage
socialscan is an accurate command-line tool to check For email and social media username usage on online platforms, given an email address or username,
CFRipper - CloudFormation Security Scanning & Audit Tool CFRipper – CloudFormation Security Scanning & Audit Tool
CFRipper is a Python-based Library and CLI security analyzer that functions as an AWS CloudFormation security scanning and audit tool
CredNinja - Test Credential Validity of Dumped Credentials or Hashes CredNinja – Test Credential Validity of Dumped Credentials or Hashes
CredNinja is a tool to quickly test credential validity of dumped credentials (or hashes) across an entire network or domain very efficiently.
assetfinder - Find Related Domains and Subdomains assetfinder – Find Related Domains and Subdomains
assetfinder is a Go-based tool to find related domains and subdomains that are related to a given domain from a variety of sources including Facebook and more.
Karkinos - Beginner Friendly Penetration Testing Tool Karkinos – Beginner Friendly Penetration Testing Tool
Karkinos is a light-weight Beginner Friendly Penetration Testing Tool, which is basically a 'Swiss Army Knife' for pen-testing and/or hacking CTF's.
Aclpwn.Py - Exploit ACL Based Privilege Escalation Paths in Active Directory Aclpwn.Py – Exploit ACL Based Privilege Escalation Paths in Active Directory
Aclpwn.py is a tool that interacts with BloodHound< to identify and exploit ACL based privilege escalation paths.


One Response to DROWN Attack on TLS – Everything You Need To Know

  1. Cliff March 8, 2016 at 10:58 pm #

    Hi, DROWN does not expose your private Keys. It exposes the session keys to allow a session to be decrypted. Please see the openssl blog posting FAQ question on that specific point – https://openssl.org/blog/blog/2016/03/01/an-openssl-users-guide-to-drown/.

    Regards,