Noticias
DROWN, la vulnerabilidad que ha puesto en jaque a la criptografía
El cifrado en Internet no para de dar sustos en los últimos años. Si anteriormente tuvimos a POODLE, Heartbleed y Logjam, recientemente ha aparecido una nueva vulnerabilidad que puede dejar en jaque a una importante cantidad de sitios web HTTPS, DROWN, que resulta ser el acrónimo de Decrypting RSA with Obsolete and Weakened eNcryption (descifrado de RSA con un cifrado obsoleto y debilitado).
DROWN es una seria vulnerabilidad que afecta a HTTPS y a otros servicios que confían su cifrado en SSL y TLS, elementos esenciales para el cifrado de datos en Internet. Se estima que sobre el 33% de todos los sitios web que usan HTTPS podrían estar en riesgo.
DROWN puede descifrar las sesiones TLS, aunque este último protocolo no está afectado. Para poder ser explotado se necesita que el soporte de TLS esté acompañado del viejo y vulnerable SSLv2, que tiene que estar marcado como Export para poner DROWN en marcha.
La imagen de arriba describe bastante bien cómo un atacante puede explotar DROWN. Mientras que el cliente realiza una conexión TLS supuestamente segura, el hacker aprovecha el soporte de SSLv2 del servidor para realizar el ataque y descifrar las conexiones TLS, a través del cual puede obtener todo tipo de datos que el cliente envíe al servidor, o sea, nombres de usuario, contraseñas, números de tarjetas de crédito, domicilio postal, etc. También hay otra posibilidad, y es que este grave fallo de seguridad permite a un atacante poder suplantar una web bajo HTTPS, pudiendo aprovecharse de la inocencia del usuario y obtener todos los datos que este le suministre a través de la web falsificada. Para explotar DROWN el atacante no lanza el ataque sobre la conexión o el cliente, sino sobre el servidor que utiliza el cifrado SSLv2.
Cómo proteger un servidor de DROWN
Según el software de cifrado empleado, las medidas a tomar son diferentes. Mencionaremos algunos de los más importantes y enlazaremos a otros que pueden ser interés.
- OpenSSL: En la librería criptografía más mediática lo que hay que hacer es actualizar a las versiones 1.0.2g y 1.0.1g si las usadas son 1.0.2 y 1.0.1 respectivamente o bien cualquier otra versión anterior a esas dos.
- Microsoft IIS (Windows Server): IIS 7.0 o superior tiene SSLv2 desactivado por defecto, aunque se puede activar manualmente. IIS 7.0 ya no está soportado por Microsoft, y desde el sitio web del ataque DROWN se recomienda actualizarlo en caso de ser la versión en uso y luego comprobar si las claves han sido expuestas a través de su formulario.
- Network Security Services (NSS): Otra librería de criptografía bastante común empleada por muchos servidores. A partir de la versión 3.13 SSLv2 está desactivado por defecto, aunque puede ser activado manualmente. Se recomienda a los usuarios actualizar a una versión más reciente de esta biblioteca.
- El sitio web del ataque también ofrece instrucciones para Apache, Postfix y Nginx. En cualquier caso siempre se puede emplear su formulario para comprobar que la clave privada no haya sido expuesta.
Lo más sencillo sería desactivar el soporte para SSLv2. De hecho muchos servidores y librerías de criptografía ya lo tienen desactivado por defecto. Sin embargo todavía existe una cantidad importante de clientes que utilizan ese cifrado obsoleto, por lo que muchos administradores se ven obligados a activarlo para conseguir que su sitio web sea visitado o su servicio utilizado.
SSLv2, ¿un cifrado débil por orden de la Casa Blanca?
Según informan desde TheatPost, Ivan Ristic, director de ingeniería en Qualys, denuncia que “cuando crearon SSLv2, crearon una versión especial, debilitándolo intencionadamente”.
En el artículo también se denuncia presiones de la administración de Bill Clinton en los 90 del siglo pasado para que el gobierno de Estados Unidos pudiese romper las claves de cifrado de forma sencilla, convirtiendo a este veterano cifrado en algo no confiable, por lo que solo se puede recomendar dejar de ser usado cuanto antes si se quiere preservar la seguridad y la privacidad.
No se puede hacer nada desde los navegadores
A pesar de que los navegadores web modernos ya no soportan SSLv2, nada pueden hacer los clientes (usuarios de páginas web y servicios) contra DROWN, debido a que los navegadores realizan una conexión TLS correctamente verificada a pesar de estar presente la vulnerabilidad.
El problema, como hemos comentado, reside el servidor, ya que un atacante puede descifrar las conexiones TLS desde el servidor si el soporte para SSLv2 también está activado.
Más información | Documento técnico completo de DROWN (PDF)