Executive brief
A vulnerability exists in the GNU Binutils BFD library, which is a set of tools used by developers to manipulate and analyze binary files. An attacker with local access could provide a specially crafted file that causes the software to crash. This primarily impacts the reliability of development tools and could lead to a minor denial-of-service for users processing untrusted binary files.
Technical details
A NULL pointer dereference vulnerability exists in the BFD library of GNU Binutils 2.44 within the bfd_elf_get_str_section function in bfd/elf.c. The issue occurs when the library attempts to handle a corrupt or malformed string table section in an ELF file; specifically, an error handler calls _bfd_doprnt with a NULL section pointer, triggering an abort. A local attacker can exploit this by providing a crafted binary file to tools using the BFD library (such as GDB or objdump), resulting in an application crash. A patch (db856d41004301b3a56438efd957ef5cabb91530) has been released to address the issue by using the section index instead of the pointer in error messages and ensuring proper string table termination.
Affected products
- GNU Binutils 2.44
Timeline
- 2024-08-21: other: Initial bug report to Sourceware Bugzilla
- 2024-08-26: patched: Fix committed to master branch
- 2025-07-27: advisory: CVE published
References
- https://sourceware.org/bugzilla/attachment.cgi?id=15680
- https://sourceware.org/bugzilla/show_bug.cgi?id=32109
- https://sourceware.org/bugzilla/show_bug.cgi?id=32109
- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=db856d41004301b3a56438efd957ef5cabb91530
- https://vuldb.com/?ctiid.317812
- https://vuldb.com/?id.317812
- https://vuldb.com/?submit.621878