¿Qué es la vulnerabilidad Zapscape en Linux KVM?
Se ha hecho pública hoy la existencia de Zapscape, una vulnerabilidad de escape de invitado a host que ha afectado al código x86 del KVM de Linux durante los últimos seis años. Este cambio en el kernel de 2020 para KVM x86 también puede utilizarse como un exploit de escalada de privilegios local (LPE), especialmente en distribuciones como RHEL, donde /dev/kvm posee permisos de escritura global.
Zapscape es una vulnerabilidad de escape de KVM para invitados x86/x86_64, permitiendo que un atacante escape al host y ejecute comandos con privilegios de root. La falla se centra en un error de tipo use-after-free presente en el código de emulación MMU (Memory Management Unit) del Kernel-based Virtual Machine en las rutas de código x86.
La imagen superior ilustra el alcance técnico de Zapscape, la cual ha sido divulgada junto a un ejemplo de Prueba de Concepto (PoC) público, aunque este no se presenta en una forma armada o lista para ataque directo.
¿Qué versiones del kernel están afectadas?
Las versiones del kernel de Linux afectadas abarcan desde mediados de 2020 hasta el 21 de julio de 2026, fecha en la que se corrigió el problema mediante una validación del estado del root tras habilitar las páginas de memoria MMU.
Escape de KVM: Mediante acciones desde el invitado, un atacante puede comprometer el host que ejecuta su propia VM. Por ejemplo, un atacante que haya alquilado una única instancia en una nube pública podría provocar un kernel panic en el host para desconectar todas las demás VMs en la misma máquina física (DoS), o ejecutar código con privilegios de root para tomar el control total del host y de todas sus máquinas virtuales (RCE).
LPE: En distribuciones como RHEL, el archivo /dev/kvm tiene permisos de escritura universal (0666). Por lo tanto, un usuario sin privilegios puede utilizar esta vulnerabilidad como un LPE para obtener acceso root. Al utilizarse como LPE, los ioctls del VMM del lado del host están disponibles, facilitando que el exploit sea más estable.
Para obtener información técnica detallada sobre la mitigación y el análisis del código, puede consultar el repositorio de Zapscape en GitHub.
Vía Phoronix.

