{"id":"CVE-2026-98472","title":"KVM: SEV: Free have_run_cpus during VM destruction even if VM is no longer SEV","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: SEV: Free have_run_cpus during VM destruction even if VM is no longer SEV\n\nUnconditionally free SEV's \"have run CPUs\" cpumask in the VM destroy path,\ni.e. even for…","severity":"none","vendor":"Linux","product":"Linux","affected":["Linux >= 6f38f8c574642a822f2e85f079fa29a49176c49c < 6aef7cf800098749ff5d660222efaf6e01e98c09","Linux >= 6f38f8c574642a822f2e85f079fa29a49176c49c < 9784e5ca91b37b387f3f414af4340c54f7a63566","Linux >= 6f38f8c574642a822f2e85f079fa29a49176c49c < 12c1f6e03f944e399bd2c88441dca5dc702b95a5","Linux 6.17"],"published":"2026-10-18","updated":"2026-10-18","sourceUpdated":"2026-10-18T15:15:24.654Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-98472","references":[{"url":"https://git.kernel.org/stable/c/6aef7cf800098749ff5d660222efaf6e01e98c09"},{"url":"https://git.kernel.org/stable/c/9784e5ca91b37b387f3f414af4340c54f7a63566"},{"url":"https://git.kernel.org/stable/c/12c1f6e03f944e399bd2c88441dca5dc702b95a5"}],"tags":["cve.org"],"ingestedAt":"2026-10-18T15:45:12.299Z","slug":"CVE-2026-98472","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nKVM: SEV: Free have_run_cpus during VM destruction even if VM is no longer SEV\n\nUnconditionally free SEV's \"have run CPUs\" cpumask in the VM destroy path,\ni.e. even for what appear to be non-SEV VMs, as an SEV VM becomes a non-SEV\nVM if its state is intra-host migrated.  Alternatively, the mask could be\nfreed in sev_migrate_from() when \"converting\" the source VM, but that gets\nannoying because ideally KVM would nullify the mask to guard against UAF,\nand nullifying the mask would need be conditioned on CPUMASK_OFFSTACK=y.\n\nFreeing the mask during sev_migrate_from() is also not robust against other\nKVM bugs, though that's kind of a moot point since any such bugs would show\nup even if sev->active is never set.  I.e. KVM must get that side of things\ncorrect.  But, that's not a great reason to add more code just to make\nthings marginally less robust.\n\n## Affected\n\n- `Linux >= 6f38f8c574642a822f2e85f079fa29a49176c49c < 6aef7cf800098749ff5d660222efaf6e01e98c09`\n- `Linux >= 6f38f8c574642a822f2e85f079fa29a49176c49c < 9784e5ca91b37b387f3f414af4340c54f7a63566`\n- `Linux >= 6f38f8c574642a822f2e85f079fa29a49176c49c < 12c1f6e03f944e399bd2c88441dca5dc702b95a5`\n- `Linux 6.17`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":3,"depthScoreParts":{"impact":2.8,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}