CVE-2021-20221 Memory corruption in qemu
A privileged guest user can crash the QEMU host process via an out-of-bounds heap buffer access in the ARM Generic Interrupt Controller emulator.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-20221?
CVE-2021-20221 is a medium-severity memory corruption vulnerability in Debian Debian Linux, published on 13 May 2021. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
An out-of-bounds heap buffer access issue was found in the ARM Generic Interrupt Controller emulator of QEMU up to and including qemu 4.2.0on aarch64 platform. The issue occurs because while writing an interrupt ID to the controller memory area, it is not masked to be 4 bits wide. It may lead to the said issue while updating controller state fields and their subsequent processing. A privileged guest user may use this flaw to crash the QEMU process on the host resulting in DoS scenario.
Which versions are affected by CVE-2021-20221?
It affects 3 products.
Linux distribution packages (40)
SLOF Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:20200717-1.gite18ddad8.module+el8.3.0+7638+07cf13d2 |
hivex Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.3.18-20.module+el8.3.0+6124+819ee737 |
hivex-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.3.18-20.module+el8.3.0+6124+819ee737 |
hivex-debugsource Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.3.18-20.module+el8.3.0+6124+819ee737 |
hivex-devel Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.3.18-20.module+el8.3.0+6124+819ee737 |
libguestfs Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-bash-completion Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-debugsource Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-devel Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-gfs2 Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-gobject Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-gobject-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-gobject-devel Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-inspect-icons Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-java Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-java-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-java-devel Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-javadoc Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-man-pages-ja Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-man-pages-uk Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-rescue Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-rsync Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-tools Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-tools-c Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-tools-c-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libguestfs-winsupport Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:8.2-1.module+el8.3.0+6124+819ee737 |
libguestfs-xfs Red Hat:advanced_virtualization:8.3::el8 | All versions | 1:1.42.0-2.module+el8.3.0+6798+ad6e66be |
libiscsi Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.18.0-8.module+el8.3.0+6124+819ee737 |
libiscsi-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.18.0-8.module+el8.3.0+6124+819ee737 |
libiscsi-debugsource Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.18.0-8.module+el8.3.0+6124+819ee737 |
libiscsi-devel Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.18.0-8.module+el8.3.0+6124+819ee737 |
libiscsi-utils Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.18.0-8.module+el8.3.0+6124+819ee737 |
libiscsi-utils-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.18.0-8.module+el8.3.0+6124+819ee737 |
libnbd Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.4.0-2.module+el8.3.0+7998+6ff5e5ab |
libnbd-bash-completion Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.4.0-2.module+el8.3.0+7998+6ff5e5ab |
libnbd-debuginfo Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.4.0-2.module+el8.3.0+7998+6ff5e5ab |
libnbd-debugsource Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.4.0-2.module+el8.3.0+7998+6ff5e5ab |
libnbd-devel Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:1.4.0-2.module+el8.3.0+7998+6ff5e5ab |
libtpms Red Hat:advanced_virtualization:8.3::el8 | All versions | 0:0.7.4-1.20201106git2452a24dab.module+el8.3.1+8772+a3fdeccd |
Products include Debian Debian Linux, Qemu Qemu, Redhat Enterprise Linux.
How do I fix CVE-2021-20221?
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-2021-20221 being exploited?
There is no known exploitation of CVE-2021-20221 in the wild and no public exploit code.
Other vulnerabilities in Debian Debian Linux
Sources
Also known as DEBIAN-CVE-2021-20221, GHSA-3f6w-864h-4prm, RHSA-2021:1125, UBUNTU-CVE-2021-20221.