Guest-triggered host process crash via reentrant NVMe DMA
Published Aug 25, 2022 · Updated Feb 28, 2025
Use-after-free in QEMU NVMe emulation before 7.0.0-rc0 allows guest OS users to crash the host process through a crafted DMA request. The nvme_tx path performs DMA to the controller's own MMIO without an overlap check, allowing a reentrant write to reset the controller and free live queue structures. Guest control of an emulated NVMe request is required; the upstream reproducer demonstrates a QEMU process crash, not host-process code execution.
Summary
What happened
Use-after-free in QEMU NVMe emulation before 7.0.0-rc0 allows guest OS users to crash the host process through a crafted DMA request. The nvme_tx path performs DMA to the controller's own MMIO without an overlap check, allowing a reentrant write to reset the controller and free live queue structures. Guest control of an emulated NVMe request is required; the upstream reproducer demonstrates a QEMU process crash, not host-process code execution.
The record
- CVE
- CVE-2021-3929
- Published
- Aug 25, 2022
- Updated
- Feb 28, 2025
- Vendor
- QEMU Project
- Product
- QEMU
- Classifications
- CWE-416, T1611
- Attack vector
- local
- Privileges
- admin
Timeline
How it unfolded
- Aug 25, 2022CVE publishedPublication date reported by the CVE source.
- Feb 28, 2025Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=Fixed in qemu-kvm 7.0.0-rc0
What conditions does exploitation require?
What is affected?
Published CVSS scores
CVSS describes severity. EPSS estimates exploitation probability.
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Public exploit references
- Upstream QEMU qtest reproducerproof of concept · demonstrated
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo