A flaw was found in the _bfd_XX_bfd_copy_private_bfd_data_common function in peXXigen.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.30, processes a negative Data Directory size with an unbounded loop that increases the value of (external_IMAGE_DEBUG_DIRECTORY) *edd so that the address exceeds its own memory region, resulting in an out-of-bounds memory write, as demonstrated by objcopy copying private info with _bfd_pex64_bfd_copy_private_bfd_data_common in pex64igen.c. References: https://sourceware.org/bugzilla/show_bug.cgi?id=23110 Patch: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=aa4a8c2a2a67545e90c877162c53cc9de42dc8b4
Created binutils tracking bugs for this issue: Affects: fedora-all [bug 1574700] Created mingw-binutils tracking bugs for this issue: Affects: epel-all [bug 1574698] Affects: fedora-all [bug 1574701]
This issue has been addressed in the following products: Red Hat Enterprise Linux 7 Via RHSA-2018:3032 https://access.redhat.com/errata/RHSA-2018:3032