Security advisory
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
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2019-12928
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 04:36 UTC · Revision 1
Source evidence
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
osv:CVE-2019-12928
Complete source record
{
"id": "d7a2cc68be7ed6a3e97c43ceccc007ea0fdceb5c0d8fafa60204301b539e8a7f",
"url": "https://osv.dev/vulnerability/CVE-2019-12928",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2019-12928",
"summary": "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",
"evidence": "osv:CVE-2019-12928",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2019-12928",
"aliases": [
"CVE-2019-12928"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/qemu/qemu",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "131b9a05705636086699df15d4a6d328bb2585e8"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:qemu:qemu:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.0.0"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v4.0.0",
"v4.0.0-rc4",
"v4.0.0-rc3",
"v4.0.0-rc2",
"v4.0.0-rc1",
"v3.1.0",
"v4.0.0-rc0",
"v3.0.0",
"v3.1.0-rc5",
"v3.1.0-rc4",
"v3.1.0-rc3",
"v3.1.0-rc2",
"v3.1.0-rc1",
"v3.1.0-rc0",
"v3.0.0-rc4",
"v3.0.0-rc3",
"v3.0.0-rc2",
"v3.0.0-rc1",
"v3.0.0-rc0",
"v2.12.0",
"v2.12.0-rc4",
"v2.12.0-rc3",
"v2.12.0-rc2",
"v2.12.0-rc1",
"v2.12.0-rc0",
"v2.11.0",
"v2.11.0-rc5",
"v2.11.0-rc4",
"v2.11.0-rc3",
"v2.11.0-rc2",
"v2.11.0-rc1",
"v2.11.0-rc0",
"v2.10.0",
"v2.10.0-rc4",
"v2.10.0-rc3",
"v2.10.0-rc2",
"v2.10.0-rc1",
"v2.9.0",
"v2.10.0-rc0",
"v2.9.0-rc5",
"v2.9.0-rc4",
"v2.9.0-rc3",
"v2.9.0-rc2",
"v2.9.0-rc1",
"v2.8.0",
"v2.9.0-rc0",
"v2.8.0-rc4",
"v2.8.0-rc3",
"v2.8.0-rc2",
"v2.8.0-rc1",
"v2.8.0-rc0",
"v2.7.0",
"v2.7.0-rc5",
"v2.7.0-rc4",
"v2.7.0-rc3",
"v2.7.0-rc2",
"v2.6.0",
"v2.7.0-rc1",
"v2.7.0-rc0",
"v2.6.0-rc5",
"v2.6.0-rc4",
"v2.6.0-rc3",
"v2.6.0-rc2",
"v2.6.0-rc1",
"v2.6.0-rc0",
"v2.5.0",
"v2.5.0-rc4",
"v2.5.0-rc3",
"v2.5.0-rc2",
"v2.5.0-rc1",
"v2.5.0-rc0",
"v2.4.0",
"v2.4.0-rc4",
"v2.4.0-rc3",
"v2.3.0",
"v2.4.0-rc2",
"v2.4.0-rc1",
"v2.4.0-rc0",
"v2.3.0-rc4",
"v2.3.0-rc3",
"v2.3.0-rc2",
"v2.3.0-rc1",
"v2.3.0-rc0",
"v2.2.0",
"v2.2.0-rc3",
"v2.2.0-rc5",
"v2.2.0-rc4",
"v2.2.0-rc2",
"v2.2.0-rc1",
"v2.2.0-rc0",
"v2.1.0",
"v2.1.0-rc5",
"v2.1.0-rc4",
"v2.1.0-rc2",
"v2.1.0-rc3",
"v2.0.0",
"v2.1.0-rc1",
"v2.1.0-rc0",
"v2.0.0-rc3",
"v2.0.0-rc2",
"v2.0.0-rc1",
"v2.0.0-rc0",
"v1.7.0",
"v1.7.0-rc2",
"v1.7.0-rc1",
"v1.7.0-rc0",
"v1.6.0",
"v1.6.0-rc3",
"v1.6.0-rc2",
"v1.6.0-rc1",
"v1.6.0-rc0",
"v1.5.0",
"v1.5.0-rc3",
"v1.5.0-rc2",
"v1.5.0-rc1",
"v1.5.0-rc0",
"v1.4.0",
"v1.4.0-rc2",
"v1.4.0-rc1",
"v1.4.0-rc0",
"v1.3.0",
"v1.3.0-rc2",
"v1.3.0-rc1",
"v1.3.0-rc0",
"v1.2.0",
"v1.2.0-rc3",
"v1.2.0-rc2",
"v1.2.0-rc1",
"v1.2.0-rc0",
"v1.1.0",
"v1.1.0-rc4",
"v1.1.0-rc3",
"v1.1.0-rc2",
"v1.1-rc2",
"v1.1-rc1",
"v1.1-rc0",
"v1.0",
"v1.0-rc4",
"v1.0-rc3",
"v1.0-rc2",
"v1.0-rc1",
"v1.0-rc0",
"v0.14.0-rc0",
"v0.13.0-rc0",
"v0.12.0-rc0",
"v0.11.0-rc0",
"v0.5.0",
"v0.4.4",
"v0.4.3",
"v0.4.2",
"v0.4.1",
"v0.4.0",
"v0.3.0",
"v0.2.0",
"v0.1.6",
"v0.1.5",
"v0.1.4",
"v0.1.3",
"v0.1.1",
"v0.1.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2019-12928.json"
}
},
{
"ranges": [
{
"repo": "https://gitlab.com/qemu-project/qemu",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "131b9a05705636086699df15d4a6d328bb2585e8"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:qemu:qemu:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.0.0"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v4.0.0",
"v4.0.0-rc4",
"v4.0.0-rc3",
"v4.0.0-rc2",
"v4.0.0-rc1",
"v3.1.0",
"v4.0.0-rc0",
"v3.0.0",
"v3.1.0-rc5",
"v3.1.0-rc4",
"v3.1.0-rc3",
"v3.1.0-rc2",
"v3.1.0-rc1",
"v3.1.0-rc0",
"v3.0.0-rc4",
"v3.0.0-rc3",
"v3.0.0-rc2",
"v3.0.0-rc1",
"v3.0.0-rc0",
"v2.12.0",
"v2.12.0-rc4",
"v2.12.0-rc3",
"v2.12.0-rc2",
"v2.12.0-rc1",
"v2.12.0-rc0",
"v2.11.0",
"v2.11.0-rc5",
"v2.11.0-rc4",
"v2.11.0-rc3",
"v2.11.0-rc2",
"v2.11.0-rc1",
"v2.11.0-rc0",
"v2.10.0",
"v2.10.0-rc4",
"v2.10.0-rc3",
"v2.10.0-rc2",
"v2.10.0-rc1",
"v2.9.0",
"v2.10.0-rc0",
"v2.9.0-rc5",
"v2.9.0-rc4",
"v2.9.0-rc3",
"v2.9.0-rc2",
"v2.9.0-rc1",
"v2.8.0",
"v2.9.0-rc0",
"v2.8.0-rc4",
"v2.8.0-rc3",
"v2.8.0-rc2",
"v2.8.0-rc1",
"v2.8.0-rc0",
"v2.7.0",
"v2.7.0-rc5",
"v2.7.0-rc4",
"v2.7.0-rc3",
"v2.7.0-rc2",
"v2.6.0",
"v2.7.0-rc1",
"v2.7.0-rc0",
"v2.6.0-rc5",
"v2.6.0-rc4",
"v2.6.0-rc3",
"v2.6.0-rc2",
"v2.6.0-rc1",
"v2.6.0-rc0",
"v2.5.0",
"v2.5.0-rc4",
"v2.5.0-rc3",
"v2.5.0-rc2",
"v2.5.0-rc1",
"v2.5.0-rc0",
"v2.4.0",
"v2.4.0-rc4",
"v2.4.0-rc3",
"v2.3.0",
"v2.4.0-rc2",
"v2.4.0-rc1",
"v2.4.0-rc0",
"v2.3.0-rc4",
"v2.3.0-rc3",
"v2.3.0-rc2",
"v2.3.0-rc1",
"v2.3.0-rc0",
"v2.2.0",
"v2.2.0-rc3",
"v2.2.0-rc5",
"v2.2.0-rc4",
"v2.2.0-rc2",
"v2.2.0-rc1",
"v2.2.0-rc0",
"v2.1.0",
"v2.1.0-rc5",
"v2.1.0-rc4",
"v2.1.0-rc2",
"v2.1.0-rc3",
"v2.0.0",
"v2.1.0-rc1",
"v2.1.0-rc0",
"v2.0.0-rc3",
"v2.0.0-rc2",
"v2.0.0-rc1",
"v2.0.0-rc0",
"v1.7.0",
"v1.7.0-rc2",
"v1.7.0-rc1",
"v1.7.0-rc0",
"v1.6.0",
"v1.6.0-rc3",
"v1.6.0-rc2",
"v1.6.0-rc1",
"v1.6.0-rc0",
"v1.5.0",
"v1.5.0-rc3",
"v1.5.0-rc2",
"v1.5.0-rc1",
"v1.5.0-rc0",
"v1.4.0",
"v1.4.0-rc2",
"v1.4.0-rc1",
"v1.4.0-rc0",
"v1.3.0",
"v1.3.0-rc2",
"v1.3.0-rc1",
"v1.3.0-rc0",
"v1.2.0",
"v1.2.0-rc3",
"v1.2.0-rc2",
"v1.2.0-rc1",
"v1.2.0-rc0",
"v1.1.0",
"v1.1.0-rc4",
"v1.1.0-rc3",
"v1.1.0-rc2",
"v1.1-rc2",
"v1.1-rc1",
"v1.1-rc0",
"v1.0",
"v1.0-rc4",
"v1.0-rc3",
"v1.0-rc2",
"v1.0-rc1",
"v1.0-rc0",
"v0.14.0-rc0",
"v0.13.0-rc0",
"v0.12.0-rc0",
"v0.11.0-rc0",
"v0.5.0",
"v0.4.4",
"v0.4.3",
"v0.4.2",
"v0.4.1",
"v0.4.0",
"v0.3.0",
"v0.2.0",
"v0.1.6",
"v0.1.5",
"v0.1.4",
"v0.1.3",
"v0.1.1",
"v0.1.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2019-12928.json"
}
}
],
"modified": "2026-10-24T10:30:20.839008026Z",
"provider": "osv",
"references": [
"https://fakhrizulkifli.github.io/posts/2019/06/05/CVE-2019-12928/"
],
"provider_metadata": {}
},
"related_cves": [
{
"value": "CVE-2019-12928",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 430352,
"published_at": "2019-06-24T11:15:09.367+00:00"
}