CVE-2019-10168 Command injection in libvirt

High 8.8 Published Updated

Read-only clients can execute arbitrary binaries with libvirtd privileges by specifying a malicious emulator path in hypervisor CPU comparison APIs.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2019-10168?

CVE-2019-10168 is a high-severity command injection vulnerability in Redhat Enterprise Linux, published on 2 Aug 2019. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

The virConnectBaselineHypervisorCPU() and virConnectCompareHypervisorCPU() libvirt APIs, 4.x.x before 4.10.1 and 5.x.x before 5.4.1, accept an "emulator" argument to specify the program providing emulation for a domain. Since v1.2.19, libvirt will execute that program to probe the domain's capabilities. Read-only clients could specify an arbitrary path for this argument, causing libvirtd to execute a crafted executable with its own privileges.

Weakness: CWE-22, CWE-284, CWE-250

Which versions are affected by CVE-2019-10168?

It affects 9 products.

Products include Redhat Enterprise Linux, Redhat Enterprise Linux Desktop, Redhat Enterprise Linux Server, Redhat Enterprise Linux Server Aus, Redhat Enterprise Linux Server Eus, Redhat Enterprise Linux Server Tus and 3 more.

How do I fix CVE-2019-10168?

Upgrade to a fixed version.

Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.

Is CVE-2019-10168 being exploited?

There is no known exploitation of CVE-2019-10168 in the wild and no public exploit code.

All Redhat Enterprise Linux vulnerabilities

Sources

Also known as ALPINE-CVE-2019-10168, DEBIAN-CVE-2019-10168, GHSA-v3hc-v42h-rp66.

Is CVE-2019-10168 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free