Description
There is an issue on grub2 before version 2.06 at function
read_section_as_string(). It expects a font name to be at max UINT32_MAX -
1 length in bytes but it doesn't verify it before proceed with buffer
allocation to read the value from the font value. An attacker may leverage
that by crafting a malicious font file which has a name with UINT32_MAX,
leading to read_section_as_string() to an arithmetic overflow, zero-sized
allocation and further heap-based buffer overflow.
Ubuntu-Description
Chris Coulson discovered that multiple integer overflows existed in GRUB2
when handling certain filesystems or font files, leading to heap-based
buffer overflows. A local attacker could use these to execute arbitrary
code and bypass UEFI Secure Boot restrictions.
Notes
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 |
Package
Upstream: | needs-triage
|
Ubuntu 18.04 LTS: | released
(2.02-2ubuntu8.16)
|
Ubuntu 20.04 LTS: | released
(2.04-1ubuntu26.1)
|
Ubuntu 16.04 ESM: | released
(2.02~beta2-36ubuntu3.26)
|
Ubuntu 14.04 ESM: | released
(2.02~beta2-9ubuntu1.20)
|
Patches:
Package
Upstream: | needs-triage
|
Ubuntu 18.04 LTS: | released
(1.93.18)
|
Ubuntu 20.04 LTS: | released
(1.142.3)
|
Ubuntu 16.04 ESM: | released
(1.66.26)
|
Ubuntu 14.04 ESM: | released
(1.34.22)
|
Patches:
Updated: 2022-04-13 14:09:04 UTC (commit f411bd370d482ef4385c4e751d121a4055fbc009)