CVE-2026-64247 in Linux
Resumen
por VulDB • 2026-07-24
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
KVM: x86: hyper-v: Limitar el índice del banco al consultar bancos dispersos (sparse banks)
Al verificar si un ID de VP está incluido en un conjunto de bancos dispersos, comprobar explícitamente que el ID puede estar realmente contenido en un banco disperso (el TLFS permite un máximo de 64 bancos de 64 vCPUs cada uno). Al gestionar una invalidación paravirtualizada del TLB para L2, el ID de VP se copia literalmente desde el VMCS iluminado (enlightened VMCS), sin ninguna comprobación de límites, es decir, no está garantizado que esté por debajo del límite de 4096.
La falta de comprobación de los límites del ID de VP provoca una lectura fuera de límites al probar el banco disperso y, estrictamente hablando, podría llevar a KVM a realizar una invalidación innecesaria del TLB para un vCPU L2.
================================================================== BUG: KASAN: use-after-free en hv_is_vp_in_sparse_set+0x85/0x100 [kvm]
Lectura de tamaño 8 en la dirección ffff88811ba5f598 por parte de la tarea hyperv_evmcs/2802
CPU: 12 UID: 1000 PID: 2802 Comm: hyperv_evmcs No contaminado (Not tainted) 7.1.0-rc2 #7 PREEMPT Nombre del hardware: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 Rastro de llamadas (Call Trace): <TASK> dump_stack_lvl+0x51/0x60 print_report+0xcb/0x5d0 kasan_report+0xb4/0xe0 kasan_check_range+0x35/0x1b0 hv_is_vp_in_sparse_set+0x85/0x100 [kvm]
kvm_hv_flush_tlb+0xe9e/0x16c0 [kvm]
kvm_hv_hypercall+0xe6b/0x1e60 [kvm]
vmx_handle_exit+0x485/0x1b60 [kvm_intel]
kvm_arch_vcpu_ioctl_run+0x22e3/0x5070 [kvm]
kvm_vcpu_ioctl+0x5d0/0x10c0 [kvm]
__x64_sys_ioctl+0x129/0x1a0 do_syscall_64+0
If you want to get best quality of vulnerability data, you may have to visit VulDB.