Register for the AI for Security Summit: Join Figma, Perplexity & Wiz

CVE-2026-81627
QEMU vulnerability analysis and mitigation

Overview

CVE-2026-81627 is a QEMU VAPIC SMRAM aliasing vulnerability that allows a privileged guest user on a Q35/KVM machine to inject arbitrary code into System Management Mode (SMM) memory by bypassing chipset D_LCK protection. The flaw resides in hw/i386/vapic.c, where the VAPIC setup hypercall fails to validate that the writable RAM alias remains within the option ROM window (0xc0000–0xdffff), enabling placement over locked SMRAM (0xa0000–0xbffff). It was reported by Artem Dinaburg of Trail of Bits and disclosed on September 18, 2026. Affected products include QEMU/qemu-kvm as shipped by Red Hat (RHEL, OpenShift, and related products). The CVSS v3.1 base score is 6.7 (Medium/Moderate), reflecting the high privilege requirement for exploitation (Red Hat Advisory, GitHub Advisory).

Technical details

The root cause is an out-of-bounds write (CWE-787) in QEMU's VAPIC (Virtual Advanced Programmable Interrupt Controller) implementation. The 16-bit VAPIC setup hypercall allows a privileged guest to specify both the base address and size of a high-priority writable RAM alias without validating that the alias stays within the VAPIC option ROM boundaries. An attacker with guest root access on a Q35/KVM machine can craft a hypercall that positions the writable alias over the SMRAM region (0xa0000–0xbffff), bypassing the Q35 chipset's D_LCK protection and writing attacker-controlled data into memory that executes in System Management Mode. Exploitation requires guest root access, KVM acceleration, and the kvmvapic TPR optimization to be active — a feature only relevant to 32-bit Windows guests. The upstream fix is available at the QEMU GitLab commit d61c8a6fb7388486353aa267ba0d75b098f16662 (Red Hat Bugzilla, Red Hat Advisory).

Impact

Successful exploitation allows a privileged guest user to inject arbitrary code into locked SMRAM, which executes in System Management Mode — a highly privileged CPU execution context outside the visibility of the guest OS and hypervisor. This results in high confidentiality, integrity, and availability impact, as SMM code can access and modify all system memory, potentially enabling persistent firmware-level compromise or complete host takeover from within the guest. The attack is scoped to the affected guest/host pair (Scope: Unchanged), but the ability to subvert SMM represents a severe security boundary violation in virtualized environments (Red Hat Advisory, GitHub Advisory).

Exploitability

No public proof-of-concept exploit code is known to exist, and there is no evidence of in-the-wild exploitation as of the disclosure date (Red Hat Advisory). The EPSS score is 0.0, reflecting the very low current probability of exploitation in the wild (GitHub Advisory). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation is constrained by the requirement for guest root (privileged) access, KVM acceleration, and an active kvmvapic TPR optimization — conditions that significantly narrow the attack surface to 32-bit Windows guests on Q35/KVM machines. No threat actor attribution has been reported.

Exploitation steps

  1. Precondition Setup: Obtain privileged (root/administrator) access within a 32-bit Windows guest VM running on a Q35/KVM QEMU machine with the kvmvapic option ROM active.
  2. Identify VAPIC Hypercall Interface: Locate the VAPIC setup hypercall interface exposed by QEMU's hw/i386/vapic.c, which accepts a base address and size for a writable RAM alias.
  3. Craft Malicious Hypercall: Issue a 16-bit VAPIC setup hypercall specifying a base address and size that places the writable RAM alias over the SMRAM region (0xa0000–0xbffff) rather than within the legitimate option ROM window (0xc0000–0xdffff).
  4. Bypass D_LCK Protection: Because QEMU does not validate the alias boundaries, the Q35 chipset's D_LCK SMRAM locking protection is bypassed, and the alias is mapped over locked SMRAM.
  5. Inject SMM Code: Write attacker-controlled code or data into the aliased SMRAM region, which will execute in System Management Mode upon the next SMI (System Management Interrupt), achieving arbitrary code execution at the SMM privilege level (Red Hat Bugzilla, Red Hat Advisory).

Indicators of compromise

  • Logs: Unexpected or anomalous hypercall activity from a 32-bit Windows guest on a Q35/KVM machine; QEMU process logs showing unusual memory mapping requests near the 0xa0000–0xbffff range.
  • Process/Hypervisor: QEMU process accessing or mapping memory regions outside the expected option ROM window (0xc0000–0xdffff) for VAPIC alias setup; unexpected SMI (System Management Interrupt) activity.
  • Configuration: Presence of kvmvapic option ROM active on Q35 machine types hosting 32-bit Windows guests in environments where this is not expected or required.

Mitigation and workarounds

A patch is available upstream at QEMU GitLab commit d61c8a6fb7388486353aa267ba0d75b098f16662; Red Hat is tracking fixes for affected products (qemu-kvm, qemu-kvm-rhev, and related packages) (Red Hat Bugzilla). As a workaround, the VAPIC TPR optimization can be disabled by preventing the kvmvapic option ROM from loading. When using libvirt, add the appropriate ROM disable configuration to the guest's domain XML; when using QEMU directly, pass -global kvmvapic.rom=off on the command line. This workaround is safe for Linux guests, 64-bit Windows guests, and any guest using x2APIC or MSR-based TPR access, as they are unaffected by disabling this optimization (Red Hat Advisory).

Community reactions

Red Hat acknowledged the vulnerability and credited Artem Dinaburg of Trail of Bits for the discovery and responsible disclosure. Red Hat classified the impact as Moderate, noting that the high privilege requirement and narrow preconditions (32-bit Windows guests, KVM, active kvmvapic) limit real-world risk despite the high CVSS sub-scores for confidentiality, integrity, and availability (Red Hat Advisory). No significant broader community or social media discussion has been observed at this time.

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

Debian

Affected

bookworm

qemu

Affected

sid

qemu

Affected

trixie

qemu

Affected

RHEL / CentOS

Affected

OpenShift

openshift/ose-rhel-coreos-8

Affected

RHEL 8

virt-devel:rhel/qemu-kvm.src

Affected

RHEL 9

qemu-kvm.src

Affected

RHEL 10

qemu-kvm.src

Affected

SourceThis report was generated using AI

Related QEMU vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-81627MEDIUM6.7
  • QEMU logoQEMU
  • virt-devel:rhel::qemu-img
NoNoSep 18, 2026
CVE-2026-66022NONEN/A
  • QEMU logoQEMU
  • qemu-img
NoYesAug 31, 2026
CVE-2026-65929NONEN/A
  • QEMU logoQEMU
  • qemu-kvm-common
NoYesAug 31, 2026
CVE-2026-65928NONEN/A
  • QEMU logoQEMU
  • qemu-kvm-block-ssh
NoYesAug 31, 2026
CVE-2026-63323NONEN/A
  • QEMU logoQEMU
  • qemu
NoYesAug 31, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management