CVE-2020-15707 | GRUB2 contained integer overflows when handling the initrd command, leading to a heap-based buffer overflow.

Exp

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.

Published: 2020-07-29 Last update: 2026-06-16 Assigner: [email protected] Source: [email protected]

Conclusion & alert: CVE-2020-15707 is rated High Exploit Risk (64.7/100): CVSS Medium severity, with medium exploitation likelihood (EPSS 1.59%). Core evidence: 1 public exploit reference(s) are indexed (Exploit-DB). EPSS rose +1.55% over the last day, indicating growing attacker interest. Mandatory action: Public exploits are available—assess exposure, apply mitigations, and prioritize patching.

Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.

Public exploit references (Exploit-DB) for CVE-2020-15707

EDB-ID Source Kind Published Link
nvd_ref exploit_tag Exploit-DB ↗

Exploit prediction scoring system (EPSS) score for CVE-2020-15707

EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).

# Date Old EPSS score New EPSS score Delta (New - Old)
1 2026-06-15 0.04% 1.59% +1.55%
2 2025-11-21 0.38% 0.04% -0.34%
3 2025-11-18 0.38%

Full EPSS history (12 records total)

Common vulnerability scoring system (CVSS) metrics for CVE-2020-15707

CVSS metrics for this CVE.

Base score Version Severity Vector Exploitability Impact Score source
5.7 3.1 MEDIUM
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:H/A:H Click to expand
Attack vector (AV:L)
They already need access on the box, or another person has to do something wrong; it’s not a remote drive-by.
Attack complexity (AC:H)
Even with access, the exploit needs extra luck, timing, or a fussy environment to actually work.
Privileges required (PR:H)
They need powerful rights—admin, root, or similar—before this pays off.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:N)
Doesn’t really leak secrets in a meaningful way.
Integrity (I:H)
They could widely tamper with or forge data—trust in the data is badly hurt.
Availability (A:H)
Could take the service down hard or make it unusable for people who depend on it.
0.5 5.2 [email protected]
6.4 3.1 MEDIUM
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H Click to expand
Attack vector (AV:L)
They already need access on the box, or another person has to do something wrong; it’s not a remote drive-by.
Attack complexity (AC:H)
Even with access, the exploit needs extra luck, timing, or a fussy environment to actually work.
Privileges required (PR:H)
They need powerful rights—admin, root, or similar—before this pays off.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:H)
They could widely tamper with or forge data—trust in the data is badly hurt.
Availability (A:H)
Could take the service down hard or make it unusable for people who depend on it.
0.5 5.9 [email protected]
4.4 2.0 MEDIUM
AV:L/AC:M/Au:N/C:P/I:P/A:P Click to expand
Access vector (AV:L)
Requires local access to the target system.
Access complexity (AC:M)
Exploitation needs some favorable conditions, but not exceptional ones.
Authentication (AU:N)
No authentication is required.
Confidentiality impact (C:P)
Partial confidentiality impact.
Integrity impact (I:P)
Partial integrity impact.
Availability impact (A:P)
Partial availability impact.
3.4 6.4 [email protected]

Weakness enumeration for CVE-2020-15707

OS Trackers for CVE-2020-15707

vendor priority summary link
alpine medium CVE-2020-15707: 1 source package rows (grub); 7 state rows across 7 repos (3.17-main, 3.18-main, 3.19-main, 3.20-main, 3.21-main, 3.22-main, edge-main); fixed 7, open 0. https://security.alpinelinux.org/vuln/CVE-2020-15707
debian not yet assigned CVE-2020-15707 not yet assigned priority: Debian including 1 source packages (grub2), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 5. https://security-tracker.debian.org/tracker/CVE-2020-15707
gentoo normal CVE-2020-15707: 1 GLSA(s) (202104-05), 1 atom(s) (sys-devel/grub); latest impact normal. https://bugs.gentoo.org/buglist.cgi?quicksearch=CVE-2020-15707
redhat medium https://access.redhat.com/security/cve/CVE-2020-15707
ubuntu medium CVE-2020-15707 medium priority: Ubuntu including 3 source packages (grub2, grub2-signed, grub2-unsigned), 43 status rows across 15 suites (bionic, focal, groovy, hirsute, jammy, kinetic, lunar, mantic, noble, oracular, plucky, questing, trusty, upstream, xenial): not-affected 30, released 8, needs-triage 3, DNE 1, needed 1. https://ubuntu.com/security/CVE-2020-15707

Affected software / configurations for CVE-2020-15707

Vendor Product Version Raw CPE
gnu grub2 <= 2.04 cpe:2.3:a:gnu:grub2:*:*:*:*:*:*:*:*
redhat enterprise_linux_atomic_host cpe:2.3:a:redhat:enterprise_linux_atomic_host:-:*:*:*:*:*:*:*
redhat openshift_container_platform 4.0 cpe:2.3:a:redhat:openshift_container_platform:4.0:*:*:*:*:*:*:*
redhat enterprise_linux 7.0 cpe:2.3:o:redhat:enterprise_linux:7.0:*:*:*:*:*:*:*
redhat enterprise_linux 8.0 cpe:2.3:o:redhat:enterprise_linux:8.0:*:*:*:*:*:*:*
microsoft windows_10 cpe:2.3:o:microsoft:windows_10:-:*:*:*:*:*:*:*
microsoft windows_10 1607 cpe:2.3:o:microsoft:windows_10:1607:*:*:*:*:*:*:*
microsoft windows_10 1709 cpe:2.3:o:microsoft:windows_10:1709:*:*:*:*:*:*:*
microsoft windows_10 1803 cpe:2.3:o:microsoft:windows_10:1803:*:*:*:*:*:*:*
microsoft windows_10 1809 cpe:2.3:o:microsoft:windows_10:1809:*:*:*:*:*:*:*
microsoft windows_10 1903 cpe:2.3:o:microsoft:windows_10:1903:*:*:*:*:*:*:*
microsoft windows_10 1909 cpe:2.3:o:microsoft:windows_10:1909:*:*:*:*:*:*:*
microsoft windows_10 2004 cpe:2.3:o:microsoft:windows_10:2004:*:*:*:*:*:*:*
microsoft windows_8.1 cpe:2.3:o:microsoft:windows_8.1:-:*:*:*:*:*:*:*
microsoft windows_rt_8.1 cpe:2.3:o:microsoft:windows_rt_8.1:-:*:*:*:*:*:*:*
microsoft windows_server_2012 cpe:2.3:o:microsoft:windows_server_2012:-:*:*:*:*:*:*:*
microsoft windows_server_2012 r2 cpe:2.3:o:microsoft:windows_server_2012:r2:*:*:*:*:*:*:*
microsoft windows_server_2016 cpe:2.3:o:microsoft:windows_server_2016:-:*:*:*:*:*:*:*
microsoft windows_server_2016 1903 cpe:2.3:o:microsoft:windows_server_2016:1903:*:*:*:*:*:*:*
microsoft windows_server_2016 1909 cpe:2.3:o:microsoft:windows_server_2016:1909:*:*:*:*:*:*:*
microsoft windows_server_2016 2004 cpe:2.3:o:microsoft:windows_server_2016:2004:*:*:*:*:*:*:*
microsoft windows_server_2019 cpe:2.3:o:microsoft:windows_server_2019:-:*:*:*:*:*:*:*
canonical ubuntu_linux 14.04 cpe:2.3:o:canonical:ubuntu_linux:14.04:*:*:*:esm:*:*:*
canonical ubuntu_linux 16.04 cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:esm:*:*:*
canonical ubuntu_linux 18.04 cpe:2.3:o:canonical:ubuntu_linux:18.04:*:*:*:lts:*:*:*
canonical ubuntu_linux 20.04 cpe:2.3:o:canonical:ubuntu_linux:20.04:*:*:*:lts:*:*:*
debian debian_linux 10.0 cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*
opensuse leap 15.1 cpe:2.3:o:opensuse:leap:15.1:*:*:*:*:*:*:*
opensuse leap 15.2 cpe:2.3:o:opensuse:leap:15.2:*:*:*:*:*:*:*
suse suse_linux_enterprise_server 11 cpe:2.3:o:suse:suse_linux_enterprise_server:11:*:*:*:*:*:*:*
suse suse_linux_enterprise_server 12 cpe:2.3:o:suse:suse_linux_enterprise_server:12:*:*:*:*:*:*:*
suse suse_linux_enterprise_server 15 cpe:2.3:o:suse:suse_linux_enterprise_server:15:*:*:*:*:*:*:*
netapp active_iq_unified_manager >= 9.5 cpe:2.3:a:netapp:active_iq_unified_manager:*:*:*:*:*:vmware_vsphere:*:*

References for CVE-2020-15707

URL Tags
http://lists.opensuse.org/opensuse-security-announce/2020-08/msg00016.html Mailing List Third Party Advisory
http://lists.opensuse.org/opensuse-security-announce/2020-08/msg00017.html Mailing List Third Party Advisory
http://ubuntu.com/security/notices/USN-4432-1 Third Party Advisory
http://www.openwall.com/lists/oss-security/2020/07/29/3 Mailing List Third Party Advisory
https://access.redhat.com/security/vulnerabilities/grub2bootloader Third Party Advisory
https://lists.gnu.org/archive/html/grub-devel/2020-07/msg00034.html Issue Tracking Vendor Advisory
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/ADV200011 Patch Third Party Advisory Vendor Advisory
https://security.gentoo.org/glsa/202104-05 Third Party Advisory
https://security.netapp.com/advisory/ntap-20200731-0008/ Third Party Advisory
https://usn.ubuntu.com/4432-1/ Third Party Advisory
https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/GRUB2SecureBootBypass Third Party Advisory
https://www.debian.org/security/2020-GRUB-UEFI-SecureBoot Third Party Advisory
https://www.debian.org/security/2020/dsa-4735 Third Party Advisory
https://www.eclypsium.com/2020/07/29/theres-a-hole-in-the-boot/ Exploit Third Party Advisory
https://www.openwall.com/lists/oss-security/2020/07/29/3 Mailing List Third Party Advisory
https://www.suse.com/c/suse-addresses-grub2-secure-boot-issue/ Third Party Advisory
https://www.suse.com/support/kb/doc/?id=000019673 Third Party Advisory
cvelogic Threat Intelligence