Every CVE Search/ Get API key

CVE-2012-3509

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2)...

5.0 MediumFix available

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Exploit likelihood

3.70%Up 2.3 points since Feb 4, 2022
90%50%10%1%

What each source reports

NVD Score used 5.0

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
CVE-2012-3509
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:N/A:P
Weakness
CWE-189
Updated
2026-11-02
CVE List No score

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
CVE-2012-3509
Updated
2026-11-02
EUVDEUVD-2012-3464 No score

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
EUVD-2012-3464
Updated
2026-11-03
GitHub AdvisoriesGHSA-pjv6-3frr-mr92 No score

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2)...

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
GHSA-pjv6-3frr-mr92
Updated
2026-11-02
OSV No score

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
CVE-2012-3509
Updated
2026-11-02
OSVDEBIAN-CVE-2012-3509 No score

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
DEBIAN-CVE-2012-3509
Updated
2026-11-02
Show 4 moreShow less
OSVMGASA-2014-0346 No score

Updated sdcc packages fix a security vulnerability

Integer overflow, leading to heap-buffer overflow by processing certain file headers via bfd binary. (CVE-2012-3509)

A nonfree package is also now available, which provides components that cannot be included in the core repository.

In addition, this update obsoletes sdcc2.9, which is old and probably has the same security vulnerability.

Record
MGASA-2014-0346
Updated
2026-11-02
OSVSUSE-OU-2015:1803-1 No score

Optional update for gcc5, binutils and gdb

The core toolchain components were updated to newer version to bring various features, improved performance and usability, and also bugfixes.

This GNU Compiler Collection feature update is provided for the Intel/AMD x86_64, IBM zSeries and IBM PowerPC 64bit architectures.

The GNU Compiler Collection 5.2 is provided new with this update.

Changes to previously released GCC 4.8 series are documented on: https://gcc.gnu.org/gcc-4.9/changes.html and https://gcc.gnu.org/gcc-5/changes.html

Major features:

  • AddressSanitzer, UndefinedBehaviour and PointerBoundsChecker checking frameworks were added.
  • Lots of Register Allocation, Link Time, Interprocedural and Feedback Directed optimization improvements were done.
  • Architecture support for IBM zSeries z13.
  • The new libstdc++ CXX11 ABI is available, (The old ABI is still used by default.)

The binutils suite was updated to version 2.25.0, bringing new platform support, features and and bugfixes, including:

  • IBM zSeries z13 hardware support (fate#318036, bnc#936050).
  • various IBM Power8 improvements (fate#318238, bnc#926412).
  • AVX512 support on the Intel EM64T platform (fate#318520).
  • CVE-2012-3509: Fixed a integer overflow in libiberty.

The GNU Debugger gdb was updated to version 7.9.1, bringing new platform support, features and bugfixes. The gdb update also includes IBM zSeries z13 support.

Record
SUSE-OU-2015:1803-1
Updated
2026-11-02
OSVUBUNTU-CVE-2012-3509 No score

Multiple integer overflows in the (1) _objalloc_alloc function in objalloc.c and (2) objalloc_alloc macro in include/objalloc.h in GNU libiberty, as used by binutils 2.22, allow remote attackers to cause a denial of service (crash) via vectors related to the "addition of CHUNK_HEADER_SIZE to the length," which triggers a heap-based buffer overflow.

Record
UBUNTU-CVE-2012-3509
Updated
2026-11-02
OSVUSN-2496-1 No score

binutils vulnerabilities

Michal Zalewski discovered that the setup_group function in libbfd in GNU binutils did not properly check group headers in ELF files. An attacker could use this to craft input that could cause a denial of service (application crash) or possibly execute arbitrary code. (CVE-2014-8485)

Hanno Böck discovered that the _bfd_XXi_swap_aouthdr_in function in libbfd in GNU binutils allowed out-of-bounds writes. An attacker could use this to craft input that could cause a denial of service (application crash) or possibly execute arbitrary code. (CVE-2014-8501)

Hanno Böck discovered a heap-based buffer overflow in the pe_print_edata function in libbfd in GNU binutils. An attacker could use this to craft input that could cause a denial of service (application crash) or possibly execute arbitrary code. (CVE-2014-8502)

Alexander Cherepanov discovered multiple directory traversal vulnerabilities in GNU binutils. An attacker could use this to craft input that could delete arbitrary files. (CVE-2014-8737)

Alexander Cherepanov discovered the _bfd_slurp_extended_name_table function in libbfd in GNU binutils allowed invalid writes when handling extended name tables in an archive. An attacker could use this to craft input that could cause a denial of service (application crash) or possibly execute arbitrary code. (CVE-2014-8738)

Hanno Böck discovered a stack-based buffer overflow in the ihex_scan function in libbfd in GNU binutils. An attacker could use this to craft input that could cause a denial of service (application crash). (CVE-2014-8503)

Michal Zalewski discovered a stack-based buffer overflow in the srec_scan function in libbfd in GNU binutils. An attacker could use this to to craft input that could cause a denial of service (application crash); the GNU C library's Fortify Source printf protection should prevent the possibility of executing arbitrary code. (CVE-2014-8504)

Michal Zalewski discovered that the srec_scan function in libbfd in GNU binutils allowed out-of-bounds reads. An attacker could use this to craft input to cause a denial of service. This issue only affected Ubuntu 14.04 LTS, Ubuntu 12.04 LTS, and Ubuntu 10.04 LTS. (CVE-2014-8484)

Sang Kil Cha discovered multiple integer overflows in the _objalloc_alloc function and objalloc_alloc macro in binutils. This could allow an attacker to cause a denial of service (application crash). This issue only affected Ubuntu 12.04 LTS and Ubuntu 10.04 LTS. (CVE-2012-3509)

Alexander Cherepanov and Hanno Böck discovered multiple additional out-of-bounds reads and writes in GNU binutils. An attacker could use these to craft input that could cause a denial of service (application crash) or possibly execute arbitrary code. A few of these issues may be limited in exposure to a denial of service (application abort) by the GNU C library's Fortify Source printf protection.

The strings(1) utility in GNU binutils used libbfd by default when examining executable object files; unfortunately, libbfd was not originally developed with the expectation of hostile input. As a defensive measure, the behavior of strings has been changed to default to 'strings --all' behavior, which does not use libbfd; use the new argument to strings, '--data', to recreate the old behavior.

Record
USN-2496-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
binutils
Debian:12
before 2.22-8
2.22-8
binutils
Debian:13
before 2.22-8
2.22-8
binutils
Debian:14
before 2.22-8
2.22-8
binutils
Debian:6.0
before 2.20.1-16+deb6u2, plus listed versions
2.20.1-16
2.20.1-16+deb6u2
sdcc
Mageia:3
before 3.4.0-6.mga3
3.4.0-6.mga3
sdcc
Mageia:3
before 3.4.0-6.mga3.nonfree
3.4.0-6.mga3.nonfree
sdcc
Mageia:4
before 3.4.0-6.mga4
3.4.0-6.mga4
sdcc
Mageia:4
before 3.4.0-6.mga4.nonfree
3.4.0-6.mga4.nonfree
binutils
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 2.25.0-5.5
2.25.0-5.5
cross-ppc-binutils
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 2.25.0-5.7
2.25.0-5.7
Show 16 moreShow less
Affected packages
PackageAffectedFixed
cross-spu-binutils
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 2.25.0-5.7
2.25.0-5.7
gcc5
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 5.2.1+r226025-2.4
5.2.1+r226025-2.4
gdb
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 7.9.1-3.2
7.9.1-3.2
libffi-gcc5
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 5.2.1+r226025-2.1
5.2.1+r226025-2.1
binutils
SUSE:Linux Enterprise Desktop 11 SP4
before 2.25.0-5.5
2.25.0-5.5
gcc5
SUSE:Linux Enterprise Desktop 11 SP4
before 5.2.1+r226025-2.4
5.2.1+r226025-2.4
gdb
SUSE:Linux Enterprise Desktop 11 SP4
before 7.9.1-3.2
7.9.1-3.2
binutils
SUSE:Linux Enterprise Server 11 SP4
before 2.25.0-5.5
2.25.0-5.5
gcc5
SUSE:Linux Enterprise Server 11 SP4
before 5.2.1+r226025-2.4
5.2.1+r226025-2.4
gdb
SUSE:Linux Enterprise Server 11 SP4
before 7.9.1-3.2
7.9.1-3.2
libffi-gcc5
SUSE:Linux Enterprise Server 11 SP4
before 5.2.1+r226025-2.1
5.2.1+r226025-2.1
binutils
SUSE:Linux Enterprise Server for SAP Applications 11 SP4
before 2.25.0-5.5
2.25.0-5.5
gcc5
SUSE:Linux Enterprise Server for SAP Applications 11 SP4
before 5.2.1+r226025-2.4
5.2.1+r226025-2.4
gdb
SUSE:Linux Enterprise Server for SAP Applications 11 SP4
before 7.9.1-3.2
7.9.1-3.2
libffi-gcc5
SUSE:Linux Enterprise Server for SAP Applications 11 SP4
before 5.2.1+r226025-2.1
5.2.1+r226025-2.1
binutils
Ubuntu:14.04:LTS
before 2.24-5ubuntu3.1, plus listed versions
2.23.52.20130913-0ubuntu12.23.90.20131017-1ubuntu12.23.90.20131116-1ubuntu12.23.91.20131123-1ubuntu12.24-1ubuntu1
Show 8 moreShow less
2.24-1ubuntu22.24-2ubuntu12.24-2ubuntu22.24-2ubuntu32.24-4ubuntu12.24-5ubuntu12.24-5ubuntu22.24-5ubuntu3
2.24-5ubuntu3.1

History

History
RecordedChangedSources
affected
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2012-3509 is a medium vulnerability (CVSS 5.0) in Gnu Binutils, published September 5, 2012. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.70%, the 89th percentile. Fixed in binutils 2.22-8.

References

Show 27 moreShow less
MoveEnter Open