Se
ha publicado en la página de OpenSSL un aviso
donde se anunciaba el descubrimiento y correspondiente publicación del parche a
un desbordamiento de memoria intermedia basada en el heap en OpenSSL.
OpenSSL es un conjunto de
herramientas de software libre desarrolladas para implementar los protocolos
Secure Sockets Layer (SSL v2/v3) y Transport Layer Security (TLS v1), además de
una gran cantidad de herramientas criptográficas.
La vulnerabilidad, a la que le ha
sido asignado el CVE-2012-2110,
aparece a la hora de leer datos en formato DER, presente, entre otros, en
certificados X.509 y claves públicas RSA. Un atacante remoto podría enviar a la
víctima, por ejemplo, una clave o certificados especialmente manipulados, para
así causar una denegación de servicio y, potencialmente, ejecutar código arbitrario.
Concretamente, el fallo se debe a
la realización de un casting de una variable C 'signed float' a otra 'signed
int' en la función 'asn1_d2i_read_bio'.
La conversión de un valor real a otro entero implica truncar el valor de la
primera, dando lugar a un desbordamiento
de memoria. Para poder explotar de manera correcta la vulnerabilidad, la
víctima debería encontrarse ejecutando un sistema operativo de 64 bits.
Su descubridor, el investigador del
grupo de seguridad de Google, Tavis Ormandy reportó junto a sus compañeros
tanto la vulnerabilidad descubierta como el parche a aplicar. La comunidad encargada del desarrollo de OpenSSL
ha subsanado el error, publicando las versiones 0.9.8v, 1.0.1a, y 1.0.0i de
OpenSSL.
Más información:
OpenSSL
Security Advisory [19 Apr 2012]
[Full-disclosure]
incorrect integer conversions in OpenSSL can result in memory corruption.
Javier Rascón Mesa
No hay comentarios:
Publicar un comentario