Ataque DROWN (CVE-2016-0800)
¿Qué es Ataque DROWN (CVE-2016-0800)?
Ataque DROWN (CVE-2016-0800)Ataque cross-protocol de 2016 que usa un servidor con SSLv2 que comparte claves con TLS para descifrar sesiones TLS modernas, socavando la seguridad de HTTPS, SMTPS e IMAPS.
DROWN (Decrypting RSA with Obsolete and Weakened eNcryption), CVE-2016-0800, fue divulgado el 1 de marzo de 2016 por Aviram, Schinzel, Somorovsky et al. Se trata de un ataque cross-protocol: SSLv2 todavía negocia suites de cifrado RSA de exportación de 40 bits, y su handshake filtra si un texto cifrado tiene un relleno PKCS#1 v1.5 correcto. Eso convierte a un servidor SSLv2 en un oráculo de relleno de Bleichenbacher. Lo crucial es que el servicio SSLv2 vulnerable no tiene por qué ser el objetivo: si cualquier servicio comparte la misma clave privada/certificado RSA (por ejemplo, un servidor SMTP o IMAP antiguo que reutiliza la clave del servidor web), el atacante puede grabar pasivamente handshakes TLS modernos y descifrar las claves de sesión sin conexión.
El ataque general necesitaba alrededor de 1.000 conexiones TLS grabadas y unas 2^50 operaciones de trabajo, factible por menos de 440 USD de cómputo en la nube en aquel momento. Una variante mucho peor, "special DROWN", explotaba un fallo de OpenSSL (CVE-2016-0703) que permitía a un atacante activo descifrar una única sesión TLS en minutos sobre un portátil. Los investigadores estimaron que cerca del 33 % de todos los servidores HTTPS eran vulnerables. Mitigaciones: deshabilitar SSLv2 en todos los servicios, actualizar OpenSSL a 1.0.2g/1.0.1s y nunca reutilizar una clave privada o certificado entre endpoints con SSLv2 y endpoints modernos.
flowchart TD A[Cliente] -->|Handshake TLS moderno| B[Servidor TLS seguro] C[Atacante] -->|Graba pasivamente<br/>handshakes cifrados con RSA| B C -->|Envía textos cifrados manipulados| D[Servidor SSLv2<br/>misma clave/cert RSA] D -->|Respuestas del oráculo de relleno<br/>cifrado de exportación| C C --> E[Recupera la clave de sesión TLS<br/>Bleichenbacher / DROWN] E --> F[Descifra la sesión capturada<br/>HTTPS / SMTPS / IMAPS]
● Ejemplos
- 01
Atacante que descifra un handshake HTTPS capturado usando un servidor SMTP con SSLv2 que comparte el certificado.
- 02
Operadores que deshabilitan rápidamente SSLv2 en correo, FTP y pasarelas legacy tras la publicación de DROWN.
● Preguntas frecuentes
¿Qué es Ataque DROWN (CVE-2016-0800)?
Ataque cross-protocol de 2016 que usa un servidor con SSLv2 que comparte claves con TLS para descifrar sesiones TLS modernas, socavando la seguridad de HTTPS, SMTPS e IMAPS. Pertenece a la categoría de Vulnerabilidades en ciberseguridad.
¿Qué significa Ataque DROWN (CVE-2016-0800)?
Ataque cross-protocol de 2016 que usa un servidor con SSLv2 que comparte claves con TLS para descifrar sesiones TLS modernas, socavando la seguridad de HTTPS, SMTPS e IMAPS.
¿Cómo defenderse de Ataque DROWN (CVE-2016-0800)?
Las defensas contra Ataque DROWN (CVE-2016-0800) combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para Ataque DROWN (CVE-2016-0800)?
Nombres alternativos comunes: CVE-2016-0800, Ataque cross-protocol con SSLv2.