Logjam: Vulnerabilidades TLS (CVE-2015-4000)
Red Hat Product Security ha tenido conocimiento de varios problemas en las conexiones TLS al usar el protocolo de intercambio de llave Diffie-Hellman (DH).
Información de fondo
Se halló que las conexiones TLS que usan el protocolo de intercambio de llave Diffie-Hellman son vulnerables a un ataque, en el que un atacante Man-in-the-middle (MiTM) podría degradar las conexiones TLS vulnerables a criptografía export-grade de 512 bits. El ataque afecta cualquier servidor que soporte cifras DHE_EXPORT. Este ataque puede llevarse a cabo mediante precomputación de los 512 bits primos en dos conjuntos de parámetros débiles Diffie-Hellman, entre ellos las versiones httpd 2.1.5 a 2.4.7 de Apache y otras de OpenSSL.
Logjam research paper describe los siguientes problemas relacionados con las llaves débiles DH:
- El uso de paquetes de cifras de DHE_EXPORT en el protocolo TLS o las llaves DHE con fortaleza de cifrado export-grade: estas llaves tienen 512 bits de tamaño y pueden descifrarse si tienen el suficiente tiempo y poder de computación. Esto es un problema especialmente con la privacidad perfect-forward porque un atacante podría registrar el tráfico y posteriormente descifrarlo.
El uso de primos precomputados que se proveen con algunos paquetes, tales como algunas versiones httpd y sshd de Apache:
- Un error en el protocolo TLS, el cual puede conducir a una degradación de DHE a DHE_EXPORT: este problema ha sido asignado CVE-2015-4000.
Impacto
Los siguientes escenarios de ataques son posibles al usar los problemas anotados arriba.
-
Descifrado fuera de línea de conexiones débiles DHE
Este ataque requiere que el servidor se predetermine para usar una llave de intercambio Diffie-Hellman con parámetros de 512 bits. Esto permite a un adversario de red pasivo, que puede registrar la comunicación entre un cliente y un servidor, descifrar más adelante esta comunicación -
Degradación DHE_EXPORT y descifrado fuera de línea de la extensión TLS False Start
Este ataque requiere que un servidor soporte los paquetes de cifras DHE_EXPORT o use los parámetros de 512 bits en cifras DHE non-export. El cliente debe estar usando la extensión TLS False Start. En estas circunstancias, un atacante podría registrar la comunicación entre un cliente y un servidor y luego descifrarla. -
Degradación DHE_EXPORT y suplantación de servidor man-in-the-middle
Este ataque es similar al anterior, pero no requiere la extensión TLS False Start para ser habilitado. En su lugar, el atacante debe esperar una cantidad significativa de tiempo para que el cliente complete el handshake. Esto se debe a que el atacante debe calcular la llave de conexión durante el proceso de handshake y este cálculo se lleva varios minutos.
Resolución
**Servidores SSL/TLS **
En el ataque MiTM, el atacante trata de conectarse al servidor mediante paquetes de cifras DHE_EXPORT a nombre del cliente. Este ataque ser realiza debido a un error en el protocolo TLS en la forma que están compuestos los paquetes de cifras DHE y DHE_EXPORT. Al hacer uso de este error de protocolo, se puede llevar a cabo un ataque MiTM si el servidor soporta programas de cifras DHE_EXPORT.
Este problema no afecta las versiones actuales de paquetes openssl distribuidas con Red Hat Enterprise Linux 6 y 7, ya que ellas no incluyen los paquetes de cifras DHE_EXPORT o cualquier paquete de cifras export-grade en su lista de cifras DEFAULT. (Las aplicaciones que usan la preferencia de cifras DEFAULT no usarán los paquetes de cifras export-grade. Sin embargo, la configuración application-specific puede rehabilitar el uso de cifras de exportación.) Por favor, observe que este es solo el caso cuando openssl es utilizado por un servidor de red. Para obtener más información sobre problemas de clientes, por favor vea a continuación.
Los paquetes openssl en Red Hat Enterprise Linux 7 excluidos los paquetes de cifras export-grade del DEFAULT cuando se utilizan como un servidor desde su lanzamiento inicial. En Red Hat Enterprise Linux 6, el cambio se realizó a través de la recomendación RHBA-2014:1525 publicada como parte de Red Hat Enterprise Linux 6.6.
Red Hat Enterprise Linux 5 soporta el paquete de cifras export-grade en su lista de cifras predeterminada. Red Hat no planea cambiar la lista de cifras predeterminada en Red Hat Enterprise Linux 5 porque esta CVE ha sido valorada como de impacto moderado. Para obtener información sobre cuáles recomendaciones de seguridad se abordan en la fase de producción 3, por favor consulte la página Red Hat Enterprise Linux Life Cycle.
Clientes SSL y TLS
Puesto que los clientes no controlan los paquetes de cifras controlados por SSL y TLS, la única defensa es rechazar los primos pequeños en el handshake DHE. Al requerir primos más grandes se pueden evitar los ataques de degradación mencionados.
La corriente de desarrollo principal OpenSSL aborda los dos problemas restantes, al incrementar a 768 bits el tamaño mínimo de parámetros DH que un cliente puede aceptar. De esta manera, incluso si un atacante MiTM degrada la conexión, el cliente procederá a rechazarla si se utilizan menos de 768 bits (lo cual se considera como fácil de descifrar).
En el momento, todas las versiones de paquetes NSS distribuidas en Red Hat Enterprise Linux aceptan parámetros DHE de 512 bits. El siguiente error de la corriente principal y el compromiso relacionado dicen corregir este problema y aumentar el límite a 1032 bits:
- https://bugzilla.mozilla.org/show_bug.cgi?id=1138554
- https://hg.mozilla.org/projects/nss/rev/ae72d76f8d24
Red Hat Product Security está investigando este cambio, el cual podría adaptarse a una versión más antigua de paquetes NSS de Red hat Enterprise Linux.
Openswan/Libreswan
El ataque de degradación de Logjam contra TLS no aplica a IKE en Openswan y Libreswan. El demonio pluto, provisto por los paquetes openswan y libreswan proporciona los protocolos IKEv1 e IKEv2 para establecer los túneles IPsec en VPN y el ataque Logjam ataca TLS. Openswan y Libreswan también tienen grupos DH predeterminados por encima de MODP1024, y no soportan MODP768 o inferior.
**Productos JBoss
Para obtener información sobre cómo mitigar la vulnerabilidad Logjam en productos JBoss afectados, consulte Logjam: TLS vulnerabilities (CVE-2015-4000) for JBoss products
Comments