fuente: https://thehackernews.com/2026/10/ai-found-linux-kernel-flaw-gives-local.html
Una vulnerabilidad en el subsistema vhost de Linux permite a un usuario local leer y escribir en la memoria del kernel a su antojo y obtener privilegios de root en casi una década de versiones del kernel. En una configuración de virtualización, permite que una máquina virtual no confiable escriba en la memoria del host y secuestre el programa que la ejecuta.
El fallo se conoce como CVE-2026-74580 y se denomina Vghost. Tencent Zhuque Lab, que descubrió la vulnerabilidad, publicó una solución el 3 de agosto y un informe completo el 12 de octubre con demostraciones funcionales de ambos ataques. Hasta el momento, no hay indicios públicos de que haya sido explotado.
vhost es la parte del kernel de Linux que acelera la red y otras operaciones de entrada/salida para máquinas virtuales y contenedores. Un usuario local accede a él abriendo un nodo de dispositivo, generalmente /dev/vhost-net o /dev/vhost-vsock.
En el host, la vulnerabilidad proporciona a un usuario sin privilegios una forma fiable de leer y escribir en cualquier dirección del kernel, eludir KASLR y obtener privilegios de root. El ataque es determinista: no requiere optimización de memoria ni sincronización fortuita.
El segundo ataque es más específico. Cuando el dispositivo virtio de una máquina virtual se coloca detrás de una IOMMU virtual con iommu_platform activado, y vhost se ejecuta en modo device-IOTLB, un invitado no confiable puede activar el mismo error y hacer que el kernel del host escriba fuera de los límites en el proceso QEMU del host. A partir de ahí, el invitado puede sobrescribir un puntero de función en QEMU y tomar el control de la siguiente ejecución del proceso del host, o incluso provocar su bloqueo.
Cómo funciona
vhost mantiene una pequeña caché de las asignaciones de memoria detrás de cada anillo virtual y las colas compartidas que utiliza para mover datos. Un acierto de caché se interpreta como prueba de que la región ya se ha comprobado. La caché se borra cuando se actualiza o invalida la asignación y cuando se reinicia la cola, pero no cuando los comandos VHOST_SET_VRING_ADDR o VHOST_SET_VRING_NUM modifican las direcciones o el tamaño del anillo mientras la cola está activa.
Con un IOTLB de dispositivo conectado, esos comandos aceptan las nuevas direcciones sin verificarlas, dejando esa verificación para más adelante. Una vez que la caché se llena, la verificación posterior nunca se ejecuta y vhost continúa traduciendo las nuevas direcciones usando la asignación anterior. El kernel entonces copia datos hacia o desde ese puntero sin una verificación de límites, por lo que una escritura en el anillo usado o una lectura de un descriptor aterriza fuera de la región mapeada. Esto le da al atacante acceso de lectura y escritura al kernel.
La vulnerabilidad permaneció en el código durante aproximadamente nueve años porque requirió dos cambios razonables para crearla. Un cambio de 2017 (Linux 4.11) agregó la caché y su acceso directo. Un cambio de 2020 (Linux 5.9) trasladó la verificación de direcciones fuera del comando y a un paso posterior, eliminando la verificación que de otro modo habría detectado la traducción obsoleta.
Un ingeniero de OpenAI fue arrestado por presuntamente ocultar un dispositivo de grabación de audio en una sala de conferencias ejecutiva en las oficinas de la...
Leer artículo →GitHub ha decidido que las configuraciones de publicación de confianza de npm no validadas caduquen 48 horas después de su creación, luego de que investigadores...
Leer artículo →La Agencia de Seguridad de Infraestructura y Ciberseguridad de EE. UU. (CISA) instó el martes a las organizaciones a actualizar de inmediato sus dispositivos e...
Leer artículo →