{"api_version":"1","generated_at":"2026-08-09T05:11:21+00:00","cve":"CVE-2026-68081","urls":{"html":"https://cve.report/CVE-2026-68081","api":"https://cve.report/api/cve/CVE-2026-68081.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-68081","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-68081"},"summary":{"title":"KVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state\n\nPut all vmcs12 pages if KVM synthesizes a nested VM-Exit due to invalid\nguest while emulating VMLAUNCH or VMRESUME.  The invalid guest state path\ndoesn't use nested_vmx_vmexit() as that API is intended to be used if and\nonly if L2 is active, and the open coded equivalent neglects to put the\nvmcs12 pages.  Failure to put the vmcs12 pages leaks any pinned pages\n(and/or mappings) if L1 retries VMLAUNCH/VMRESUME.\n\nNote, the !from_vmenter scenario doesn't suffer the same problem, as\nvmx_get_nested_state_pages() only gets/pins/maps the vmcs12 pages if L2 is\nactive, i.e. if a \"full\" VM-Exit is guaranteed before KVM will retry\ngetting vmcs12 pages.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-08-08 10:16:54","updated_at":"2026-08-08 10:16:54"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/2c87a087c20632d68920272173b5d7c47f9bcf70","name":"https://git.kernel.org/stable/c/2c87a087c20632d68920272173b5d7c47f9bcf70","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/7996013b85687034d2e820cef94d6404192e3a3d","name":"https://git.kernel.org/stable/c/7996013b85687034d2e820cef94d6404192e3a3d","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/2f2312c422fd2695da772cecb30c69994b795964","name":"https://git.kernel.org/stable/c/2f2312c422fd2695da772cecb30c69994b795964","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-68081","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-68081","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 96c66e87deeeb3cc78a3b82a1de8e365eec206c1 7996013b85687034d2e820cef94d6404192e3a3d git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 96c66e87deeeb3cc78a3b82a1de8e365eec206c1 2c87a087c20632d68920272173b5d7c47f9bcf70 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 96c66e87deeeb3cc78a3b82a1de8e365eec206c1 2f2312c422fd2695da772cecb30c69994b795964 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.2","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.2 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.40 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1.5 7.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2-rc4 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"68081","cve":"CVE-2026-68081","epss":"0.002060000","percentile":"0.108370000","score_date":"2026-08-08","updated_at":"2026-08-09 00:07:22"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["arch/x86/kvm/vmx/nested.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"7996013b85687034d2e820cef94d6404192e3a3d","status":"affected","version":"96c66e87deeeb3cc78a3b82a1de8e365eec206c1","versionType":"git"},{"lessThan":"2c87a087c20632d68920272173b5d7c47f9bcf70","status":"affected","version":"96c66e87deeeb3cc78a3b82a1de8e365eec206c1","versionType":"git"},{"lessThan":"2f2312c422fd2695da772cecb30c69994b795964","status":"affected","version":"96c66e87deeeb3cc78a3b82a1de8e365eec206c1","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["arch/x86/kvm/vmx/nested.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"5.2"},{"lessThan":"5.2","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.40","versionType":"semver"},{"lessThanOrEqual":"7.1.*","status":"unaffected","version":"7.1.5","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.2-rc4","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.40","versionStartIncluding":"5.2","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1.5","versionStartIncluding":"5.2","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2-rc4","versionStartIncluding":"5.2","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state\n\nPut all vmcs12 pages if KVM synthesizes a nested VM-Exit due to invalid\nguest while emulating VMLAUNCH or VMRESUME.  The invalid guest state path\ndoesn't use nested_vmx_vmexit() as that API is intended to be used if and\nonly if L2 is active, and the open coded equivalent neglects to put the\nvmcs12 pages.  Failure to put the vmcs12 pages leaks any pinned pages\n(and/or mappings) if L1 retries VMLAUNCH/VMRESUME.\n\nNote, the !from_vmenter scenario doesn't suffer the same problem, as\nvmx_get_nested_state_pages() only gets/pins/maps the vmcs12 pages if L2 is\nactive, i.e. if a \"full\" VM-Exit is guaranteed before KVM will retry\ngetting vmcs12 pages."}],"providerMetadata":{"dateUpdated":"2026-08-08T09:17:44.795Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/7996013b85687034d2e820cef94d6404192e3a3d"},{"url":"https://git.kernel.org/stable/c/2c87a087c20632d68920272173b5d7c47f9bcf70"},{"url":"https://git.kernel.org/stable/c/2f2312c422fd2695da772cecb30c69994b795964"}],"title":"KVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-68081","datePublished":"2026-08-08T09:17:44.795Z","dateReserved":"2026-07-30T09:28:09.367Z","dateUpdated":"2026-08-08T09:17:44.795Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-08 10:16:54","lastModifiedDate":"2026-08-08 10:16:54","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"68081","Ordinal":"1","Title":"KVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to inva","CVE":"CVE-2026-68081","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"68081","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to invalid guest state\n\nPut all vmcs12 pages if KVM synthesizes a nested VM-Exit due to invalid\nguest while emulating VMLAUNCH or VMRESUME.  The invalid guest state path\ndoesn't use nested_vmx_vmexit() as that API is intended to be used if and\nonly if L2 is active, and the open coded equivalent neglects to put the\nvmcs12 pages.  Failure to put the vmcs12 pages leaks any pinned pages\n(and/or mappings) if L1 retries VMLAUNCH/VMRESUME.\n\nNote, the !from_vmenter scenario doesn't suffer the same problem, as\nvmx_get_nested_state_pages() only gets/pins/maps the vmcs12 pages if L2 is\nactive, i.e. if a \"full\" VM-Exit is guaranteed before KVM will retry\ngetting vmcs12 pages.","Type":"Description","Title":"KVM: nVMX: Put vmcs12 pages if nested VM-Enter fails due to inva"}]}}}