Llegamos a ustedes gracias a:



Alertas de Seguridad

Microsoft revela fallas de corrupción de memoria

En la biblioteca ncurses

[18/09/2023] Microsoft ha descubierto un conjunto de vulnerabilidades de corrupción de memoria en la biblioteca ncurses que proporciona una interfaz de programación para escribir interfaces de usuario basadas en texto (TUI, por sus siglas en inglés) o aplicaciones de consola con apariencia gráfica.

Identificadas colectivamente como CVE-2023-29491 con una puntuación CVSS de 7,8, las vulnerabilidades pueden permitir a los atacantes obtener acceso no autorizado a sistemas y datos modificando la memoria de un programa.

"Los responsables del mantenimiento de la biblioteca ncurses, Thomas E. Dickey, han implementado con éxito correcciones para estas vulnerabilidades en el commit 20230408", afirma Microsoft en un blog. "También hemos trabajado con Apple para solucionar los problemas específicos de macOS relacionados con estas vulnerabilidades. (También) agradecemos a Gergely (Kalman) sus contribuciones en el avance de esta investigación y el compromiso de la comunidad".

Las vulnerabilidades de corrupción de memoria pueden explotarse en una serie de ataques, como la denegación de servicio distribuida (DDoS), la elevación de privilegios, la ejecución de código arbitrario y la filtración de información sensible.

Las fallas de ncurses permiten el envenenamiento de variables de entorno

La biblioteca ncurses utiliza bases de datos de terminales para ser independiente del terminal (no es necesario conocer de antemano las capacidades del terminal), señaló Microsoft. Esto significa que la biblioteca tiene acceso a un conjunto de información clave sobre el terminal que se está utilizando.

"Las bases de datos de terminales contienen un conjunto de capacidades que determinan en última instancia los caracteres de control que se envían al terminal (para que éste realice interacciones básicas) y describen varias propiedades del terminal", explicó Microsoft.

Durante su investigación, Microsoft descubrió que durante la inicialización la biblioteca ncurses busca varias variables de entorno, entre ellas TERMINFO, una variable de entorno para las bases de datos de terminales. TERMINFO puede ser envenenada (manipulada) para apuntar a un directorio arbitrario para explotar potencialmente las vulnerabilidades de ncurses. HOME, otra variable de entorno utilizada por ncurses puede ser envenenada con técnicas similares.

"Todo sistema operativo moderno contiene un conjunto de variables de entorno que pueden afectar al comportamiento de los programas", afirmó Microsoft. "Una técnica bien conocida por los atacantes es manipular esas variables de entorno para hacer que los programas realicen acciones que beneficiarían sus propósitos maliciosos, por lo tanto 'envenenarlos'".

Vulnerabilidades encontradas en la versión 6.4 y anteriores

Microsoft dijo que encontró las vulnerabilidades en la biblioteca ncurses a través de auditoría de código y fuzzing. También atribuyó las contribuciones de Gergely Kalman, que ayudó a Microsoft en privado en Twitter a avanzar en la investigación con varios casos de uso.

Microsoft señaló que, si bien la auditoría se realizó en la última versión de ncurses, la 6.4, las versiones anteriores de la biblioteca también pueden tener algunas o todas estas vulnerabilidades.

"Es interesante observar que mientras que la versión de ncurses que comprobamos era la 6.4 (la última en el momento de la investigación), la versión de ncurses en macOS era la 5.7, pero tenía varios parches relacionados con la seguridad mantenidos por Apple", sostuvo Microsoft. "No obstante, todos nuestros hallazgos son válidos para todas las versiones de ncurses, por lo que afectan tanto a Linux como a macOS".

Microsoft ha recomendado el uso de Microsoft Defender para detectar y proteger contra posibles abusos de las bases de datos TERMINFO tanto en Linux como en macOS.

Casos de éxito

Más »