
Han surgido detalles sobre una nueva vulnerabilidad de elevación de privilegios locales (LPE) sin parches que afecta al kernel de Linux.
Se dice que la vulnerabilidad, conocida como Dirty Frag, es la sucesora de Copy Fail (CVE-2026-31431, puntuación CVSS: 7,8), una falla LPE revelada recientemente que afecta al kernel de Linux y que desde entonces ha sido explotada en estado salvaje. Esta vulnerabilidad se informó a los mantenedores del kernel de Linux el 30 de abril de 2026.
«Las banderas sucias son una clase de vulnerabilidades que logran privilegios de root en la mayoría de las distribuciones de Linux al encadenar la vulnerabilidad de escritura en caché de página xfrm-ESP y la vulnerabilidad de escritura en caché de página RxRPC», dijo el investigador de seguridad Hyunwoo Kim (@v4bel) en el artículo.
«Dirty Frag es una extensión de la clase de error a la que pertenecen Dirty Pipe y Copy Fail. Debido a que es un error de lógica determinista que no depende de ventanas de tiempo, no hay necesidad de condiciones de carrera, el kernel no entra en pánico si el exploit falla y la tasa de éxito es muy alta».
La explotación exitosa de esta falla podría permitir a los usuarios locales sin privilegios obtener acceso raíz elevado en la mayoría de las distribuciones de Linux, incluidas Ubuntu 24.04.4, RHEL 10.1, openSUSE Tumbleweed, CentOS Stream 10, AlmaLinux 10 y Fedora 44.
Según los investigadores, la vulnerabilidad de escritura en caché de página xfrm-ESP se introdujo en una confirmación del código fuente realizada en enero de 2017, y la vulnerabilidad de escritura en caché de página RxRPC se introdujo en junio de 2023. Curiosamente, la misma confirmación del 17 de enero de 2017 fue la causa principal detrás de otro desbordamiento del búfer (CVE-2022-27666, puntuación CVSS: 7,8) que tuvo impactos mixtos. Distribución de Linux.
La escritura de caché de páginas xfrm-ESP tiene su raíz en el subsistema IPSec (xfrm) y proporciona a un atacante una primitiva de almacenamiento de 4 bytes, como una copia fallida, para sobrescribir una pequeña cantidad en el caché de páginas del kernel.
Sin embargo, este exploit requiere que un usuario sin privilegios cree un espacio de nombres, un paso que Ubuntu bloquea a través de AppArmor. En tal entorno, no se puede activar xfrm-ESP Page-Cache Write. Aquí es donde entra en juego el segundo exploit, RxRPC Page-Cache Write.
«RxRPC Page-Cache Write no requiere permiso para crear espacios de nombres, pero el módulo rxrpc.ko en sí no está incluido en la mayoría de las distribuciones», explicó Kim. «Por ejemplo, la compilación predeterminada de RHEL 10.1 no se incluye con rxrpc.ko. Sin embargo, en Ubuntu, el módulo rxrpc.ko se carga de forma predeterminada».
«Al encadenar las dos variantes, los puntos ciegos se cubren entre sí. En entornos donde se permite la creación de espacios de nombres de usuario, el exploit ESP se ejecuta primero. Por el contrario, en Ubuntu, donde la creación de espacios de nombres de usuarios está bloqueada pero se construye rxrpc.ko, el exploit RxRPC funciona».
CloudLinx dijo en su propio aviso que la falla existe en la «ruta rápida ESP-in-UDP MSG_SPLICE_PAGES sin COW» y se puede acceder a ella a través de la interfaz de enlace de red de usuario XFRM.
«Este error existe en la ruta rápida de descifrado local para esp4, esp6 y rxrpc. Fragmentos paginados donde el búfer de socket no es propiedad privada del kernel (por ejemplo, páginas de canalización adjuntas a través de splice(2)/sendfile(2)/MSG_SPLICE_PAGES), la ruta de recepción se descifra directamente en esas páginas respaldadas externamente, exponiendo o corrompiendo el texto sin formato al que un proceso sin privilegios todavía tiene una referencia». AlmaLinux dijo.
A la urgencia se suma el lanzamiento de una prueba de concepto (PoC) funcional que puede explotarse para obtener root con un solo comando. Hasta que haya un parche disponible, recomendamos incluir en la lista de bloqueo los módulos esp4, esp6 y rxrpc para evitar que se carguen.
sudo sh -c «printf ‘install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n’ > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 rxrpc 2>/dev/null; true»
Vale la pena mencionar aquí que, aunque Dirty Frag tiene cierta superposición con Copy Fail, puede explotarse independientemente de si el módulo algif_aead del kernel de Linux está habilitado.
«Tenga en cuenta que la bandera sucia se puede activar independientemente de si el módulo algif_aead está disponible», dijeron los investigadores. «En otras palabras, Linux sigue siendo vulnerable a banderas sucias incluso en sistemas con mitigaciones de fallos de copia conocidas públicamente (lista negra algif_aead) implementadas».
Source link