CVE-2026-89912: Linux kernel · KVM: arm64: vgic-its: Don't dereference a NULL collection on ITT save
Affects Linux kernelSource CVE Database V5
Not known to be exploited · CVSS 7.1 High · fixed in dd0c3e6c03e3bb3fd7c0fa422230020674c5c25e : patch Linux kernel soon.
Data as of 26 Oct 2026, 17:30 UTC
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 7% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- CISA SSVC
- Exploitation
- No evidence of active exploitation and no public proof of concept
- Automatable
- Attackers cannot reliably automate steps 1–4 of the kill chain
- Technical impact
- Limited control over the software or limited information exposure
CISA SSVC assessment, 2026-10-16.
- Patch
- Available – fixed in dd0c3e6c03e3bb3fd7c0fa422230020674c5c25e, c6c156d931c33b92362383cf76f6d6e1291dcbfe, 36df368861d2664291298feeb37dfef43fcae670 +2
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 16 Sep 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in– |
Description
In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: vgic-its: Don't dereference a NULL collection on ITT save MAPC with V=0 drops ite->collection but leaves the ITE on the device's ITT list, and vgic_its_save_ite() dereferences it unconditionally. A guest that issues MAPD, MAPTI and then MAPC(V=0) therefore oopses the host when the VMM issues KVM_DEV_ARM_ITS_SAVE_TABLES to migrate it. That sequence is UNPREDICTABLE per the architecture, but KVM already handles the resulting state in the translate, MOVI and DISCARD paths. Save a zeroed entry, which vgic_its_restore_ite() reads back as invalid. Skipping the ITE instead would leave the ITT slot holding whatever is in guest memory, and restore rejects an entry naming a collection the restored collection table does not have.
References
- git.kernel.org/stable/c/dd0c3e6c03e3bb3fd7c0fa422230020674c5c25e (opens in a new tab)
- git.kernel.org/stable/c/2c3a87ad3d3935c43d465cd2465db9020f9e898f (opens in a new tab)
- git.kernel.org/stable/c/3d4c26b16a04a084fe0bde08ccdd8086570f8bbe (opens in a new tab)
- git.kernel.org/stable/c/36df368861d2664291298feeb37dfef43fcae670 (opens in a new tab)
- git.kernel.org/stable/c/c6c156d931c33b92362383cf76f6d6e1291dcbfe (opens in a new tab)