CVE-2020-15707

Published: 29 July 2020

Integer overflows were discovered in the functions grub_cmd_initrd and grub_initrd_init in the efilinux component of GRUB2, as shipped in Debian, Red Hat, and Ubuntu (the functionality is not included in GRUB2 upstream), leading to a heap-based buffer overflow. These could be triggered by an extremely large number of arguments to the initrd command on 32-bit architectures, or a crafted filesystem with very large files on any architecture. An attacker could use this to execute arbitrary code and bypass UEFI Secure Boot restrictions. This issue affects GRUB2 version 2.04 and prior versions.

From the Ubuntu security team

Colin Watson and Chris Coulson discovered that an integer overflow existed in GRUB2 when handling the initrd command, leading to a heap-based buffer overflow. A local attacker could use this to execute arbitrary code and bypass UEFI Secure Boot restrictions.

Priority

Medium

CVSS 3 base score: 5.7

Status

Package Release Status
grub2
Launchpad, Ubuntu, Debian
Upstream Needs triage

Ubuntu 21.04 (Hirsute Hippo) Not vulnerable
(2.04-1ubuntu26.1)
Ubuntu 20.04 LTS (Focal Fossa)
Released (2.04-1ubuntu26.1)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (2.02-2ubuntu8.16)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (2.02~beta2-36ubuntu3.26)
Ubuntu 14.04 ESM (Trusty Tahr)
Released (2.02~beta2-9ubuntu1.20)
grub2-signed
Launchpad, Ubuntu, Debian
Upstream Does not exist

Ubuntu 21.04 (Hirsute Hippo) Not vulnerable
(1.147)
Ubuntu 20.04 LTS (Focal Fossa)
Released (1.142.3)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (1.93.18)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (1.66.26)
Ubuntu 14.04 ESM (Trusty Tahr)
Released (1.34.22)

Notes

AuthorNote
sbeattie
efilinux: Fix integer overflows in grub_cmd_initrd e961f8f8cdb25245900dc0884047e856346035b3 Title: grub2: integer overflows in efilinux grub_cmd_initrd and grub_initrd_init leads to heap based buffer overflow code is not upstream in grub2 but carried as part of patches by Ubuntu, Debian, Red Hat and possibly others.
amurray
grub2-signed is not supported in Ubuntu 12.04 ESM (precise/esm) and so marking the priority for grub2 in this release as low

References