qmpguestfileread in qga/commands-posix.c and qga/commands-win32.c in qemu-ga (aka QEMU Guest Agent) in QEMU 2.12.50 has an integer overflow causing a gmalloc0() call to trigger a segmentation fault when trying to allocate a large memory chunk. The vulnerability can be exploited by sending a crafted QMP command (including guest-file-read with a large count value) to the agent via the listening socket.
{
"versions": [
{
"introduced": "0"
},
{
"last_affected": "8.0"
},
{
"introduced": "0"
},
{
"last_affected": "9.0"
}
]
}[
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "2.12.50"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "14.04"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "16.04"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "18.04"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "18.10"
}
]
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2018-12617.json"