Los atacantes sin privilegios pueden obtener acceso root en varias de las principales distribuciones de Linux en configuraciones predeterminadas aprovechando una vulnerabilidad de escalada de privilegios local (LPE) recientemente revelada en la biblioteca GNU C (glibc).
Identificado como CVE-2023-6246, el fallo de seguridad se descubrió en la función __vsyslog_internal() de glibc, a la que llaman las funciones syslog y vsyslog, muy utilizadas para escribir mensajes en el registrador de mensajes del sistema.
El fallo se debe a un desbordamiento de búfer basado en heap, introducido accidentalmente en glibc 2.37 en agosto de 2022 y luego retrotraído a glibc 2.36 cuando se corrigió una vulnerabilidad menos grave listada como CVE-2022-39046.
«El problema de desbordamiento de búfer representa una amenaza significativa porque podría permitir la escalada local de privilegios, lo que permitiría a un usuario sin privilegios obtener acceso root completo a través de entradas fabricadas en aplicaciones que utilizan estas funciones de registro», dijeron los investigadores de seguridad de Qualys.
«Aunque la vulnerabilidad requiere condiciones específicas para ser explotada (como un argumento argv[0] o openlog() anormalmente largo), su impacto es significativo debido al uso generalizado de la biblioteca afectada.»
Impacto en los sistemas Debian, Ubuntu y Fedora
En sus pruebas, Qualys confirmó que Debian 12 y 13, Ubuntu 23.04 y 23.10, y Fedora 37 a 39 eran vulnerables a los exploits CVE-2023-6246, que permiten a cualquier usuario sin privilegios elevar sus privilegios a acceso completo de root en instalaciones por defecto.
Aunque sus pruebas se limitaron a un puñado de distribuciones, los investigadores añadieron que «es probable que otras distribuciones sean explotables».
Al analizar glibc en busca de otros posibles problemas de seguridad, los investigadores también descubrieron otras tres vulnerabilidades, dos de ellas -más difíciles de explotar- en la función __vsyslog_internal() (CVE-2023-6779 y CVE-2023-6780) y una tercera (un problema de corrupción de memoria que aún espera un CVEID) en la función qsort () de glibc.
«El reciente descubrimiento de estas vulnerabilidades no es sólo una cuestión técnica, sino también un problema de seguridad a gran escala», afirmó Saeed Abbasi, Director de Producto de la Unidad de Investigación de Amenazas de Qualys.
«Estos fallos ponen de manifiesto la necesidad crítica de adoptar medidas de seguridad estrictas en el desarrollo de software, especialmente en el caso de las bibliotecas básicas ampliamente utilizadas en muchos sistemas y aplicaciones.»
Otros fallos de escalada de root en Linux descubiertos por Qualys
En los últimos años, los investigadores de Qualys han descubierto varios otros fallos de seguridad en Linux que pueden permitir a los atacantes tomar el control total de sistemas Linux sin parches, incluso en configuraciones predeterminadas.
Las vulnerabilidades que han descubierto incluyen un fallo en el cargador dinámico glibc ld.so (Looney Tunables), uno en el componente pkexec de Polkit (apodado PwnKit), otro en la capa del sistema de archivos del kernel (apodado Sequoia) y en el programa Unix Sudo (también conocido como Baron Samedit).
Días después de que se divulgara el fallo Looney Tunables (CVE-2023-4911), se publicaron en línea exploits de prueba de concepto (PoC), y los actores de amenazas comenzaron a explotarlo un mes más tarde para robar credenciales de proveedores de servicios en la nube (CSP) en ataques de malware Kinsing.
La banda Kinsing es conocida por desplegar malware de minería de criptomonedas en sistemas comprometidos basados en la nube, incluidos servidores Kubernetes, API Docker, Redis y Jenkins.
Posteriormente, la CISA ordenó a las agencias federales estadounidenses que protegieran sus sistemas Linux contra los ataques CVE-2023-4911, tras añadirlo a su catálogo de fallos activamente explotados y calificarlo de «riesgo significativo para la empresa federal».