CVE-2025-1148
Low · 3.1CVSS
3.1
EPSS
0.6%
Published
Feb 10, 2025
CISA due date
—
Cloudanix analysis
A problem in a widely used program-building tool can make it gradually use up memory when handling certain files, which may slow down or interrupt software compilation tasks.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- High
- Impact
- Denial Of Service
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Patch
- Effort
- Medium
- Patch risk
- Medium
What it actually does
The vulnerability causes a memory leak in the link_order_scan function within ld/ldelfgen.c of the GNU Binutils ld component due to improper memory management during object file processing.
Why it matters to the business
Environments relying on GNU Binutils for linking operations may experience gradual resource exhaustion during builds, reducing reliability of compilation pipelines and potentially leading to downtime in software development and CI/CD workflows.
How an attack unfolds
An attacker supplies a specially crafted object or ELF file to the ld linker to trigger the leak in link_order_scan. Exploitation is remote but requires high complexity and is difficult; a public exploit exists that may be used to induce memory consumption over repeated invocations.
How to fix it
Apply patches from the Binutils master branch that address the reported leaks; avoid the 2.44 branch until fixes are merged. Upgrade to a post-2.43 release containing the memory management corrections in ldelfgen.c.
How to confirm the fix worked
Confirm Binutils version exceeds 2.43 with master branch leak fixes applied, then execute linking operations using known triggering inputs while monitoring for memory growth via tools such as valgrind or process monitors.
Typical attack path
- Locate systems or build pipelines using vulnerable GNU Binutils ld
- Craft a malicious input file designed to exercise the leaky code path
- Invoke the linker with the crafted input via local execution, remote supply chain, or automated build
- Repeat invocations to accumulate leaked memory and degrade system resources
How to detect it
Review build logs and system resource metrics for unexpected memory growth during ld invocations; inspect for repeated use of the linker with externally supplied files and correlate with any public exploit samples.
What your security team should do
- Immediately update GNU Binutils in all build and development environments to a fixed master-derived version
- Restrict ld usage to trusted inputs only until patches are deployed
- Monitor public exploit disclosures and EPSS trends for changes in risk level
- Audit CI/CD pipelines for exposure to untrusted object files
The record
A vulnerability was found in GNU Binutils 2.43 and classified as problematic. Affected by this issue is the function link_order_scan of the file ld/ldelfgen.c of the component ld. The manipulation leads to memory leak. The attack may be launched remotely. The complexity of an attack is rather high. The exploitation is known to be difficult. The exploit has been disclosed to the public and may be used. It is recommended to apply a patch to fix this issue. The code maintainer explains: "I'm not going to commit some of the leak fixes I've been working on to the 2.44 branch due to concern that would destabilise ld. All of the reported leaks in this bugzilla have been fixed on binutils master."
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | binutils | 0 | No fix |
| Debian:12 | binutils | 0 | No fix |
| Debian:13 | binutils | 0 | No fix |
| Debian:14 | binutils | 0 | 2.45-3 |
| SUSE:Enterprise Storage 7.1 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Enterprise Storage 7.1 | openucx | 0 | 1.9.0-150300.4.2.5 |
| SUSE:Enterprise Storage 7.1 | perf | 0 | 5.3.18-150300.38.7.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | openucx | 0 | 1.9.0-150300.4.2.5 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | perf | 0 | 5.3.18-150300.38.7.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | openucx | 0 | 1.11.1-150400.4.2.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | perf | 0 | 5.14.21-150400.44.20.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | openucx | 0 | 1.11.1-150400.4.2.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | perf | 0 | 5.14.21-150400.44.20.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS | openucx | 0 | 1.13.1-150500.4.2.5 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS | perf | 0 | 5.14.21-150500.52.5.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS | openucx | 0 | 1.13.1-150500.4.2.5 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS | perf | 0 | 5.14.21-150500.52.5.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | openucx | 0 | 1.15.0-150600.3.5.2 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | openucx | 0 | 1.17.0-150700.4.2.7 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP6 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP6 | perf | 0 | 6.4.0.git33229.a3afe13a7f-150600.3.17.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | perf | 0 | 6.4.0.git54263.0aad576b1c-150700.3.2.2 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP6 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP7 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | openucx | 0 | 1.9.0-150300.4.2.5 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | perf | 0 | 5.3.18-150300.38.7.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | openucx | 0 | 1.11.1-150400.4.2.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | perf | 0 | 5.14.21-150400.44.20.1 |
| SUSE:Linux Enterprise Server 15 SP5-LTSS | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server 15 SP5-LTSS | openucx | 0 | 1.13.1-150500.4.2.5 |
| SUSE:Linux Enterprise Server 15 SP5-LTSS | perf | 0 | 5.14.21-150500.52.5.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | openucx | 0 | 1.9.0-150300.4.2.5 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | perf | 0 | 5.3.18-150300.38.7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | openucx | 0 | 1.11.1-150400.4.2.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | perf | 0 | 5.14.21-150400.44.20.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP5 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP5 | openucx | 0 | 1.13.1-150500.4.2.5 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP5 | perf | 0 | 5.14.21-150500.52.5.1 |
| SUSE:Manager Proxy LTS 4.3 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Manager Proxy LTS 4.3 | openucx | 0 | 1.11.1-150400.4.2.1 |
| SUSE:Manager Server LTS 4.3 | binutils | 0 | 2.45-150100.7.57.1 |
| SUSE:Manager Server LTS 4.3 | openucx | 0 | 1.11.1-150400.4.2.1 |
| openSUSE:Leap 15.6 | binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-aarch64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-arm-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-avr-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-bpf-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-epiphany-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-hppa-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-hppa64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-i386-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-ia64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-m68k-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-mips-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-ppc-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-ppc64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-ppc64le-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-pru-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-riscv64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-rx-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-s390-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-s390x-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-sparc-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-sparc64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-spu-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-x86_64-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | cross-xtensa-binutils | 0 | 2.45-150100.7.57.1 |
| openSUSE:Leap 15.6 | openucx | 0 | 1.15.0-150600.3.5.2 |
| openSUSE:Leap 15.6 | perf | 0 | 6.4.0.git33229.a3afe13a7f-150600.3.17.1 |
| openSUSE:Leap 16.0 | binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | bpftool | 0 | 7.5.0-160000.2.3 |
| openSUSE:Leap 16.0 | cross-aarch64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-arm-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-avr-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-bpf-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-epiphany-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-hppa-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-hppa64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-i386-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-ia64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-loongarch64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-m68k-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-mips-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-ppc-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-ppc64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-ppc64le-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-pru-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-riscv64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-rx-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-s390-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-s390x-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-sparc-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-sparc64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-spu-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-x86_64-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Leap 16.0 | cross-xtensa-binutils | 0 | 2.45-160000.1.1 |
| openSUSE:Tumbleweed | binutils | 0 | 2.45-1.2 |
Related vulnerabilities
- CVE-2025-8225 A vulnerability was found in GNU Binutils 2.44 and classified as problematic. Also affects binutils
- CVE-2025-8224 A vulnerability has been found in GNU Binutils 2.44 and classified as problematic. Also affects binutils
- CVE-2025-7546 A vulnerability, which was classified as problematic, has been found in GNU Binutils 2.45. Also affects binutils
- CVE-2025-7545 A vulnerability classified as problematic was found in GNU Binutils 2.45. Also affects binutils
- CVE-2025-5245 A vulnerability classified as critical has been found in GNU Binutils up to 2.44. Also affects binutils
- CVE-2025-5244 A vulnerability was found in GNU Binutils up to 2.44. Also affects binutils
- CVE-2025-3198 A vulnerability has been found in GNU Binutils 2.43/2.44 and classified as problematic. Also affects binutils
- CVE-2025-1182 A vulnerability, which was classified as critical, was found in GNU Binutils 2.43. Also affects binutils