CVE-2019-12928
published 2019-06-24CVE-2019-12928: The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution…
PriorityP274critical9.8CVSS 3.0
AVNACLPRNUINSUCHIHAH
EXPLOIT
EPSS
23.04%
97.5th percentile
The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution, denial of service, or information disclosure by sending a crafted QMP command to the listening server. Note: This has been disputed as a non-issue since QEMU's -qmp interface is meant to be used by trusted users. If one is able to access this interface via a tcp socket open to the internet, then it is an insecure configuration issue
Affected
2 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | qemu | — | — |
| qemu | qemu | <= 4.0.0 | — |
Detection & IOCsextracted from sources · hover to see the quote
- →Monitor for QEMU Monitor Protocol (QMP) or Human Monitor Interface (HMP) TCP sockets exposed on the network; exploitation uses the `migrate` command with an `exec:` URI to achieve OS command injection. ↗
- →Alert on any inbound TCP connections to QEMU QMP/HMP listener ports from untrusted/external sources; the attack vector requires network access to the listening QMP TCP server. ↗
- →Inspect QMP/HMP command streams for `migrate` commands containing `exec:` payloads, which are the mechanism used for OS command injection. ↗
- ·This vulnerability only applies when the QEMU QMP/HMP interface is exposed via a TCP socket accessible to untrusted users; using a local UNIX socket (the default for libvirt) is not exploitable by remote attackers. ↗
- ·Libvirt deployments are not affected because libvirt exclusively uses local UNIX sockets owned by the QEMU process user-id, preventing remote or cross-VM access. ↗
- ·Red Hat and upstream QEMU dispute this as a security issue, noting that QMP access already implies full administrative control of the guest VM; correct access controls on QMP network connections prevent exploitation entirely. ↗
CVSS provenance
nvdv3.09.8CRITICALCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvdv2.010.0CRITICALAV:N/AC:L/Au:N/C:C/I:C/A:C
osv9.8CRITICAL
vendor_debian9.8LOW
vendor_redhat9.8CRITICAL
CVEs like this are exactly what “Exploited This Week” covers.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
GHSA-pwcf-p9qx-3948: The QMP migrate command in QEMU version 4
ghsa_unreviewed·2022-05-24
CVE-2019-12928 [CRITICAL] CWE-668 GHSA-pwcf-p9qx-3948: The QMP migrate command in QEMU version 4
The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution, denial of service, or information disclosure by sending a crafted QMP command to the listening server.
OSV
CVE-2019-12928: The QMP migrate command in QEMU version 4
osv·2019-06-24·CVSS 9.8
CVE-2019-12928 [CRITICAL] CVE-2019-12928: The QMP migrate command in QEMU version 4
The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution, denial of service, or information disclosure by sending a crafted QMP command to the listening server. Note: This has been disputed as a non-issue since QEMU's -qmp interface is meant to be used by trusted users. If one is able to access this interface via a tcp socket open to the internet, then it is an insecure configuration issue
Red Hat
QEMU: QMP migrate command execution issue
vendor_redhat·2019-06-05·CVSS 9.8
CVE-2019-12928 [CRITICAL] CWE-78 QEMU: QMP migrate command execution issue
QEMU: QMP migrate command execution issue
The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution, denial of service, or information disclosure by sending a crafted QMP command to the listening server. Note: This has been disputed as a non-issue since QEMU's -qmp interface is meant to be used by trusted users. If one is able to access this interface via a tcp socket open to the internet, then it is an insecure configuration issue
QEMU's Machine Protocol (QMP) is designed to enable remote applications (ex. Libvirt) to control and manage QEMU process instances. It is meant to be used by trusted users and applications. The TCP server socket is only one of the transport options supported by QM
Debian
CVE-2019-12928: qemu - The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS co...
vendor_debian·2019·CVSS 9.8
CVE-2019-12928 [CRITICAL] CVE-2019-12928: qemu - The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS co...
The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution, denial of service, or information disclosure by sending a crafted QMP command to the listening server. Note: This has been disputed as a non-issue since QEMU's -qmp interface is meant to be used by trusted users. If one is able to access this interface via a tcp socket open to the internet, then it is an insecure configuration issue
Scope: local
bookworm: open
bullseye: open
forky: open
sid: open
trixie: open
No detection rules found.
Bugzilla
CVE-2019-12928 QEMU: QMP migrate command execution issue
bugzilla·2019-06-27·CVSS 9.8
CVE-2019-12928 [CRITICAL] CVE-2019-12928 QEMU: QMP migrate command execution issue
CVE-2019-12928 QEMU: QMP migrate command execution issue
The QMP migrate command in QEMU version 4.0.0 and earlier is vulnerable to OS command injection, which allows the remote attacker to achieve code execution, denial of service, or information disclosure by sending a crafted QMP command to the listening server.
https://fakhrizulkifli.github.io/posts/2019/06/05/CVE-2019-12928/
Discussion:
Created qemu tracking bugs for this issue:
Affects: epel-7 [bug 1724813]
Affects: fedora-all [bug 1724814]
---
The migrate command in QMP is provides a way to migrate a current running guest to another virtual machine [1]. This functionality is built on top of QEMU migration functionality. Both of these support the use of 'exec:' within the command. Examples are provided utilizing this functiona
Bugzilla
CVE-2019-12928 qemu: QEMU machine protocol migrate command execution [fedora-all]
bugzilla·2019-06-27·CVSS 9.8
CVE-2019-12928 [CRITICAL] CVE-2019-12928 qemu: QEMU machine protocol migrate command execution [fedora-all]
CVE-2019-12928 qemu: QEMU machine protocol migrate command execution [fedora-all]
This is an automatically created tracking bug! It was created to ensure
that one or more security vulnerabilities are fixed in affected versions
of fedora-all.
For comments that are specific to the vulnerability please use bugs filed
against the "Security Response" product referenced in the "Blocks" field.
For more information see:
http://fedoraproject.org/wiki/Security/TrackingBugs
When submitting as an update, use the fedpkg template provided in the next
comment(s). This will include the bug IDs of this tracking bug as well as
the relevant top-level CVE bugs.
Please also mention the CVE IDs being fixed in the RPM changelog and the
fedpkg commit message.
NOTE: this issue affects multiple supported vers
Bugzilla
CVE-2019-12928 qemu: QEMU machine protocol migrate command execution [epel-7]
bugzilla·2019-06-27·CVSS 9.8
CVE-2019-12928 [CRITICAL] CVE-2019-12928 qemu: QEMU machine protocol migrate command execution [epel-7]
CVE-2019-12928 qemu: QEMU machine protocol migrate command execution [epel-7]
This is an automatically created tracking bug! It was created to ensure
that one or more security vulnerabilities are fixed in affected versions
of epel-7.
For comments that are specific to the vulnerability please use bugs filed
against the "Security Response" product referenced in the "Blocks" field.
For more information see:
http://fedoraproject.org/wiki/Security/TrackingBugs
When submitting as an update, use the fedpkg template provided in the next
comment(s). This will include the bug IDs of this tracking bug as well as
the relevant top-level CVE bugs.
Please also mention the CVE IDs being fixed in the RPM changelog and the
fedpkg commit message.
Discussion:
Use the following template to for the 'fedp
2019-06-24
Published