Una vulnerabilidad del kernel de Linux identificada como CVE-2026-89775 puede permitir que una máquina virtual alojada sobre KVM en ARM64 acceda a memoria del sistema anfitrión cuando está habilitada la virtualización anidada. El fallo afecta a una parte del código encargado de invalidar traducciones de memoria y ha sido corregido en las ramas recientes del kernel.
Las claves de CVE-2026-89775 en 20 segundos
- Afecta a KVM sobre ARM64 con virtualización anidada habilitada.
- El fallo puede dejar una página de memoria del host accesible desde el invitado.
- Linux ha publicado correcciones para las ramas 6.18, 7.2 y 7.3.
- La vulnerabilidad tiene una puntuación CVSS 3.1 de 9,3.
- La virtualización anidada está desactivada por defecto en ARM64.
El problema fue comunicado por el investigador de seguridad Hyunwoo Kim y publicado el 16 de septiembre de 2026, una vez expirado el periodo de embargo coordinado con los mantenedores. El aviso describe la vulnerabilidad como un escape de invitado a host en KVM/arm64 cuando se utiliza virtualización anidada.
La relevancia para infraestructuras compartidas está relacionada con el límite de aislamiento que proporciona la virtualización. Una máquina virtual debería poder ejecutar código sin acceder directamente a la memoria del servidor físico que la aloja. En el escenario descrito por el investigador, ese límite puede romperse.
Un cálculo incorrecto termina anulando una protección de memoria
CVE-2026-89775 se encuentra en el código de KVM para ARM64 que gestiona la invalidación de la memoria caché de traducciones durante la virtualización anidada. La causa está relacionada con el tratamiento de un nivel negativo de recorrido de las tablas de páginas de nivel 1 cuando la unidad de gestión de memoria, o MMU, está desactivada.
El código utiliza información sobre el nivel de la tabla y el tamaño de la granularidad para calcular cuánto espacio debe invalidarse en una estructura denominada pseudo-TLB. El problema aparece porque un valor negativo puede terminar interpretándose de forma incorrecta durante ese cálculo.
Según el registro oficial del kernel, la conversión puede producir un tamaño de invalidación de cero. El valor cero tenía un significado especial en otra parte del código, pero la ruta de VNCR lo interpreta como un tamaño válido. El resultado es que la operación de invalidación acaba teniendo un rango vacío y no se ejecuta como debería.
Esto importa porque las traducciones antiguas de memoria deben eliminarse cuando cambia la asignación de una página. Si esa limpieza no se produce, una referencia que debería haber dejado de ser válida puede permanecer disponible.
En el escenario descrito por Kim, una página de memoria del host que ya ha sido liberada puede permanecer asignada con permisos de escritura en una dirección determinada del kernel. El invitado atacante puede obtener acceso de lectura y escritura de 64 bits sobre esa página sin provocar una salida de la máquina virtual. El investigador señala que esa condición puede utilizarse para escapar del invitado y acceder al host.
El riesgo se concentra en la virtualización anidada
La condición más importante para interpretar el alcance del fallo es que la virtualización anidada debe estar habilitada. Esta función permite que una máquina virtual ejecute su propio hipervisor y aloje a su vez otras máquinas virtuales.
En ARM64, esta modalidad está desactivada por defecto y requiere hardware compatible con determinadas funciones de Arm. Por tanto, un servidor KVM/ARM64 que no tenga habilitada la virtualización anidada no entra en el escenario de ataque descrito.
El escenario adquiere más importancia en infraestructuras donde usuarios no confiables pueden crear máquinas virtuales y el proveedor permite utilizar virtualización anidada. En un entorno de nube multiinquilino, un escape desde el invitado puede afectar al aislamiento que separa las cargas del cliente del sistema anfitrión.
El aviso del investigador también describe un posible escenario de escalada de privilegios local. En determinadas distribuciones y configuraciones, como las mencionadas para Red Hat Enterprise Linux, el dispositivo /dev/kvm puede estar disponible con permisos de escritura para todos los usuarios. Si además la virtualización anidada está activa, un usuario local sin privilegios podría utilizar la vulnerabilidad para intentar obtener privilegios elevados en el host.
La puntuación CVSS 3.1 asignada al fallo es de 9,3 sobre 10, con impacto alto en confidencialidad, integridad y disponibilidad. El vector publicado lo clasifica como un problema de explotación local, con baja complejidad y sin necesidad de privilegios previos ni interacción de otro usuario.
Eso no significa que cualquier máquina virtual ARM64 sea vulnerable de forma automática. La configuración del hipervisor es determinante y, especialmente, la utilización de virtualización anidada.
Linux ya ha publicado las correcciones
El equipo de seguridad del kernel identifica el problema como introducido en Linux 6.16 y señala correcciones en Linux 6.18.51, 7.2.5 y 7.3-rc1. Las correcciones modifican el tratamiento de niveles negativos durante el cálculo del tamaño de las invalidaciones y establecen un tamaño válido cuando no existe un nivel de traducción aplicable.
La información puede variar entre distribuciones porque los fabricantes y mantenedores pueden trasladar los parches a sus propias ramas. Debian, por ejemplo, registra el estado de sus paquetes y señala como corregidas determinadas versiones de Bookworm y Trixie, mientras que otras ramas presentan estados diferentes. Por eso la comprobación debe hacerse contra el aviso de seguridad de la distribución utilizada, no únicamente contra el número de versión principal del kernel.
Red Hat también ha publicado información específica sobre CVE-2026-89775. Su descripción confirma que el problema está relacionado con KVM para ARM64, el estado de la MMU y el cálculo incorrecto del tamaño de la región que debe invalidarse.
Mientras se despliegan las actualizaciones, revisar si la virtualización anidada está realmente justificada puede reducir la superficie expuesta. En los servidores donde no sea necesaria, mantenerla desactivada evita entrar en la ruta afectada. La prioridad de actualización será especialmente relevante en hosts ARM64 que proporcionen máquinas virtuales a usuarios no confiables.
También conviene revisar los permisos de /dev/kvm y la configuración de los hipervisores que ofrecen virtualización anidada. Son comprobaciones complementarias al parcheo y no sustituyen la actualización del kernel.
La divulgación pública no incluye, según la información disponible, un código de explotación publicado. Tampoco hay indicios públicos de que la vulnerabilidad haya sido utilizada en ataques reales. El investigador sí ha descrito una ruta de explotación que permitiría alcanzar la memoria del host bajo las condiciones afectadas.
Para los operadores de infraestructura ARM64, la cuestión queda por tanto bastante delimitada: identificar los hosts KVM con virtualización anidada, comprobar la versión del kernel y aplicar la actualización proporcionada por el fabricante o distribución. En servidores donde esa función no sea necesaria, mantenerla desactivada elimina el escenario concreto descrito para CVE-2026-89775.
Preguntas frecuentes
¿Qué es CVE-2026-89775?
Es una vulnerabilidad del kernel de Linux que afecta a KVM/ARM64 y puede permitir un escape desde una máquina virtual hacia el sistema anfitrión cuando está habilitada la virtualización anidada.
¿Qué versiones de Linux están corregidas?
El equipo de seguridad del kernel indica correcciones en Linux 6.18.51, 7.2.5 y 7.3-rc1. Las distribuciones pueden incorporar los parches en versiones propias.
¿Todas las máquinas KVM ARM64 están afectadas?
No. El escenario descrito requiere que la virtualización anidada esté habilitada. En ARM64 esta función está desactivada por defecto.
¿Qué deben hacer los administradores?
Deben comprobar si sus hosts ARM64 utilizan virtualización anidada y actualizar el kernel mediante los paquetes de seguridad de su distribución. Si la función no es necesaria, también pueden mantenerla desactivada.







