Nueva falla en el kernel de Linux permite a invitados ARM64 KVM acceso de lectura y escritura a la memoria del host

Una nueva vulnerabilidad en el código de virtualización KVM del kernel de Linux para procesadores ARM64 puede exponer un fragmento de memoria del host previamente liberado a una máquina virtual invitada en equipos con virtualización anidada habilitada.

El fallo, registrado como CVE-2026-89775, permite a un invitado leer y escribir en la memoria del kernel anfitrión. El investigador que lo descubrió afirma que puede utilizarse para escapar del invitado y ejecutar código en la máquina host.

El código afectado es parte del kernel principal de Linux para ARM64 y está corregido en Linux 6.18.51, 7.2.5 y 7.3-rc1.

La virtualización anidada permite que un invitado ejecute su propio hipervisor, lo que le habilita para alojar máquinas virtuales. En ARM64 está desactivada por defecto. Se trata de un modo experimental de arranque que requiere hardware Armv8.4 con una característica llamada FEAT_NV2, por lo que un host ARM64 KVM común que nunca la active queda fuera de la ruta de ataque reportada.

La falla se encuentra en la parte de KVM que gestiona la virtualización anidada en ARM64. Cuando un invitado organiza su memoria de cierta manera, un cálculo de tamaño da como resultado cero y se omite un paso que debería limpiar entradas obsoletas de la caché de direcciones del procesador, una invalidación de TLB.

Una página de memoria del host que ha sido liberada permanece mapeada y escribible, y el invitado puede leerla y escribirla en bloques de 64 bits, sin ninguna trampa de hardware que devuelva el control al host.

Hyunwoo Kim, el investigador de seguridad que reportó el fallo y lo divulgó el 16 de septiembre, señala que un invitado puede usarlo para escapar al host, saliendo de su propia máquina virtual para ejecutar código en la máquina subyacente. No se ha publicado código de explotación y no hay indicios de que la falla haya sido utilizada en un ataque.

El registro del propio kernel indica que el código afectado está presente desde Linux 6.16. Sin embargo, el autor etiquetó la corrección contra un cambio posterior, y el mantenedor que la revisó y probó afirmó que "la invalidación omitida solo comienza en v6.17". Según esa versión, un host en 6.16 contiene el código pero no el comportamiento que un atacante necesita.

Existe una segunda forma de abusar de la falla. En sistemas donde cualquier usuario puede abrir /dev/kvm, el dispositivo que un programa utiliza para crear una máquina virtual, un usuario local podría construir un invitado y usar el mismo error para obtener root, según Kim.

Señala a Red Hat Enterprise Linux, donde ese dispositivo está abierto a todos los usuarios por defecto. Red Hat incluye su versión 10 del kernel como afectada y las versiones 6 a 9 como no afectadas. Esta vía sigue requiriendo que el host tenga habilitada la virtualización anidada.

Qué kernels están corregidos

En el kernel principal, la falla está corregida en Linux 6.18.51, 7.2.5 y 7.3-rc1. Las distribuciones están enviando la corrección según sus propios calendarios, y el estado difiere según la versión.

Para los hosts que aún no pueden ser parcheados, Red Hat afirma que ninguna mitigación cumple sus criterios como solución alternativa. Lo único seguro es el alcance: el ataque solo se dirige a hosts con virtualización anidada habilitada, que no es la configuración predeterminada en ARM64.

Los proveedores puntúan la falla entre 7,8 y 9,3 sobre 10. Coinciden en que el impacto es alto y el ataque es local, lo que significa que no puede lanzarse a través de una red. La dispersión refleja la dificultad que cada proveedor atribuye a la explotación del fallo, y Ubuntu, que muestra la cifra de 9,3, establece su propia prioridad como media.

Al 22 de septiembre, la falla no figuraba en el catálogo de vulnerabilidades explotadas de CISA de EE. UU., y su puntuación de explotación prevista era inferior al 1 %.

La divulgación plantea la pregunta de si los inquilinos de la nube podrían usar la falla para acceder a las máquinas de un proveedor. En los mayores proveedores, la configuración necesaria no se ofrece: Amazon Web Services solo lista instancias basadas en Intel para virtualización anidada, y Google Cloud excluye sus máquinas virtuales ARM de ella.

Eso no es un certificado de buena salud para esas plataformas, pero la ruta específica que sigue esta falla no está expuesta en sus ofertas ARM estándar.

CVE-2026-89775 es la cuarta escapada de invitado a host en KVM que Kim divulga este año. Dos fueron en la versión x86 de KVM: Januscape en julio y Zapscape en agosto. La más similar es ITScape, una escapada ARM64 KVM que publicó en junio, y que él calificó como la primera de este tipo mostrada públicamente en ARM64.

Cybersecurity
Cybersecurity
Cybersecurity
Cybersecurity

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *