CVE-2026-99176

Source
https://cve.org/CVERecord?id=CVE-2026-99176
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-99176.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2026-99176
Downstream
AZL (1)
BELL (1)
DEBIAN (1)
SUSE (4)
UBUNTU (1)
Published
2026-10-28T10:35:30Z
Modified
2026-11-01T02:32:07Z
Summary
KVM: nVMX: Reset MMU back to the root MMU if loading L2 state fails for !VM-Entry
Details

In the Linux kernel, the following vulnerability has been resolved:

KVM: nVMX: Reset MMU back to the root MMU if loading L2 state fails for !VM-Entry

Reset the vCPU's MMU pointer back to the root MMU if loading L2 state fails in the "not from VM-Entry" case, i.e. when emulating RSM or handling KVM_SET_NESTED_STATE. Failure to unwind the MMU pointer results in KVM trying to run L1 with a nested MMU, and is especially problematic if the vCPU manages to free its nested state before the VM crashes. Constructing the root for a nested EPT MMU goes through vmcs12, which is dynamically allocated/freed when nVMX is enabled/disabled. And so if the nested state is freed with the MMU still pointing at the nested MMU, KVM will hit a NULL pointer deref when attempting to get L1=>L2 EPTP.

BUG: kernel NULL pointer dereference, address: 0000000000000078 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 114a2d067 P4D 111743067 PUD 11141f067 PMD 0 Oops: Oops: 0000 [#1] SMP CPU: 20 UID: 1000 PID: 1272 Comm: nested_tdp_faul Not tainted 7.3.0-rc4-8c89f11d1a99b-sink-vm #1914 PREEMPTLAZY Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 RIP: 0010:nested_ept_get_eptp+0xb/0x10 [kvm_intel] Call Trace: kvm_mmu_load+0xcd/0x870 [kvm] kvm_arch_vcpu_ioctl_run+0x18f5/0x1f80 [kvm] kvm_vcpu_ioctl+0x2c7/0x970 [kvm] __x64_sys_ioctl+0x90/0xd0 do_syscall_64+0x9c/0x4d0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x47491b Modules linked in: kvm_intel kvm irqbypass CR2: 0000000000000078 ---[ end trace 0000000000000000 ]--- RIP: 0010:nested_ept_get_eptp+0xb/0x10 [kvm_intel]

[sean: write changelog]

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/99xxx/CVE-2026-99176.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
72e9cbdb43384ceacc49e2fb6b8c8fb7c5988778
Fixed
c2586874605ec23b611c57fe71d183d98f168971
Fixed
c611337aee17a0627e365e58e2b6e78803fb3c36
Fixed
df4d01be5b318024bec68654c7af0ebc0e0ed8a1
Fixed
6a36b05fc5b3d660fcc826133dc92e2fc87bd1de
Fixed
f0c077c36fda9d498db39199e3997860e985efc8
Fixed
d00d5f534a8238674755e59826a6c7d3c8efb870
Fixed
c9716f956216eb74ab0aad7f633586edd49e0322
Fixed
c8f4cfe1cf93bce924e27f2abead7a4c4a487505

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-99176.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.15.0
Fixed
5.10.273
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.224
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.191
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.161
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.12.115
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.59
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.2.13

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-99176.json"