CVE-2019-14821 Memory corruption in Kernel

High 7.5 Published Updated

An out-of-bounds write in the Linux kernel's KVM hypervisor allows local attackers to crash the system or escalate privileges.

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-14821?

CVE-2019-14821 is a high-severity memory corruption vulnerability in Canonical Ubuntu Linux, published on 19 Sep 2019. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

An out-of-bounds access issue was found in the Linux kernel, all versions through 5.3, in the way Linux kernel's KVM hypervisor implements the Coalesced MMIO write operation. It operates on an MMIO ring buffer 'struct kvm_coalesced_mmio' object, wherein write indices 'ring->first' and 'ring->last' value could be supplied by a host user-space process. An unprivileged host user or process with access to '/dev/kvm' device could use this flaw to crash the host kernel, resulting in a denial of service or potentially escalating privileges on the system.

Weakness: CWE-787

Which versions are affected by CVE-2019-14821?

It affects 28 products.

Linux distribution packages (40)
kernel Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-abi-whitelists Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-debug Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-debug-debuginfo Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-debug-devel Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo-common-i686 Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo-common-x86_64 Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-devel Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-doc Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-firmware Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel-headers Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
perf Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
perf-debuginfo Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
python-perf Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
python-perf-debuginfo Red Hat:enterprise_linux:6::clientAll versions0:2.6.32-754.25.1.el6
kernel Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-abi-whitelists Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-debug Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-debug-debuginfo Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-debug-devel Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo-common-i686 Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo-common-x86_64 Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-devel Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-doc Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-firmware Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel-headers Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
perf Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
perf-debuginfo Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
python-perf Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
python-perf-debuginfo Red Hat:enterprise_linux:6::computenodeAll versions0:2.6.32-754.25.1.el6
kernel Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-abi-whitelists Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-bootwrapper Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-debug Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-debug-debuginfo Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-debug-devel Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6
kernel-debuginfo-common-i686 Red Hat:enterprise_linux:6::serverAll versions0:2.6.32-754.25.1.el6

Products include Canonical Ubuntu Linux, Debian Debian Linux, Fedoraproject Fedora, Linux kernel, Netapp Aff A700s Firmware, Netapp Data Availability Services and 22 more.

How do I fix CVE-2019-14821?

Apply the vendor's patch.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2019-14821 being exploited?

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

All Canonical Ubuntu Linux vulnerabilities

Sources

Also known as DEBIAN-CVE-2019-14821, GHSA-5xg6-r8mx-769h, RHSA-2019:4256, UBUNTU-CVE-2019-14821.

Is CVE-2019-14821 in your software?

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

Check your SBOMs for free