El cliente admite cifrados antiguos, pero el servidor no. ¿Es posible explotar?

4

Hay un cliente que admite cifrados SSL muy antiguos, incluido

  

TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA (0x0014)   TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA (0x0011)   TLS_RSA_EXPORT_WITH_DES40_CBC_SHA (0x0008)   TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 (0x0006)   TLS_RSA_EXPORT_WITH_RC4_40_MD5 (0x0003)

Probablemente tiene una biblioteca SSL muy antigua con errores de seguridad conocidos. Pero el servidor está actualizado y configurado correctamente. ¿Es posible explotarlo? En caso afirmativo, ¿cómo?

    
pregunta Smit Johnth 22.05.2016 - 22:48
fuente

2 respuestas

4

Teniendo en cuenta la antigüedad de estos cifrados, puedo imaginar que el cliente también admite SSLv2 que no funciona. También es probable que acepte certificados firmados con MD5 o incluso MD4 o MD2 que también están dañados, por lo que uno debería poder crear un certificado falso aceptado por el cliente. Es decir, si el cliente verifica los certificados porque incluso hace algunos años era muy común que los programas no verificasen el certificado SSL. Por lo tanto, creo que un hombre activo en el ataque medio debería ser posible.

    
respondido por el Steffen Ullrich 22.05.2016 - 23:26
fuente
0

No creo que los antiguos conjuntos de cifrados sean una gran preocupación en sí mismos, ya que su servidor no debería negociarlos nunca. Lo que es más preocupante es que indican que la pila SSL / TLS en el cliente en general es muy antigua.

En general, con ssl / tls, el cliente autentica el servidor pero el servidor no autentica al cliente a un nivel tls (los protocolos de nivel superior a menudo autentican al cliente utilizando sus propios mecanismos, pero esa autenticación no proporciona protección MITM) .

Por lo tanto, el tipo de problemas por los que debe preocuparse son los problemas que le permiten al atacante convencer al cliente de que son el servidor y, por lo tanto, permitir que el atacante MITM realice la conexión.

Un método para hacerlo es atacar el algoritmo hash de certificado. Hay dos variantes de esto.

Si el atacante tiene un ataque de preimagen factible contra el cerficate, entonces puede usarlo fácilmente para convertirse en un certificado de confianza para cualquier nombre de host que desee. Sin embargo, incluso para funciones hash muy antiguas, como los ataques de preimagen MD2, todavía son infesibles computacionalmente.

El otro método es explotar un ataque de colisión para crear un par de certificados, uno de los cuales es un certificado de entidad final normal para un dominio que el atacante posee legítimamente y está firmado por una CA de confianza. El otro certificado es un certificado de CA intermedio. Los dos certificados se construyen para tener el mismo hash que permite trasplantar la firma. Sin embargo, para lograrlo, el atacante debe encontrar una CA que aún use la función de hash vulnerable y que funcione de manera previsible para que el ataque de colisión pueda tener éxito. Un grupo de investigadores de la Universidad logró realizar este ataque con MD5, pero la CA que utilizaron cambió sus prácticas inmediatamente después.

Otra opción es ir tras las propias claves RSA. Si puede encontrar un certificado de CA en el que el cliente confiará (ya sea directamente como un certificado raíz o indirectamente como un intermediario firmado por uno de los certificados raíz de los clientes) con una clave RSA suficientemente corta, entonces puede factorizar el módulo y obtener la clave privada . Luego, puede usarlo para firmar certificados para el nombre de host que desee. El RSA de 512 bits es fácilmente factorizado, pero no estoy seguro de si alguna vez se usó en certificados de CA (se usó en certificados de entidades finales, pero tienden a tener un vencimiento más corto y solo son útiles para hacerse pasar por un sitio) El RSA de 1024 bits se usó ampliamente en certificados raíz y es probable que se pueda descifrar con recursos de nivel NSA, pero es casi seguro que todavía está fuera del alcance de los delincuentes comunes.

    
respondido por el Peter Green 23.05.2016 - 19:20
fuente

Lea otras preguntas en las etiquetas