Reportedly, a VM escape vulnerability exists in QEMU – an open source hardware virtualization emulator. The flaw, upon exploit, could allow an attacker to attack the host QEMU process resulting in a system crash or to execute arbitrary codes.
QEMU VM Escape Vulnerability
Security researcher Vishnu Dev from Team bi0S discovered a security flaw in Quick Emulator (QEMU). QEMU is an open source virtual machine monitor performing hardware virtualization.
Describing his findings in a blog post, the researcher stated that he found a heap buffer overflow vulnerability that could allow an attacker to conduct a virtual machine escape and attack the QEMU host system. The bug existed in the packet reassembly in SLiRP. As described by the researcher,
I exploited… a pointer miscalculation in network backend of QEMU. The bug is triggered when large IPv4 fragmented packets are reassembled for processing.
By exploiting the vulnerability, an attacker could execute codes at the target QEMU’s privilege level, or create a denial of service leading to a system crash. Technical details of the exploit are available in the researcher’s blog post.
Patch Rolled Out
The researcher noticed this vulnerability during a code audit. It has received the CVE ID CVE-2019-14378. RedHat has also addressed this vulnerability as evident from their advisory which states.
“A heap buffer overflow issue was found in the SLiRP networking implementation of the QEMU emulator. This flaw occurs in the ip_reass() routine while reassembling incoming packets if the first fragment is bigger than the m->m_dat[] buffer. An attacker could use this flaw to crash the QEMU process on the host, resulting in a Denial of Service or potentially executing arbitrary code with privileges of the QEMU process.
While there are no indications of active exploitation of the bug, fortunately, patches are also available. Since patching may require restarting the virtual machines, some downtime may arise as the respective systems update.
Let us know your thoughts in the comments.