CVE-2017-13716
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29...
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
5.5
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
CVE-2017-13716- CVSS 3.0
- 5.5 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - CVSS 2.0
- 7.1 High
AV:N/AC:M/Au:N/C:N/I:N/A:C - Weakness
- CWE-770
- Updated
- 2026-11-02
CVE List No score
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
CVE-2017-13716- Updated
- 2026-11-02
EUVDEUVD-2017-5233 No score
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
EUVD-2017-5233- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-mwjr-5h89-5xqp
5.5
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29...
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
GHSA-mwjr-5h89-5xqp- CVSS 3.0
- 5.5 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-770
- Updated
- 2026-11-02
OSV
5.5
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
CVE-2017-13716- CVSS 3.0
- 5.5 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2017-13716
5.5
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
DEBIAN-CVE-2017-13716- CVSS 3.0
- 5.5 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2017-13716
5.5
The C++ symbol demangler routine in cplus-dem.c in libiberty, as distributed in GNU Binutils 2.29, allows remote attackers to cause a denial of service (excessive memory allocation and application crash) via a crafted file, as demonstrated by a call from the Binary File Descriptor (BFD) library (aka libbfd).
- Record
UBUNTU-CVE-2017-13716- CVSS 3.0
- 5.5 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-06
OSVMGASA-2019-0169 No score
Updated binutils packages fixes security vulnerabilities
This update provides the latest stable binutils, currently version 2.32 and fixes at least the following security issues:
ihex.c in GNU Binutils before 2.26 contains a stack buffer overflow when printing bad bytes in Intel Hex objects (CVE-2014-9939)
Use-after-free vulnerability in libiberty allows remote attackers to cause a denial of service (segmentation fault and crash) via a crafted binary, related to "btypevec." (CVE-2016-4487)
Use-after-free vulnerability in libiberty allows remote attackers to cause a denial of service (segmentation fault and crash) via a crafted binary, related to "ktypevec." (CVE-2016-4488)
Integer overflow in the gnu_special function in libiberty allows remote attackers to cause a denial of service (segmentation fault and crash) via a crafted binary, related to the "demangling of virtual tables." (CVE-2016-4489)
Integer overflow in cp-demangle.c in libiberty allows remote attackers to cause a denial of service (segmentation fault and crash) via a crafted binary, related to inconsistent use of the long and int types for lengths. (CVE-2016-4490)
Buffer overflow in the do_type function in cplus-dem.c in libiberty allows remote attackers to cause a denial of service (segmentation fault and crash) via a crafted binary. (CVE-2016-4492)
The demangle_template_value_parm and do_hpacc_template_literal functions in cplus-dem.c in libiberty allow remote attackers to cause a denial of service (out-of-bounds read and crash) via a crafted binary. (CVE-2016-4493)
The demangler in GNU Libiberty allows remote attackers to cause a denial of service (infinite loop, stack overflow, and crash) via a cycle in the references of remembered mangled types. (CVE-2016-6131)
readelf in GNU Binutils 2.28 writes to illegal addresses while processing corrupt input files containing symbol-difference relocations, leading to a heap-based buffer overflow. (CVE-2017-6965)
readelf in GNU Binutils 2.28 has a use-after-free (specifically read-after-free) error while processing multiple, relocated sections in an MSP430 binary. This is caused by mishandling of an invalid symbol index, and mishandling of state across invocations. (CVE-2017-6966)
readelf in GNU Binutils 2.28 is vulnerable to a heap-based buffer over-read while processing corrupt RL78 binaries. The vulnerability can trigger program crashes. It may lead to an information leak as well. (CVE-2017-6969)
The dump_section_as_bytes function in readelf in GNU Binutils 2.28 accesses a NULL pointer while reading section contents in a corrupt binary, leading to a program crash. (CVE-2017-7209)
objdump in GNU Binutils 2.28 is vulnerable to multiple heap-based buffer over-reads (of size 1 and size 8) while handling corrupt STABS enum type strings in a crafted object file, leading to program crash. (CVE-2017-7210)
GNU assembler in GNU Binutils 2.28 is vulnerable to a global buffer overflow (of size 1) while attempting to unget an EOF character from the input stream, potentially leading to a program crash. (CVE-2017-7223)
The find_nearest_line function in objdump in GNU Binutils 2.28 is vulnerable to an invalid write (of size 1) while disassembling a corrupt binary that contains an empty function name, leading to a program crash. (CVE-2017-7224)
The find_nearest_line function in addr2line in GNU Binutils 2.28 does not handle the case where the main file name and the directory name are both empty, triggering a NULL pointer dereference and an invalid write, and leading to a program crash. (CVE-2017-7225)
The pe_ILF_object_p function in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.28, is vulnerable to a heap-based buffer over-read of size 4049 because it uses the strlen function instead of strnlen, leading to program crashes in several utilities such as addr2line, size, and strings. It could lead to information disclosure as well. (CVE-2017-7226)
GNU linker (ld) in GNU Binutils 2.28 is vulnerable to a heap-based buffer overflow while…
- Record
MGASA-2019-0169- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-12-CVE-2017-13716 No score
CVE-2017-13716 in binutils - Patched by Root
Root has patched CVE-2017-13716 in the binutils package for Root:Debian:12. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-12-CVE-2017-13716- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
binutilsDebian:12 |
All versions, plus listed versions 2.40-22.40.50.20230111-12.40.50.20230215-12.40.50.20230501-12.40.50.20230510-1 Show 45 moreShow less2.40.50.20230602-12.40.50.20230611-12.40.50.20230611-22.40.50.20230622-12.40.50.20230625-12.40.50.20230630-12.40.90.20230705-12.40.90.20230714-12.40.90.20230714-22.40.90.20230720-12.40.90.20230729-12.40.90.20230729-22.41-12.41-22.41-32.41-42.41-52.41-62.41-72.41.50.20230731-12.41.50.20230803-12.41.50.20230905-12.41.50.20231010-12.41.50.20231101-12.41.50.20231125-12.41.50.20231202-12.41.50.20231206-12.41.50.20231214-12.41.50.20231227-12.41.90.20240115-12.41.90.20240122-12.42-12.42-22.42-2+hurd.12.42-32.42-42.42.50.20240614-12.42.50.20240618-12.42.50.20240625-12.42.50.20240710-12.42.90.20240720-12.42.90.20240720-22.43-12.43-22.43.1-1 |
None known |
binutilsDebian:13 |
All versions, plus listed versions 2.44-32.44.50.20250201-12.44.50.20250207-12.44.50.20250218-12.44.50.20250218-2 Show 43 moreShow less2.44.50.20250309-12.44.50.20250405-12.44.50.20250502-12.44.50.20250520-12.44.50.20250528-12.44.50.20250707-12.44.90.20250719-12.45-12.45-22.45-32.45-42.45-52.45-62.45-72.45-82.45.50.20250813-12.45.50.20250903-12.45.50.20251005-12.45.50.20251023-12.45.50.20251023-22.45.50.20251122-12.45.50.20251125-12.45.50.20251201-12.45.50.20251209-12.45.50.20260116-12.45.50.20260119-12.45.90.20260125-12.45.90.20260201-12.46-12.46-22.46-32.46.50.20260216-12.46.50.20260509-12.46.50.20260519-12.46.50.20260608-12.46.50.20260617-12.46.90.20260712-12.47-12.47-22.47.50.20260813-12.47.50.20260813-22.47.50.20260813-32.47.50.20260901-1 |
None known |
binutilsDebian:14 |
All versions, plus listed versions 2.44-32.44.50.20250201-12.44.50.20250207-12.44.50.20250218-12.44.50.20250218-2 Show 43 moreShow less2.44.50.20250309-12.44.50.20250405-12.44.50.20250502-12.44.50.20250520-12.44.50.20250528-12.44.50.20250707-12.44.90.20250719-12.45-12.45-22.45-32.45-42.45-52.45-62.45-72.45-82.45.50.20250813-12.45.50.20250903-12.45.50.20251005-12.45.50.20251023-12.45.50.20251023-22.45.50.20251122-12.45.50.20251125-12.45.50.20251201-12.45.50.20251209-12.45.50.20260116-12.45.50.20260119-12.45.90.20260125-12.45.90.20260201-12.46-12.46-22.46-32.46.50.20260216-12.46.50.20260509-12.46.50.20260519-12.46.50.20260608-12.46.50.20260617-12.46.90.20260712-12.47-12.47-22.47.50.20260813-12.47.50.20260813-22.47.50.20260813-32.47.50.20260901-1 |
None known |
binutilsMageia:6 From an advisory covering 105 CVEs |
before 2.32-1.1.mga6 | 2.32-1.1.mga6 |
binutilsRoot:Debian:12 |
before 2.40-2.root.io.24 | 2.40-2.root.io.242.40-2.aikido.25 |
rootio-binutilsRoot:Debian:12 |
before 2.40-2.root.io.24 | 2.40-2.root.io.242.40-2.aikido.25 |
binutilsUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 2.23.52.20130913-0ubuntu12.23.90.20131017-1ubuntu12.23.90.20131116-1ubuntu12.23.91.20131123-1ubuntu12.24-1ubuntu1 Show 20 moreShow less2.24-1ubuntu22.24-2ubuntu12.24-2ubuntu22.24-2ubuntu32.24-4ubuntu12.24-5ubuntu12.24-5ubuntu22.24-5ubuntu32.24-5ubuntu3.12.24-5ubuntu132.24-5ubuntu142.24-5ubuntu14.12.24-5ubuntu14.22.24-5ubuntu14.2+esm12.24-5ubuntu14.2+esm22.24-5ubuntu14.2+esm32.24-5ubuntu14.2+esm52.24-5ubuntu14.2+esm62.24-5ubuntu14.2+esm72.24-5ubuntu14.2+esm8 |
None known |
binutilsUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 2.25.1-6ubuntu12.25.51.20151022-0ubuntu22.25.51.20151022-0ubuntu32.25.51.20151027-0ubuntu12.25.51.20151028-0ubuntu1 Show 37 moreShow less2.25.51.20151106-0ubuntu12.25.51.20151113-1ubuntu12.25.51.20151113-2ubuntu12.25.90.20151125-1ubuntu12.25.90.20151125-2ubuntu12.25.90.20151211-0ubuntu12.25.90.20151211-0ubuntu22.25.90.20160101-1ubuntu12.25.90.20160101-1ubuntu22.26-2ubuntu12.26-3ubuntu12.26-4ubuntu12.26-5ubuntu12.26-6ubuntu12.26-7ubuntu22.26-8ubuntu12.26-8ubuntu22.26-8ubuntu2.12.26.1-1ubuntu1~16.042.26.1-1ubuntu1~16.04.12.26.1-1ubuntu1~16.04.32.26.1-1ubuntu1~16.04.42.26.1-1ubuntu1~16.04.52.26.1-1ubuntu1~16.04.62.26.1-1ubuntu1~16.04.72.26.1-1ubuntu1~16.04.82.26.1-1ubuntu1~16.04.8+esm12.26.1-1ubuntu1~16.04.8+esm32.26.1-1ubuntu1~16.04.8+esm42.26.1-1ubuntu1~16.04.8+esm52.26.1-1ubuntu1~16.04.8+esm62.26.1-1ubuntu1~16.04.8+esm72.26.1-1ubuntu1~16.04.8+esm92.26.1-1ubuntu1~16.04.8+esm112.26.1-1ubuntu1~16.04.8+esm122.26.1-1ubuntu1~16.04.8+esm132.26.1-1ubuntu1~16.04.8+esm14 |
None known |
libibertyUbuntu:16.04:LTS |
All versions, plus listed versions 20141014-120160215-120160215-1ubuntu0.220160215-1ubuntu0.3 |
None known |
binutilsUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 2.29.1-4ubuntu12.29.1-6ubuntu12.29.1-7ubuntu12.29.1-8ubuntu12.29.1-10ubuntu1 Show 25 moreShow less2.29.1-12ubuntu12.30-4ubuntu12.30-5ubuntu12.30-7ubuntu12.30-8ubuntu12.30-9ubuntu12.30-10ubuntu12.30-11ubuntu12.30-14ubuntu22.30-15ubuntu12.30-20ubuntu2~18.042.30-21ubuntu1~18.042.30-21ubuntu1~18.04.12.30-21ubuntu1~18.04.22.30-21ubuntu1~18.04.32.30-21ubuntu1~18.04.42.30-21ubuntu1~18.04.52.30-21ubuntu1~18.04.72.30-21ubuntu1~18.04.82.30-21ubuntu1~18.04.92.30-21ubuntu1~18.04.9+esm12.30-21ubuntu1~18.04.9+esm32.30-21ubuntu1~18.04.9+esm42.30-21ubuntu1~18.04.9+esm52.30-21ubuntu1~18.04.9+esm13 |
None known |
Show 12 moreShow less
| Package | Affected | Fixed |
|---|---|---|
libibertyUbuntu:18.04:LTS |
All versions, plus listed versions 20170913-120170913-1ubuntu0.1 |
None known |
binutilsUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 2.33-2ubuntu12.33.1-1ubuntu12.33.1-5ubuntu12.33.1-6ubuntu12.33.1-6ubuntu3 Show 18 moreShow less2.33.90.20200122-1ubuntu22.34-1ubuntu12.34-3ubuntu12.34-4ubuntu12.34-5ubuntu12.34-6ubuntu12.34-6ubuntu1.12.34-6ubuntu1.32.34-6ubuntu1.42.34-6ubuntu1.52.34-6ubuntu1.62.34-6ubuntu1.72.34-6ubuntu1.82.34-6ubuntu1.92.34-6ubuntu1.102.34-6ubuntu1.112.34-6ubuntu1.11+esm12.34-6ubuntu1.11+esm2 |
None known |
libibertyUbuntu:20.04:LTS |
All versions, plus listed versions 20190907-120200409-1 |
None known |
binutilsUbuntu:22.04:LTS |
All versions, plus listed versions 2.37-7ubuntu12.37-9ubuntu12.37-10ubuntu12.37.50.20220106-2ubuntu12.37.90.20220126-0ubuntu1 Show 16 moreShow less2.37.90.20220130-0ubuntu22.38-1ubuntu12.38-2ubuntu12.38-3ubuntu12.38-4ubuntu22.38-4ubuntu2.12.38-4ubuntu2.22.38-4ubuntu2.32.38-4ubuntu2.42.38-4ubuntu2.52.38-4ubuntu2.62.38-4ubuntu2.72.38-4ubuntu2.82.38-4ubuntu2.102.38-4ubuntu2.112.38-4ubuntu2.12 |
None known |
libibertyUbuntu:22.04:LTS |
All versions, plus listed versions 20210106-1build120211102-120211102-1build1 |
None known |
binutilsUbuntu:24.04:LTS |
All versions, plus listed versions 2.41-5ubuntu12.41-6ubuntu12.41.50.20231206-1ubuntu12.41.50.20231214-1ubuntu12.41.50.20231227-1ubuntu1 Show 12 moreShow less2.41.90.20240122-1ubuntu12.42-2ubuntu12.42-3ubuntu12.42-4ubuntu12.42-4ubuntu22.42-4ubuntu2.32.42-4ubuntu2.42.42-4ubuntu2.52.42-4ubuntu2.62.42-4ubuntu2.72.42-4ubuntu2.82.42-4ubuntu2.10 |
None known |
libibertyUbuntu:24.04:LTS |
All versions, plus listed versions 20230721-120240117-120240117-1build1 |
None known |
binutilsUbuntu:25.10 |
All versions, plus listed versions 2.44-3ubuntu12.44.50.20250602-0ubuntu12.44.50.20250604-0ubuntu22.44.50.20250616-0ubuntu12.44.50.20250707-1ubuntu1 Show 6 moreShow less2.45-1ubuntu12.45-3ubuntu32.45-6ubuntu12.45-7ubuntu12.45-7ubuntu1.12.45-7ubuntu1.2 |
None known |
libibertyUbuntu:25.10 |
All versions, plus listed versions 20250315-1 |
None known |
binutilsUbuntu:26.10 |
All versions, plus listed versions 2.46-3ubuntu22.46.50.20260608-1ubuntu12.47-2ubuntu12.47-6ubuntu1 |
None known |
libibertyUbuntu:26.10 |
All versions, plus listed versions 20260327-1 |
None known |
libibertyUbuntu:26.04:LTS |
All versions, plus listed versions 20250315-120250315-1build120251212-120260301-120260327-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | OSV | |
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2017-13716 is a medium vulnerability (CVSS 5.5) in Gnu Binutils, published August 28, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.40%, the 72nd percentile. Fixed in binutils 2.40-2.root.io.24.
References
sourceware.org/bugzilla/show_bug.cgi?id=22009
nvd.nist.gov/vuln/detail/CVE-2017-13716
github.com/advisories/GHSA-mwjr-5h89-5xqp
security-tracker.debian.org/tracker/CVE-2017-13716
advisories.mageia.org/MGASA-2019-0169.html
bugs.mageia.org/show_bug.cgi?id=18987
Show 28 moreShow less
sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=binutils/NEWS;hb=refs/tags/binutils-2_32
sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gas/NEWS;hb=refs/tags/binutils-2_32
sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=ld/NEWS;hb=refs/tags/binutils-2_32
lwn.net/Alerts/694764
openwall.com/lists/oss-security/2017/03/16/8
openwall.com/lists/oss-security/2017/04/10/16
openwall.com/lists/oss-security/2017/05/18/7
openwall.com/lists/oss-security/2017/09/26/6
openwall.com/lists/oss-security/2017/09/30/1
openwall.com/lists/oss-security/2017/09/30/2
openwall.com/lists/oss-security/2017/09/30/3
openwall.com/lists/oss-security/2017/10/04/3
openwall.com/lists/oss-security/2017/10/04/6
openwall.com/lists/oss-security/2017/10/04/4
openwall.com/lists/oss-security/2017/10/04/5
openwall.com/lists/oss-security/2017/10/04/8
openwall.com/lists/oss-security/2017/10/04/7
openwall.com/lists/oss-security/2017/10/27/4
openwall.com/lists/oss-security/2017/10/27/3
lists.opensuse.org/opensuse-updates/2017-12/msg00008.html
lists.suse.com/pipermail/sle-security-updates/2018-October/004678.html
lists.suse.com/pipermail/sle-security-updates/2018-October/004683.html
lists.opensuse.org/opensuse-updates/2018-10/msg00104.html
lists.opensuse.org/opensuse-updates/2018-10/msg00133.html
lists.fedoraproject.org/archives/list/[email protected]/thread/37N6SA4WSBTFWAMPQXHSO7JRJQ6EIIO5
bugzilla.redhat.com/show_bug.cgi?id=1645958
ubuntu.com/security/CVE-2017-13716
cve.org/CVERecord?id=CVE-2017-13716
Left out here: 72 versions and the rest of 1 source description. The JSON record has them.