CVE-2026-98718
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: KVM: SEV: Do cache maintenance on the source VM *before* clearing SEV state Explicitly flush caches after intra-host migration before clearing "SEV active" on the source VM, as doing cache maintenance afterwards creates a tiny window where memory reclaim could return memory to the host without performing a cache flush, e.g. as pointed out by Sashiko: CPU1 in sev_migrate_from(): src->active = false; CPU2 running concurrent unmap: Since active is false, the automatic cache flush in sev_guest_memory_reclaimed is skipped. The host frees and reallocates the page. CPU1 in sev_migrate_from(): sev_writeback_caches(src_kvm); Executes a hardware cache flush (wbnoinvd), which writes the guest's old dirty ciphertext over the new page owner's data.
View original CVE JSON
{
"id": "CVE-2026-98718",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2026-10-18T16:17:25.363",
"lastModified": "2026-10-19T10:19:36.047",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: SEV: Do cache maintenance on the source VM *before* clearing SEV state\n\nExplicitly flush caches after intra-host migration before clearing \"SEV\nactive\" on the source VM, as doing cache maintenance afterwards creates a\ntiny window where memory reclaim could return memory to the host without\nperforming a cache flush, e.g. as pointed out by Sashiko:\n\n CPU1 in sev_migrate_from():\n src->active = false;\n\n CPU2 running concurrent unmap:\n Since active is false, the automatic cache flush in\n sev_guest_memory_reclaimed is skipped.\n The host frees and reallocates the page.\n\n CPU1 in sev_migrate_from():\n sev_writeback_caches(src_kvm);\n Executes a hardware cache flush (wbnoinvd), which writes the guest's old\n dirty ciphertext over the new page owner's data."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"arch/x86/kvm/svm/sev.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "37dfb676fafd1eef36fe0bb649607afbb0d5521b",
"lessThan": "8b7d4f68fef96cebe0b6dbb6e5607772337f7369",
"versionType": "git",
"status": "affected"
},
{
"version": "d4cc2dff12116a700add601c0262132cc26e1b2c",
"lessThan": "de83ff6a4d8f3618473bedb3c4400020c22e8a8a",
"versionType": "git",
"status": "affected"
},
{
"version": "93de2a6a4b91b72607136dd656edf03fb399d27f",
"lessThan": "973ea70393e885e540f714904e51bc6cac80e3d7",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"arch/x86/kvm/svm/sev.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "6.18.55",
"lessThan": "6.18.56",
"versionType": "semver",
"status": "affected"
},
{
"version": "7.2.9",
"lessThan": "7.2.10",
"versionType": "semver",
"status": "affected"
}
]
}
]
}
],
"metrics": {},
"references": [
{
"url": "https://git.kernel.org/stable/c/8b7d4f68fef96cebe0b6dbb6e5607772337f7369",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/973ea70393e885e540f714904e51bc6cac80e3d7",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/de83ff6a4d8f3618473bedb3c4400020c22e8a8a",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}