Executive brief
A vulnerability exists in GNU Binutils, a collection of programming tools used for creating and managing binary files on Linux and other operating systems. An attacker with local access to a system could use a specially crafted file to cause the 'objdump' tool to crash or behave unexpectedly. This could lead to a denial of service or potentially allow for further unauthorized actions on the affected system.
Technical details
A memory corruption vulnerability (specifically a NULL pointer dereference leading to a SEGV) exists in GNU Binutils up to version 2.44 within the 'objdump' component. The flaw is located in the 'debug_type_samep' function in 'binutils/debug.c'. The root cause is an incomplete check for enum types, specifically failing to handle NULL 'u.kenum' pointers which can occur when processing undefined tagged types. A local attacker can trigger this by providing a specially crafted file to objdump using specific command-line flags (e.g., -g for debugging info). This issue has been addressed in the master branch and is slated for the 2.45 release.
Affected products
- GNU Binutils up to 2.44
Timeline
- 2025-03-31: disclosed: Bug reported to Sourceware Bugzilla
- 2025-04-01: patched: Initial fix committed to master branch
- 2025-05-27: advisory: CVE-2025-5245 published
- 2025-10-06: patched: Follow-up fix for undefined tagged types committed
References
- https://sourceware.org/bugzilla/attachment.cgi?id=16004
- https://sourceware.org/bugzilla/show_bug.cgi?id=32829
- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6c3458a8b7ee7d39f070c7b2350851cb2110c65a
- https://vuldb.com/?ctiid.310347
- https://vuldb.com/?id.310347
- https://vuldb.com/?submit.584635
- https://www.gnu.org/