Descubre Noticias de Ciberseguridad en nuestro TecnetBlog

Falla glibc en Linux da acceso root a atacantes

Escrito por Levi Yoris | Feb 1, 2024 4:00:00 PM

Si usas Linux, es posible que hayas oído hablar de un fallo crítico en la biblioteca GNU C (glibc) que puede permitir a los atacantes locales obtener acceso root en las principales distribuciones. En este artículo, te explicaremos qué es glibc, qué implica este fallo, cómo puedes protegerte y qué medidas han tomado los desarrolladores para solucionarlo.

 

¿Qué es glibc?

 

Glibc es la biblioteca estándar de C para Linux y otros sistemas operativos basados en Unix. Es una colección de funciones, macros, tipos de datos y constantes que proporcionan servicios básicos para los programas escritos en el lenguaje C, como entrada y salida, manejo de cadenas, asignación de memoria, operaciones matemáticas y llamadas al sistema.

Glibc es una parte fundamental de Linux, ya que casi todos los programas y aplicaciones dependen de ella para funcionar correctamente. Además, glibc implementa algunas de las interfaces de programación de aplicaciones (API) más importantes para la interoperabilidad entre sistemas, como POSIX, Single UNIX Specification y GNU extensions.

 

Te podrá interesar:  Monitoreo de Servidores Linux con OpManager

 

Falla en glibc

 

Los atacantes que no tienen privilegios pueden obtener acceso de root en varias distribuciones principales de Linux en configuraciones predeterminadas al explotar una reciente vulnerabilidad de escalada de privilegios locales (LPE) que fue revelada en la biblioteca GNU C (glibc) y se encuentra registrada como CVE-2023-6246.

Esta vulnerabilidad de seguridad fue descubierta en la función __vsyslog_internal() de glibc, que es llamada por las ampliamente utilizadas funciones syslog y vsyslog para escribir mensajes en el registro de mensajes del sistema.

El error se debe a una debilidad de desbordamiento de búfer basado en montón que fue introducida accidentalmente en glibc 2.37 en agosto de 2022 y posteriormente se transfirió a glibc 2.36 mientras se abordaba una vulnerabilidad menos grave conocida como CVE-2022-39046.

Investigadores de seguridad han señalado que "el problema del desbordamiento de búfer representa una amenaza significativa, ya que podría permitir una escalada de privilegios locales, lo que permitiría a un usuario sin privilegios obtener acceso completo a la raíz mediante entradas diseñadas para aplicaciones que utilizan estas funciones de registro. Aunque la vulnerabilidad requiere condiciones específicas para ser explotada, como un argumento de identificación argv[0] o openlog() inusualmente largo, su impacto es significativo debido al amplio uso de la biblioteca afectada".

 

Conoce más sobre:  ¿Qué son los Ataques de Relleno de Búfer?

 

Impacta a sistemas Debian, Ubuntu y Fedora

 

En las pruebas de los investigadores, se confirmó que las versiones Debian 12 y 13, Ubuntu 23.04 y 23.10, así como Fedora 37 a 39, eran susceptibles a la explotación de CVE-2023-6246. Esto permitía que cualquier usuario sin privilegios pudiera elevar sus privilegios para obtener acceso completo de root en las instalaciones con configuraciones predeterminadas.

Aunque sus pruebas se centraron en un número limitado de distribuciones, los investigadores señalaron que es probable que otras distribuciones también sean vulnerables a estas explotaciones.

Mientras examinaban la biblioteca glibc en busca de posibles problemas de seguridad adicionales, los investigadores descubrieron otras tres vulnerabilidades. Dos de ellas, ubicadas en la función __vsyslog_internal(), son más difíciles de explotar y se identifican como CVE-2023-6779 y CVE-2023-6780. La tercera vulnerabilidad, relacionada con una corrupción de memoria, aún no tiene un identificador CVE asignado y se encuentra en la función qsort() de glibc.

Saeed Abbasi, director de producto de la Unidad de Investigación de Amenazas de Qualys, enfatizó la importancia de implementar medidas de seguridad rigurosas en el desarrollo de software, especialmente en bibliotecas centrales ampliamente utilizadas en múltiples sistemas y aplicaciones. Según Abbasi, estos hallazgos subrayan la necesidad crítica de adoptar un enfoque sólido en la seguridad del software.

 

Te podría interesar:  Análisis de Vulnerabilidades Internas: ¿Para qué sirven?

 

Otras vulnerabilidades de escalada de privilegios en sistemas Linux

 

Otras vulnerabilidades de escalada de privilegios en sistemas Linux han sido identificadas en años recientes. Estas vulnerabilidades permiten que atacantes tomen el control completo de sistemas sin parches, incluso en configuraciones predeterminadas.

Estas debilidades incluyen una en el cargador dinámico ld.so de glibc, conocida como Looney Tunables, otra en el componente pkexec de Polkit, denominada PwnKit, una en la capa del sistema de archivos del Kernel llamada Sequoia, y una en el programa Sudo Unix, también conocida como Baron Samedit.

Luego de la divulgación de la vulnerabilidad Looney Tunables (CVE-2023-4911), se propagaron en línea exploits de prueba de concepto (PoC). Un mes después, actores de amenazas comenzaron a aprovechar esta vulnerabilidad para robar credenciales de proveedores de servicios en la nube (CSP) en ataques de malware Kinsing.

La pandilla Kinsing es conocida por implantar malware de minería de criptomonedas en sistemas comprometidos basados en la nube, incluyendo servidores Kubernetes, Docker API, Redis y Jenkins. En respuesta a esta amenaza, la Agencia de Seguridad de Infraestructura y Ciberseguridad (CISA) emitió una orden a las agencias federales de EE. UU. para proteger sus sistemas Linux contra los ataques CVE-2023-4911, clasificándolos como riesgos significativos para la empresa federal.

 

Te podrá interesar: Nuevo Malware SprySOCKS Linux vinculado a Ciberespionaje

 

Conclusión

 

Esta vulnerabilidad en glibc es un recordatorio de la importancia de mantener los sistemas actualizados y de seguir las mejores prácticas de seguridad. Aunque este problema específico está siendo abordado, es probable que surjan nuevas vulnerabilidades en el futuro. Por lo tanto, tanto los individuos como las organizaciones deben permanecer vigilantes y proactivos en la gestión de la seguridad cibernética.

La colaboración continua entre desarrolladores, administradores de sistemas y usuarios es fundamental para garantizar la seguridad de los sistemas basados en Linux. A medida que avanzamos, la adopción de estrategias de seguridad robustas y la educación continua serán clave para proteger nuestros sistemas y datos contra amenazas emergentes.