Un fallo de use-after-free en el hipervisor KVM de Linux, denominado Januscape (CVE-2026-53359), permite a una máquina virtual invitada corromper el estado de sombra de páginas del núcleo anfitrión. El fallo reside en el código de MMU de sombra compartido por KVM tanto en Intel como en AMD. La prueba de concepto pública provoca un pánico en el anfitrión, y el investigador afirma que una explotación independiente y no publicada convierte el mismo fallo en ejecución completa de código en el anfitrión.
El investigador de seguridad Hyunwoo Kim (@v4bel) encontró y reportó el fallo. Kim describió Januscape como la primera explotación de huésped a anfitrión que se puede activar tanto en Intel como en AMD, según el conocimiento público. El fallo pasó desapercibido durante aproximadamente 16 años. Según Kim, la explotación se utilizó como envío de día cero en kvmCTF de Google, el programa de recompensa por vulnerabilidades controlado de KVM que ofrece hasta 250.000 dólares por fugas completas de huésped a anfitrión.
Cómo funciona
Para ejecutar una máquina virtual, KVM mantiene su propio conjunto privado de tablas de páginas que reflejan el diseño de memoria del invitado. Cuando necesita una de estas páginas de seguimiento, busca una existente para reutilizarla. El problema es que las emparejaba solo por la dirección de memoria e ignoraba el tipo de página de seguimiento. Dos tipos diferentes pueden compartir la misma dirección pero realizar trabajos completamente distintos, por lo que KVM a veces reutilizaba el tipo incorrecto.
Esa confusión desordena los registros internos de KVM sobre qué página pertenece dónde, y una vez que esos registros son incorrectos, algo debe fallar. La mayoría de las veces, el núcleo nota el desorden y se apaga para evitar daños. Ese bloqueo es lo que desencadena la demostración pública: un invitado puede derribar todo el anfitrión, afectando a todas las demás máquinas virtuales en esa máquina. El caso más raro y peor ocurre cuando la página de seguimiento liberada se asigna para otro uso antes de que el núcleo la limpie. La limpieza entonces escribe un valor en memoria que ya no posee. Un atacante solo controla dónde se escribe, no qué se escribe, pero incluso ese punto de apoyo limitado puede escalarse hasta ejecutar código en el anfitrión.
El fallo se comporta igual en chips Intel y AMD; solo el paso final y más difícil de convertirlo en control total requiere trabajo diferente en cada uno.
¿Quién está afectado?
El código vulnerable está presente desde el commit 2032a93d66fa en agosto de 2010 (era del kernel 2.6.36) y fue corregido por el commit 81ccda30b4e8, fusionado en la línea principal el 19 de junio de 2026. El ataque requiere dos cosas del lado del invitado: root dentro de la máquina virtual, una condición común en instancias de nube alquiladas, y virtualización anidada expuesta por el anfitrión. Incluso en anfitriones que ejecutan EPT o NPT por defecto, la virtualización anidada fuerza a KVM a volver a la MMU de sombra heredada, donde reside el fallo.
La explotación no necesita cooperación de QEMU ni de ningún VMM en espacio de usuario. Es puramente un fallo de KVM en el núcleo. La preocupación práctica es cualquier entorno x86 que aloje invitados no confiables con virtualización anidada habilitada. Un atacante que alquila una sola instancia de ese tipo puede provocar un pánico en el anfitrión, derribando todas las demás máquinas virtuales de otros inquilinos en la misma máquina física.
Kim dijo que la explotación completa no publicada ejecuta código como root en el anfitrión, lo que expondría a otras máquinas virtuales en la misma máquina a ese acceso root. En distribuciones como RHEL, donde /dev/kvm es escribible para todos (0666), Kim señaló que el mismo fallo también podría servir como escalada de privilegios local a root, aunque la vía de huésped a anfitrión es el uso de mayor impacto.
Unos meses ocupados para un investigador
Januscape es la tercera divulgación de explotación del núcleo Linux de Kim en aproximadamente dos meses. En mayo de 2026, divulgó Dirty Frag (CVE-2026-43284 / CVE-2026-43500), una cadena de escritura en caché de páginas que proporciona root determinista en la mayoría de las distribuciones principales, extendiendo la misma clase de fallo que Dirty Pipe y Copy Fail. En junio, publicó ITScape (CVE-2026-46316), la primera fuga de huésped a anfitrión demostrada públicamente en KVM/arm64, explotando una condición de carrera en el controlador de interrupciones virtual. Januscape ahora añade el lado x86; el mismo desencadenante funciona tanto en Intel como en AMD, con la prueba de concepto llevando una ruta de código separada para cada fabricante.
Google lanzó kvmCTF en 2024 específicamente porque KVM sustenta tanto Android como Google Cloud. Un fallo de use-after-free separado en sombreado de páginas x86 de KVM (CVE-2026-46113) que involucraba una falta de coincidencia de rmap relacionada pero distinta fue corregido en mayo de 2026. Esto hace dos use-after-free de MMU de sombra en la misma ruta de código heredada en dos meses.
Qué hacer
La corrección es una adición de una línea en kvm_mmu_get_child_sp(): la condición de reutilización ahora comprueba role.word junto con gfn, por lo que una página de sombra solo se reutiliza cuando tanto el número de marco como el rol coinciden. El mantenedor de KVM, Paolo Bonzini, escribió el parche.
Las versiones estables corregidas se enviaron el 4 de julio de 2026: 7.1.3, 6.18.38, 6.12.95, 6.6.144, 6.1.177, 5.15.211 y 5.10.260. NVD aún no ha asignado una puntuación CVSS; no espere por ella. Si opera un anfitrión KVM x86 que acepta invitados multiinquilino con virtualización anidada, confirme que su núcleo incluye el commit 81ccda30b4e8. Los backports de distribución pueden llevar la corrección bajo un número de versión diferente, así que verifique el registro de cambios del paquete en lugar de confiar solo en uname -r.
Si no puede parchear inmediatamente, deshabilitar la virtualización anidada (kvm_intel.nested=0 o kvm_amd.nested=0) elimina la vía de ataque para invitados no confiables. Los anfitriones ARM64 no se ven afectados por Januscape; ITScape (CVE-2026-46316) es un problema separado de KVM/arm64. La prueba de concepto pública demuestra un pánico confiable del anfitrión desde un invitado con un módulo de núcleo cargable y segundos o minutos de carrera. Trate los anfitriones KVM x86 expuestos con virtualización anidada como objetivos de parcheo de alta prioridad.




















Deja una respuesta