Bug 2512739 (CVE-2026-68081)

Summary: CVE-2026-68081 kernel: KVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security DevOps Team <prodsec-dev>
Status: NEW --- QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: rhel-process-autobot, watson-tool-maintainers
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in the KVM (Kernel-based Virtual Machine) component of the Linux kernel, specifically within its nested virtualization (nVMX) feature. When a nested virtual machine (VM) attempts to enter an invalid guest state during VMLAUNCH or VMRESUME operations, the system fails to properly release `vmcs12` pages. This oversight can lead to a resource leak, where memory pages remain pinned and unreleased. A malicious Level 1 (L1) guest could repeatedly trigger this condition, potentially leading to a denial of service (DoS) on the host system due to resource exhaustion.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description OSIDB Bzimport 2026-08-08 09:41:12 UTC
In the Linux kernel, the following vulnerability has been resolved:

KVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state

Put all vmcs12 pages if KVM synthesizes a nested VM-Exit due to invalid
guest while emulating VMLAUNCH or VMRESUME.  The invalid guest state path
doesn't use nested_vmx_vmexit() as that API is intended to be used if and
only if L2 is active, and the open coded equivalent neglects to put the
vmcs12 pages.  Failure to put the vmcs12 pages leaks any pinned pages
(and/or mappings) if L1 retries VMLAUNCH/VMRESUME.

Note, the !from_vmenter scenario doesn't suffer the same problem, as
vmx_get_nested_state_pages() only gets/pins/maps the vmcs12 pages if L2 is
active, i.e. if a "full" VM-Exit is guaranteed before KVM will retry
getting vmcs12 pages.

Comment 1 Mauro Matteo Cascella 2026-08-10 20:48:29 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2026080832-CVE-2026-68081-ee6a@gregkh/T