ClickCease Vulnerabilidades importantes de OpenSSL corregidas por TuxCare |tuxcare.com

Únase a nuestro popular boletín

Únase a más de 4.500 profesionales de Linux y el código abierto.

2 veces al mes. Sin spam.

Vulnerabilidades importantes de OpenSSL corregidas por TuxCare CVE-2021-3711/3712

24 de agosto de 2021 - Equipo de RRPP de TuxCare

Pocas bibliotecas tienen un uso tan extendido como OpenSSL. Su presencia es ubicua en plataformas de hardware y sistemas operativos, aplicaciones de usuario e IoT. Es muy probable que el navegador web que está utilizando ahora mismo para leer esta página dependa de alguna manera de OpenSSL para negociar la "s" de "https" con el servidor web.

Junto con curl, zlib y glibc, es uno de los nombres que hacen temblar a los administradores de sistemas cada vez que aparecen en la misma frase que "nuevas vulnerabilidades encontradas". Por desgracia, hoy es otro de esos días. Han surgido dos nuevas vulnerabilidades para OpenSSL; una se considera de gravedad "Alta" y la otra de gravedad "Baja". Afectan a todas las versiones de OpenSSL 1.1.1, así como a las versiones beta/alfa actuales de 3.0.0, pero la versión final de esa serie incluirá las correcciones.

El servicio Live Patching de TuxCare ya ha preparado los parches que ya se están entregando -el mismo día en que se anunciaron las vulnerabilidades- para las distribuciones basadas en EL8, así como Debian 10, Ubuntu 18.04 y 20.04 -las que incorporan las versiones afectadas de OpenSSL-.

 

Comenzando con CVE-2021-3712, se descubrió que varias ubicaciones diferentes a lo largo del código OpenSSL asumen incorrectamente que las cadenas ASN.1 siempre terminan en NUL. Terminación NUL es la jerga para una secuencia de caracteres que termina con el byte NUL (0). Los programadores suelen utilizarla cuando buscan el final de una cadena, es decir, la recorren hasta encontrar dicho byte NUL. Sucede que es posible construir estas cadenas fuera de las funciones de OpenSSL y luego pasarlas a OpenSSL para su procesamiento, lo que puede, para un actor malicioso debidamente motivado, conducir a desbordamientos de búfer y ser una vía para la corrupción de memoria. De exploits anteriores que utilizaban técnicas similares, sabemos que esto puede llevar eventualmente a una escalada de privilegios.

Es importante señalar que, en el mensaje de confirmación de la corrección en el repositorio de código de OpenSSL, el autor menciona específicamente que la corrección es sólo para los casos que pudo encontrar. Otros usos de cadenas ASN.1 que se supone que terminan en NUL pueden permanecer en el código base. No es impensable que, en un futuro próximo, sean necesarias más correcciones de código para solucionar problemas exactamente como éste.

Desde un punto de vista más práctico, las funciones de OpenSSL que se sabe que son vulnerables a este problema incluyen, entre otras, las relacionadas con la validación de nombres en certificados, en situaciones en las que el certificado no se construye directamente a través de OpenSSL, sino que se pasa a OpenSSL para su validación.

Pasando a CVE-2021-3711, la vulnerabilidad calificada como de gravedad "Alta" está relacionada con el descifrado SM2. SM2 es un algoritmo basado en curva elíptica. OpenSSL incluye varias funciones diferentes que soportan este algoritmo, incluyendo EVP_PKEY_DECRYPT(). Esta función normalmente se llama dos veces, la primera para descubrir el tamaño del búfer necesario para contener los datos y la segunda para realizar realmente el descifrado, esta vez también pasándole el búfer del tamaño adecuado.

Resulta que, debido a un error en la implementación de esta función, es posible recibir un tamaño de búfer en la primera llamada que en realidad es menor que el tamaño de búfer requerido para la segunda llamada, en cuyo caso la aplicación que llama estará pasando un búfer que es demasiado pequeño para contener todos los datos, lo que lleva a un desbordamiento de búfer. Esto puede causar la corrupción de memoria, que, como se ha mencionado anteriormente, se ha demostrado que conduce a resultados más peligrosos para los atacantes debidamente motivados.

El equipo de TuxCare continúa rastreando estas vulnerabilidades y evaluando cómo pueden afectar a los sistemas de nuestros suscriptores de servicios, proporcionando correcciones en su caso.

Si desea saber más sobre los servicios de TuxCare, puede encontrar más información aquí.

¿Desea automatizar la aplicación de parches de vulnerabilidad sin reiniciar el núcleo, dejar el sistema fuera de servicio o programar ventanas de mantenimiento?

Más información sobre Live Patching con TuxCare

Conviértete en escritor invitado de TuxCare

Empezar

Correo

Únete a

4,500

Profesionales de Linux y código abierto

Suscríbase a
nuestro boletín