Skip to main content
← All vulnerabilities
CVE-2025-37885

KVM: x86: Reset IRTE to host control if *new* route isn't postable

Published
Last modified
published
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
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

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. 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