CVE-2015-8370
High · 7.4CVSS
7.4
EPSS
1.1%
Published
Dec 16, 2015
CISA due date
—
Cloudanix analysis
A flaw in older boot software lets someone standing next to a computer bypass its startup password or damage the hard drive by pressing the backspace key many times.
- Exploitation
- Physical Access
- Attacker needs
- Physical Access
- Complexity
- High
- Impact
- Full Compromise
- Component
- Firmware
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Integer underflows in grub_username_get and grub_password_get functions cause off-by-two and out-of-bounds memory overwrites when processing excessive backspace characters during authentication prompts.
Why it matters to the business
Attackers with physical access can bypass boot authentication to read or modify data, or corrupt storage on systems using vulnerable bootloaders, increasing risk of unauthorized access or system downtime.
How an attack unfolds
An attacker with physical proximity enters repeated backspace characters at the GRUB username or password prompt, triggering integer underflow that corrupts memory and allows bypassing authentication checks or inducing denial of service.
How to fix it
Update GRUB2 to a version beyond 2.02 that resolves the integer underflow conditions in auth.c and crypto.c; rebuild and reinstall bootloader images on affected systems.
How to confirm the fix worked
Confirm GRUB2 version is newer than 2.02 and test authentication prompts with backspace sequences to verify no memory corruption occurs; review bootloader build logs for patched sources.
Typical attack path
- Gain physical access to the target system
- Interrupt normal boot to reach GRUB authentication prompt
- Input crafted sequence of backspace characters
- Trigger memory corruption to bypass authentication or corrupt disk structures
- Escalate to data access or denial of service
How to detect it
Review system boot logs and console history for anomalous authentication attempts or repeated backspace patterns; examine memory dumps or crash artifacts around boot time for signs of overwrite in GRUB modules.
What your security team should do
- Prioritize patching GRUB2 on all systems with physical access exposure
- Restrict physical access to servers and workstations using boot authentication
- Monitor for new GRUB2 releases and test in isolated environments before deployment
- Document bootloader versions across the fleet for future validation
The record
Multiple integer underflows in Grub2 1.98 through 2.02 allow physically proximate attackers to bypass authentication, obtain sensitive information, or cause a denial of service (disk corruption) via backspace characters in the (1) grub_username_get function in grub-core/normal/auth.c or the (2) grub_password_get function in lib/crypto.c, which trigger an "Off-by-two" or "Out of bounds overwrite" memory error.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | grub2 | 0 | 2.02~beta2-33 |
| Debian:12 | grub2 | 0 | 2.02~beta2-33 |
| Debian:13 | grub2 | 0 | 2.02~beta2-33 |
| Debian:6.0 | grub2 | 0 | 1.98+20100804-14+squeeze2 |
| Debian:7 | grub2 | 0 | 1.99-27+deb7u3 |
| Debian:8 | grub2 | 0 | 2.02~beta2-22+deb8u1 |
| Mageia:5 | grub2 | 0 | 2.02-0.git9752.18.3.mga5 |
| Red Hat:enterprise_linux:7::client | grub2 | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::client | grub2-debuginfo | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::client | grub2-efi | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::client | grub2-efi-modules | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::client | grub2-tools | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::computenode | grub2 | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::computenode | grub2-debuginfo | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::computenode | grub2-efi | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::computenode | grub2-efi-modules | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::computenode | grub2-tools | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::server | grub2 | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::server | grub2-debuginfo | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::server | grub2-efi | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::server | grub2-efi-modules | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::server | grub2-tools | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::workstation | grub2 | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::workstation | grub2-debuginfo | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::workstation | grub2-efi | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::workstation | grub2-efi-modules | 0 | 1:2.02-0.33.el7_2 |
| Red Hat:enterprise_linux:7::workstation | grub2-tools | 0 | 1:2.02-0.33.el7_2 |
| SUSE:Linux Enterprise Desktop 11 SP3 | grub2 | 0 | 2.00-0.49.2 |
| SUSE:Linux Enterprise Desktop 11 SP4 | grub2 | 0 | 2.00-0.54.2 |
| SUSE:Linux Enterprise Desktop 12 | grub2 | 0 | 2.02~beta2-56.9.4 |
| SUSE:Linux Enterprise Desktop 12 SP1 | grub2 | 0 | 2.02~beta2-73.3 |
| SUSE:Linux Enterprise Server 11 SP3 | grub2 | 0 | 2.00-0.49.2 |
| SUSE:Linux Enterprise Server 11 SP3-TERADATA | grub2 | 0 | 2.00-0.49.2 |
| SUSE:Linux Enterprise Server 11 SP4 | grub2 | 0 | 2.00-0.54.2 |
| SUSE:Linux Enterprise Server 12 | grub2 | 0 | 2.02~beta2-56.9.4 |
| SUSE:Linux Enterprise Server 12 SP1 | grub2 | 0 | 2.02~beta2-73.3 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP3 | grub2 | 0 | 2.00-0.49.2 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | grub2 | 0 | 2.00-0.54.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | grub2 | 0 | 2.02~beta2-56.9.4 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | grub2 | 0 | 2.02~beta2-73.3 |
| Ubuntu:14.04:LTS | grub2 | 0 | 2.02~beta2-9ubuntu1.6 |
| openSUSE:Tumbleweed | grub2 | 0 | 2.02~beta3-15.1 |
Related vulnerabilities
- CVE-2024-56738 GNU GRUB (aka GRUB2) through 2.12 does not use a constant-time algorithm for… Also affects grub2
- CVE-2024-56737 GNU GRUB (aka GRUB2) through 2.12 has a heap-based buffer overflow in fs/hfs.c via… Also affects grub2
- CVE-2024-49504 grub2 allowed attackers with access to the grub shell to access files on the encrypted… Also affects grub2
- CVE-2023-4692 An out-of-bounds write flaw was found in grub2's NTFS filesystem driver. Also affects grub2
- CVE-2023-4693 An out-of-bounds read flaw was found on grub2's NTFS filesystem driver. Also affects grub2
- CVE-2022-28736 There's a use-after-free vulnerability in grub_cmd_chainloader() function; The… Also affects grub2
- CVE-2022-28735 The GRUB2's shim_lock verifier allows non-kernel files to be loaded on shim-powered… Also affects grub2
- CVE-2022-28733 Integer underflow in grub_net_recv_ip4_packets; A malicious crafted IP packet can lead to… Also affects grub2