Attaque DROWN (CVE-2016-0800)
Qu'est-ce que Attaque DROWN (CVE-2016-0800) ?
Attaque DROWN (CVE-2016-0800)Attaque cross-protocol de 2016 utilisant un serveur compatible SSLv2 partageant ses clés avec TLS pour déchiffrer des sessions TLS modernes, compromettant la sécurité de HTTPS, SMTPS et IMAPS.
DROWN (Decrypting RSA with Obsolete and Weakened eNcryption), CVE-2016-0800, a été divulguée le 1er mars 2016 par Aviram, Schinzel, Somorovsky et al. Il s'agit d'une attaque cross-protocol : SSLv2 négocie toujours des suites de chiffrement RSA d'exportation sur 40 bits, et son handshake révèle si un texte chiffré présente un remplissage PKCS#1 v1.5 correct. Cela fait d'un serveur SSLv2 un oracle de remplissage de Bleichenbacher. Point crucial, le service SSLv2 vulnérable n'a pas besoin d'être la cible : si un quelconque service partage la même clé privée/certificat RSA (par exemple un ancien serveur SMTP ou IMAP réutilisant la clé du serveur web), l'attaquant peut enregistrer passivement des handshakes TLS modernes et déchiffrer les clés de session hors ligne.
L'attaque générale nécessitait environ 1 000 connexions TLS enregistrées et environ 2^50 opérations de calcul — réalisable pour moins de 440 USD de calcul cloud à l'époque. Une variante bien pire, « special DROWN », exploitait une faille d'OpenSSL (CVE-2016-0703) permettant à un attaquant actif de déchiffrer une seule session TLS en quelques minutes sur un ordinateur portable. Les chercheurs ont estimé qu'environ 33 % de tous les serveurs HTTPS étaient vulnérables. Mitigations : désactiver SSLv2 sur chaque service, mettre à jour OpenSSL vers 1.0.2g/1.0.1s, et ne jamais réutiliser une clé privée ou un certificat entre des points d'accès compatibles SSLv2 et des points d'accès modernes.
flowchart TD A[Client] -->|Handshake TLS moderne| B[Serveur TLS sécurisé] C[Attaquant] -->|Enregistre passivement<br/>les handshakes chiffrés par RSA| B C -->|Envoie des textes chiffrés forgés| D[Serveur SSLv2<br/>même clé/cert RSA] D -->|Réponses de l'oracle de remplissage<br/>chiffrement d'exportation| C C --> E[Récupère la clé de session TLS<br/>Bleichenbacher / DROWN] E --> F[Déchiffre la session capturée<br/>HTTPS / SMTPS / IMAPS]
● Exemples
- 01
Attaquant déchiffrant un handshake HTTPS capturé à l'aide d'un serveur SMTP compatible SSLv2 partageant le certificat.
- 02
Désactivation rapide de SSLv2 sur les passerelles mail, FTP et héritées après la publication de DROWN.
● Questions fréquentes
Qu'est-ce que Attaque DROWN (CVE-2016-0800) ?
Attaque cross-protocol de 2016 utilisant un serveur compatible SSLv2 partageant ses clés avec TLS pour déchiffrer des sessions TLS modernes, compromettant la sécurité de HTTPS, SMTPS et IMAPS. Cette notion relève de la catégorie Vulnérabilités en cybersécurité.
Que signifie Attaque DROWN (CVE-2016-0800) ?
Attaque cross-protocol de 2016 utilisant un serveur compatible SSLv2 partageant ses clés avec TLS pour déchiffrer des sessions TLS modernes, compromettant la sécurité de HTTPS, SMTPS et IMAPS.
Comment se défendre contre Attaque DROWN (CVE-2016-0800) ?
Les défenses contre Attaque DROWN (CVE-2016-0800) combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Attaque DROWN (CVE-2016-0800) ?
Noms alternatifs courants : CVE-2016-0800, Attaque cross-protocol SSLv2.