CVE-2019-14821 Memory corruption in Kernel
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::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-abi-whitelists Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug-debuginfo Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug-devel Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo-common-i686 Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo-common-x86_64 Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-devel Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-doc Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-firmware Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel-headers Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
perf Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
perf-debuginfo Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
python-perf Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
python-perf-debuginfo Red Hat:enterprise_linux:6::client | All versions | 0:2.6.32-754.25.1.el6 |
kernel Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-abi-whitelists Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug-debuginfo Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug-devel Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo-common-i686 Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo-common-x86_64 Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-devel Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-doc Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-firmware Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel-headers Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
perf Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
perf-debuginfo Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
python-perf Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
python-perf-debuginfo Red Hat:enterprise_linux:6::computenode | All versions | 0:2.6.32-754.25.1.el6 |
kernel Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-abi-whitelists Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-bootwrapper Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug-debuginfo Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debug-devel Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo Red Hat:enterprise_linux:6::server | All versions | 0:2.6.32-754.25.1.el6 |
kernel-debuginfo-common-i686 Red Hat:enterprise_linux:6::server | All versions | 0: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.
Other vulnerabilities in Canonical Ubuntu Linux
Sources
Also known as DEBIAN-CVE-2019-14821, GHSA-5xg6-r8mx-769h, RHSA-2019:4256, UBUNTU-CVE-2019-14821.