GRUB2 boot loader maintainers fixed hundreds of flaws

Pierluigi Paganini March 04, 2021

Now maintainers at the GRUB project have released security updates to address more than 100 vulnerabilities.

GRUB2 (the GRand Unified Bootloader version 2) is a replacement for the original GRUB Legacy boot loader, which is now referred to as “GRUB Legacy”. The mechanism is designed to protect the boot process from attacks.

In July 2020, researchers at the cybersecurity firmware Eclypsium disclosed a buffer overflow vulnerability, tracked as CVE-2020-10713 and dubbed BootHole, which can be exploited by attackers to install persistent and stealthy malware.

Now maintainers at the GRUB project have released security updates to address more than 100 vulnerabilities.

“The BootHole vulnerability [announced last year encouraged many people to take a closer look at the security of boot process in general and the GRUB bootloader in particular. Due to that, during past few months we were getting reports of, and also discovering various security flaws in the GRUB ourselves.” wrote GRUB maintainer Daniel Kiper on GRUB’s mailing list. “You can find the list of most severe ones which got CVEs assigned at the end of this message. The patch bundle fixing all these issues in the upstream GRUB contains 117 patches.”

The GRUB project maintainers released a total of 117 upstream code patches for the above flaws. 

Below the list of GRUB2 vulnerabilities shared in the newsletter:

  • CVE-2020-14372 grub2: The acpi command allows privileged user to load crafted ACPI tables when Secure Boot is enabled CWE-184 (CVSS 7.5) – Reported by Máté Kukri.
  • CVE-2020-25632 grub2: Use-after-free in rmmod command CWE-416 (CVSS 7.5) – Reported by Chris Coulson (Canonical).
  • CVE-2020-25647 grub2: Out-of-bound write in grub_usb_device_initialize() CWE-787 (CVSS 6.9). – Reported-by: Joseph Tartaro (IOActive) and Ilja van Sprundel (IOActive).
  • CVE-2020-27749 grub2: Stack buffer overflow in grub_parser_split_cmdline CWE-121(CVSS 7.5) – Reported-by: Chris Coulson (Canonical).
  • CVE-2020-27779 grub2: The cutmem command allows privileged user to remove memory regions when Secure Boot is enabled CWE-285 (CVSS 7.5) – Reported-by: Teddy Reed.
  • CVE-2021-3418 – grub2: GRUB 2.05 reintroduced CVE-2020-15705 CWE-281 (CVSS 6.4) – Reported-by: Dimitri John Ledkov (Canonical).
  • CVE-2021-20225 grub2: Heap out-of-bounds write in short form option parser CWE-787 (CVSS 7.5) – Reported-by: Daniel Axtens (IBM).
  • CVE-2021-20233 grub2: Heap out-of-bound write due to mis-calculation of space required for quoting. (CVSS 7.5) – Reported-by: Daniel Axtens (IBM)

“In addition, we have been working on a generation number based revocation scheme termed UEFI Secure Boot Advanced Targeting (SBAT) [3]. This will require an UEFI dbx release and resigning all the artifacts — shim, GRUB, kernel, etc. — needed to boot the system. This is the same as we did for the BootHole series of vulnerabilities, but the SBAT work is designed to make this process much less painful in the future.” Kiper added. “Details of exactly what needs updating will be provided by the respective distros and vendors when updates become available. Here [4] we are listing at least some links to the messaging known at the time of this posting.”

Major Linux distros, including DebianRedHat, and Ubuntu, released security advisories for the above vulnerabilities.

“Details of exactly what needs updating will be provided by the respective distros and vendors when updates become available.” concluded Kiper.

“Full mitigation against all the CVEs will require an updated UEFI revocation list (dbx) which, in at least some cases, will not allow Secure Boot with today’s boot artifacts.”

If you want to receive the weekly Security Affairs Newsletter for free subscribe here.

Follow me on Twitter: @securityaffairs and Facebook

[adrotate banner=”9″][adrotate banner=”12″]

Pierluigi Paganini

(SecurityAffairs – hacking, GRUB2)

[adrotate banner=”5″]

[adrotate banner=”13″]



you might also like

leave a comment