Linux kernel KVM: Incorrect page dirtying in SEV guest memory population
Summary
The Linux kernel KVM component for AMD SEV contains a bug in sev_gmem_post_populate(), where set_page_dirty() is called on pages obtained via get_user_pages_fast() without holding the required lock. This can lead to an unsafe handling of the page mapping, which may cause memory corruption on the host. Exploitation requires local access to a host that runs KVM SEV or SEV-SNP guests.
Affected
- Linux kernel with KVM SEV support, from commit 97cd21d57e9bd2da79845178d9250cfd19289cd4 until the fixes 184382f9 and 97818b2 are applied (introduced in v7.2-rc1 according to the patch author)
- Exact distribution kernel versions: Unknown.
Fixed in
- Upstream stable fix commits: 184382f9852d433af21de96c334ecf43b8414ed8 and 97818b2fa7082e940ddd36dab12a68615300e798
- Fixed distribution kernel versions: Unknown.
Workaround
- No vendor workaround documented.
- Where AMD SEV/SEV-SNP is not used, the affected code path is likely not reachable in normal operation (inference, not confirmed by a source).
Exploitation
- Not known to be exploited.
- Not listed in CISA KEV as of the crawled data.
- No public proof of concept found.
- The bug was found by code review and was only compile-tested by the author.
Our recommendation
- If you run KVM hosts on AMD EPYC with SEV or SEV-SNP, install the fixed kernel from your distribution as soon as it is available, during your next maintenance window.
- Check whether SEV is in use with 'dmesg | grep -i sev' or your hypervisor settings.
- Otherwise, treat the update as routine kernel patching.
- The CVSS 7.8 score is an unverified estimate; NVD analysis is pending.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- Linux kernel stable fix commit 184382f9 git.kernel.org
- Linux kernel stable fix commit 97818b2f git.kernel.org
- Ubuntu security notice CVE-2026-99177 ubuntu.com
- Patch mail by the author (KVM list) ratatoskr.run
- OffSeq threat radar CVE-2026-99177 radar.offseq.com
- Strix CVE-2026-99177 www.strix.ai
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 21:57.
Original description (NVD)
In the Linux kernel, the following vulnerability has been resolved: KVM: SEV: Fix page dirtying in sev_gmem_post_populate() set_page_dirty() requires that the caller holds some kind of lock to ensure that the page's mapping does not concurrently go away. That is not the case for a random page we got from get_user_pages_fast(), so use set_page_dirty_lock(). [sean: tag for stable]
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
