Skip to main content

Linux Kernel KVM CVE-2026-72287

| EUVDEUVD-2026-59186 HIGH
2026-08-15 Linux GHSA-2q48-vx2q-99r7
7.8
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
7.8 HIGH
AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
vuln.today AI
7.8 HIGH

AV:L and PR:L reflect local guest-context access; AC:H captures non-default nested VMX plus EPT-disabled prerequisites; S:C reflects full hypervisor escape with host impact.

3.1 AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
4.0 AV:L/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
SUSE
HIGH
qualitative
Red Hat
7.0 MEDIUM
qualitative

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
High
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Aug 17, 2026 - 08:10 vuln.today
CVSS changed
Aug 17, 2026 - 06:22 NVD
7.8 (HIGH)
Patch available
Aug 15, 2026 - 07:20 EUVD
CVE Published
Aug 15, 2026 - 05:55 cve.org
HIGH 7.8
CVE Published
Aug 15, 2026 - 05:55 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

KVM: nVMX: Move vTPR vs. TPR Threshold consistency check into "normal" checks

Move the off-by-default consistency check for vmcs12.tpr_threshold vs. the virtual APIC vTPR into the "normal" controls checks, as waiting until KVM has loaded some amount of state is unnecessary and actively dangerous. Specifically, failure to unwind vmcs01.GUEST_CR3 to KVM's value when EPT is disabled results in KVM running L1 with an L1-controlled CR3, not with KVM's CR3!

Alternatively, KVM could simply reset the MMU to force a reload of vmcs01.GUEST_CR3, but the _only_ reason the check was shoved into a "late" flow was to wait until the vmcs12 pages were retrieved. Rather than build up more crusty code, simply access vTPR using a regular guest memory access (performance isn't a concern). To circumvent the restrictions that led to KVM deferring nested_get_vmcs12_pages(), (a) use a VM-scoped API to read guest memory so that it always hits non-SMM memslots (for RSM), and (b) skip the check (since its off-by-default anyways) when the vCPU doesn't want to run, i.e. when userspace is restoring/stuffing state.

If reading guest memory fails, simply skip the consistency check, as KVM's de facto ABI is that VMX instruction accesses to non-existent memory get PCI Bus Error semantics, where reads return 0xFFs. And if vTPR=0xFF, then the vTPR is guaranteed to be greater than or equal to TPR_THRESHOLD.

AnalysisAI

Improper state unwinding in the Linux kernel KVM nested VMX (nVMX) subsystem allows a low-privileged local attacker operating within an L1 guest to potentially escape the virtualization boundary and gain control over the host hypervisor's page table base register (CR3). When EPT is disabled and the deferred vTPR-vs-TPR Threshold consistency check fails, KVM does not restore vmcs01.GUEST_CR3 to its own value, leaving it set to an L1-controlled address - enabling a malicious guest to redirect hypervisor memory mappings to attacker-controlled structures. No public exploit has been identified and no CISA KEV listing exists; EPSS at 0.20% (10th percentile) confirms currently low observed exploitation probability.

Technical ContextAI

The vulnerability is rooted in the Linux kernel's KVM implementation of Intel Nested VMX (nVMX), which enables L1 hypervisors to run L2 guests through a three-layer virtualization stack. The core issue involves the sequencing of a consistency check between vmcs12.tpr_threshold and the virtual APIC's vTPR (Virtual Task Priority Register). When EPT (Extended Page Tables - Intel's hardware-assisted two-dimensional paging) is disabled, KVM uses shadow page tables and relies on vmcs01.GUEST_CR3 to point to KVM's own page directory. The problematic deferred check path modified GUEST_CR3 as part of nested VM entry preparation but did not unwind it to KVM's controlled value upon check failure, leaving the register pointing to L1-guest-controlled memory. CPE data identifies the affected product as linux:linux generically; EUVD-2026-59186 narrows affected versions to Linux 6.19 and the commit range from 1100e4910ad207bc00aedc8dfdb228dd1b81f310 to the fix commits. No CWE is assigned, but the root cause class is improper error-path state rollback - a resource management failure where partial state changes during VM entry are not fully reversed on validation failure.

RemediationAI

Apply the upstream kernel patches at https://git.kernel.org/stable/c/7d066368f72e6192af7e21c5817626f6da666991 and https://git.kernel.org/stable/c/ebdac7554abb347ca4197be241116842161acd9b, which restructure the vTPR consistency check into the normal controls validation phase and use a VM-scoped guest memory read, eliminating the unsafe deferred path entirely. No distribution-specific patched release version is confirmed by the available references - monitor your Linux vendor's security advisories (Red Hat RHSA, Ubuntu USN, Debian DSA, SUSE SUSE-SU) for backported stable packages. As a compensating control, disabling nested virtualization by removing or setting nested=0 in the kvm_intel module parameters (e.g., echo 0 > /sys/module/kvm_intel/parameters/nested or modprobe kvm_intel nested=0) eliminates the attack surface entirely; the trade-off is loss of the ability to run hypervisors inside KVM guests, affecting CI/CD pipelines and nested-VM workloads. Ensuring EPT is enabled (the default on Intel hardware supporting it) prevents the specific shadow-paging code path that leaves CR3 unprotected, though this depends on hardware capability and should not be treated as a primary mitigation. Where feasible, restrict access to /dev/kvm to trusted users only to reduce the PR:L local-access exposure.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 16.0 Not-Affected

Share

CVE-2026-72287 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy