GNU binutils up to 2.29 libbfd bfd/mach-o.c bfd_mach_o_read_symtab_strtab out-of-bounds write

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.5 | $0-$5k | 0.00 |
Summary
A vulnerability described as critical has been identified in GNU binutils up to 2.29. This vulnerability affects the function bfd_mach_o_read_symtab_strtab of the file bfd/mach-o.c of the component libbfd. The manipulation results in out-of-bounds write.
This vulnerability is cataloged as CVE-2017-12459. The attack must be initiated from a local position. There is no exploit available.
Details
A vulnerability, which was classified as critical, was found in GNU binutils up to 2.29 (Programming Tool Software). Affected is the function bfd_mach_o_read_symtab_strtab of the file bfd/mach-o.c of the component libbfd. The manipulation with an unknown input leads to a out-of-bounds write vulnerability. CWE is classifying the issue as CWE-787. The product writes data past the end, or before the beginning, of the intended buffer. This is going to have an impact on confidentiality, integrity, and availability. CVE summarizes:
The bfd_mach_o_read_symtab_strtab function in bfd/mach-o.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.29 and earlier, allows remote attackers to cause an out of bounds heap write and possibly achieve code execution via a crafted mach-o file.
The bug was discovered 07/26/2017. The weakness was shared 08/04/2017 (Website). The advisory is shared for download at sourceware.org. This vulnerability is traded as CVE-2017-12459 since 08/04/2017. It is possible to launch the attack remotely. The exploitation doesn't require any form of authentication. Successful exploitation requires user interaction by the victim. There are known technical details, but no exploit is available.
The vulnerability was handled as a non-public zero-day exploit for at least 9 days. During that time the estimated underground price was around $0-$5k. The vulnerability scanner Nessus provides a plugin with the ID 259885 (Linux Distros Unpatched Vulnerability : CVE-2017-12459), which helps to determine the existence of the flaw in a target environment. The commercial vulnerability scanner Qualys is able to test this issue with plugin 277638 (Fedora Security Update for binutils (FEDORA-2019-ba3cbcfd20)).
There is no information about possible countermeasures known. It may be suggested to replace the affected object with an alternative product.
The vulnerability is also documented in the databases at Tenable (259885) and SecurityFocus (BID 100499†). The entries VDB-104833, VDB-104834, VDB-104835 and VDB-104836 are related to this item. Once again VulDB remains the best source for vulnerability data.
Product
Type
Vendor
Name
Version
- 2.0
- 2.1
- 2.2
- 2.3
- 2.4
- 2.5
- 2.6
- 2.7
- 2.8
- 2.9
- 2.10
- 2.11
- 2.12
- 2.13
- 2.14
- 2.15
- 2.16
- 2.17
- 2.18
- 2.19
- 2.20
- 2.21
- 2.22
- 2.23
- 2.24
- 2.25
- 2.26
- 2.27
- 2.28
- 2.29
License
Website
- Vendor: https://www.gnu.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.5VulDB Meta Temp Score: 6.5
VulDB Base Score: 5.3
VulDB Temp Score: 5.3
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.8
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Out-of-bounds writeCWE: CWE-787 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 259885
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2017-12459
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: no mitigation knownStatus: 🔍
0-Day Time: 🔍
Timeline
07/26/2017 🔍08/04/2017 🔍
08/04/2017 🔍
08/04/2017 🔍
08/05/2017 🔍
08/27/2017 🔍
08/31/2025 🔍
Sources
Vendor: gnu.orgAdvisory: sourceware.org
Researcher: Nick Clifton
Status: Confirmed
CVE: CVE-2017-12459 (🔍)
GCVE (CVE): GCVE-0-2017-12459
GCVE (VulDB): GCVE-100-104844
SecurityFocus: 100499 - GNU Binutils CVE-2017-13710 Remote Denial of Service Vulnerability
See also: 🔍
Entry
Created: 08/05/2017 20:14Updated: 08/31/2025 21:13
Changes: 08/05/2017 20:14 (64), 11/03/2019 17:42 (3), 01/07/2021 11:44 (2), 08/31/2025 21:13 (16)
Complete: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.