KVM: x86: Reset IRTE to host control if *new* route isn't postable
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.10.237, 5.15.181, 6.1.136, 6.6.89, 6.12.26, and 1 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Reset IRTE to host control if new route isn't postable Restore an IRTE back to host control (remapped or posted MSI mode) if the new GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type. Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU. The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From efc644048ecde54f016011fe10110addd0de348f · fixed in e5f2dee9f7fcd2ff4b97869f3c66a0d89c167769; From efc644048ecde54f016011fe10110addd0de348f · fixed in 116c7d35b8f72eac383b9fd371d7c1a8ffc2968b; From efc644048ecde54f016011fe10110addd0de348f · fixed in 023816bd5fa46fab94d1e7917fe131b79ed1fb41; From efc644048ecde54f016011fe10110addd0de348f · fixed in 3481fd96d801715942b6f69fe251133128156f30; From efc644048ecde54f016011fe10110addd0de348f · fixed in b5de7ac74f69603ad803c524b840bffd36368fc3; From efc644048ecde54f016011fe10110addd0de348f · fixed in 3066ec21d1a33896125747f68638725f456308db; From efc644048ecde54f016011fe10110addd0de348f · fixed in 9bcac97dc42d2f4da8229d18feb0fe2b1ce523a2
- Linux Linux
4.4
- KernelLinux
From 4.4.0 · fixed in 5.10.237; From 5.11.0 · fixed in 5.15.181; From 5.16.0 · fixed in 6.1.136; From 6.2.0 · fixed in 6.6.89; From 6.7.0 · fixed in 6.12.26; From 6.13.0 · fixed in 6.14.5
References 7
git.kernel.org
- stable/c/e5f2dee9f7fcd2ff4b97869f3c66a0d89c167769
- stable/c/116c7d35b8f72eac383b9fd371d7c1a8ffc2968b
- stable/c/023816bd5fa46fab94d1e7917fe131b79ed1fb41
- stable/c/3481fd96d801715942b6f69fe251133128156f30
- stable/c/b5de7ac74f69603ad803c524b840bffd36368fc3
- stable/c/3066ec21d1a33896125747f68638725f456308db
- stable/c/9bcac97dc42d2f4da8229d18feb0fe2b1ce523a2