GNU Binutils
CVE-2025-11412
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconCraft malicious ELF object file
-
DeliveryPlace in build dependency or repository
-
ExploitTrigger linker invocation during build
-
InstallLoad object file into memory
-
C2Execute bfd_elf_gc_record_vtentry function
-
ExecuteRead out-of-bounds memory
-
ImpactTrigger error or memory fault
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, buffer size validation
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the following concrete conditions: (1) GNU Binutils 2.45 must be installed and in use (typically as the system linker or explicitly invoked); (2) the attacker must have local access to the system with at least standard unprivileged user privileges (PR:L per CVSS vector), sufficient to execute the linker command and provide input files; (3) a specially crafted ELF object file containing malformed virtual table entries must be processed by the linker's garbage collection mechanism, which occurs during normal linking with optimization flags enabled (not a non-default configuration, but requires the linker to process a malicious input file the attacker controls or influences). The vulnerability does NOT require elevated privileges, remote network access, user interaction beyond invoking the linker normally, or non-standard build configurations. Exploitation is limited to local attackers due to the AV:L attack vector and contingent on the linker being invoked against attacker-controlled or compromised object files. |
| Impact | Multiple signals indicate minimal real-world risk despite public POC availability. CVSS vector AV:L/AC:L/PR:L/UI:N shows local authentication requirement (PR:L), eliminating remote exploitation and requiring an attacker with at least unprivileged local access (such as a standard user account on a system running binutils). The extremely low CVSS score (1.9) and EPSS percentile (7%, equivalently 0.03% exploitation probability) strongly diverge from typical high-severity buffer overflow concerns, driven by the VA:L (availability impact: low) rating - the out-of-bounds read causes no confidentiality loss (VC:N) and no integrity impact (VI:N), suggesting it triggers a graceful error or non-critical memory fault rather than reliable code execution. No KEV listing confirms this is not actively exploited in targeted campaigns. The presence of publicly available POC code does not translate to widespread weaponization or adoption. Developers and build system administrators using Binutils 2.45 should treat this as a moderate maintenance issue rather than an emergency, particularly if they are not actively running the linker in untrusted user environments. The vulnerability is most concerning in multi-tenant or shared development systems where unprivileged users compile code. |
| Exploit ScenarioDerived | An unprivileged local user on a shared development system crafts a malicious ELF object file containing specially constructed virtual table records that trigger an out-of-bounds read when processed by the Binutils linker during a build operation. The attacker submits this file as part of a build dependency or via a compromised source code repository, causing a developer or automated build system (running with user privileges) to invoke the vulnerable linker function. The out-of-bounds read is triggered during link-time garbage collection, potentially causing the linker to crash (denial of service) or read sensitive data from adjacent memory, though real-world data exfiltration via this vector has not been demonstrated. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 29, 2026
Out-of-bounds read in GNU Binutils 2.45 linker component affects the bfd_elf_gc_record_vtentry function in bfd/elflink.c, allowing authenticated local attackers to trigger memory access violations. The CVSS score of 1.9 reflects low real-world impact (no confidentiality, integrity, or system-level damage) despite the out-of-bounds read classification, suggesting this is primarily a denial-of-service vector or development/debugging concern rather than a critical exploitation pathway. Publicly available exploit code exists, but EPSS exploitation probability remains very low at 0.03 percentile, indicating minimal real-world adoption despite public disclosure.
RemediationAI
Apply the upstream patch commit 047435dd988a3975d40c6626a8f739a0b2e154bc from the GNU Binutils Git repository (https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=047435dd988a3975d40c6626a8f739a0b2e154bc), which addresses the out-of-bounds read in bfd_elf_gc_record_vtentry. Users should upgrade to a patched version once released by their distribution (contact your Linux vendor for backported patches to version 2.45, or upgrade to Binutils 2.46 or later if available for your platform). For systems requiring immediate stability in multi-tenant environments, restrict linker invocation (the ld command and related tools) to trusted users via file system permissions or AppArmor/SELinux policies, though this may impact development workflows. Recompiling binutils from the patched source is the most reliable interim mitigation for security-critical systems; however, this adds maintenance overhead and should be balanced against the low exploitation probability (0.03 percentile EPSS).
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
GNU Binutils is the collection of binary tools including the linker (ld), assembler (as), and utilities for manipulating object files and executables. The vulnerability resides in the linker's ELF (Executable and Linkable Format) garbage collection mechanism, specifically in the bfd_elf_gc_record_vtentry function within bfd/elflink.c. This function manages virtual table entries during link-time garbage collection of unused sections. The out-of-bounds read (CWE-119: Improper Restriction of Operations within the Bounds of a Memory Buffer) occurs when processing specially crafted ELF object files with malformed virtual table records, allowing the function to read memory beyond allocated buffer boundaries. This typically occurs during the linker's analysis phase when determining which sections can be safely discarded.
Know when Binutils gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P
Primary rating from Vendor (vuldb) · only source for this CVE.
CVSS VectorVendor: vuldb
DescriptionCVE.org
A vulnerability has been found in GNU Binutils 2.45. This impacts the function bfd_elf_gc_record_vtentry of the file bfd/elflink.c of the component Linker. The manipulation leads to out-of-bounds read. Local access is required to approach this attack. The exploit has been disclosed to the public and may be used. The identifier of the patch is 047435dd988a3975d40c6626a8f739a0b2e154bc. To fix this issue, it is recommended to deploy a patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Affected Products (CPE)CVE.org
Stack-based buffer overflow in the ihex_scan function in bfd/ihex.c in GNU binutils 2.24 and earlier allows remote attac
elflink.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.28, has a "member a
finish_stab in stabs.c in GNU Binutils 2.30 allows attackers to cause a denial of service (heap-based buffer overflow) o
Heap-based buffer overflow in the pe_print_edata function in bfd/peXXigen.c in GNU binutils 2.24 and earlier allows remo
readelf in GNU Binutils 2.28 is vulnerable to a heap-based buffer over-read while processing corrupt RL78 binaries. Rate
The _bfd_XXi_swap_aouthdr_in function in bfd/peXXigen.c in GNU binutils 2.24 and earlier allows remote attackers to caus
Stack-based buffer overflow in the srec_scan function in bfd/srec.c in GNU binutils 2.24 and earlier allows remote attac
The *regs* macros in opcodes/bfin-dis.c in GNU Binutils 2.28 allow remote attackers to cause a denial of service (buffer
The disassemble_bytes function in objdump.c in GNU Binutils 2.28 allows remote attackers to cause a denial of service (b
The setup_group function in bfd/elf.c in libbfd in GNU binutils 2.24 and earlier allows remote attackers to cause a deni
opcodes/rx-decode.opc in GNU Binutils 2.28 lacks bounds checks for certain scale arrays, which allows remote attackers t
The ieee_object_p function in bfd/ieee.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU
NVD
CVE.org
EPSS
VulDB
GitHub PoC
Exploit-DB