Claimed out-of-bounds write in dlx_rtype_to_howto() (bfd/elf32-dlx.c),
reached from elf32_dlx_info_to_howto_rel() via the relocation type of a
crafted ELF/DLX object.
The DLX backend is not built. dlx_elf32_be_vec is selected only by the
dlx-*-elf target triple (bfd/config.bfd), and that vec is the sole trigger
for compiling elf32-dlx.lo (bfd/configure.ac); debian/rules passes an
explicit per-architecture --enable-targets list and never
--enable-targets=all. Verified against the shipped amd64 and arm64 debs:
libbfd exports no dlx symbols, `objdump -b elf32-dlx` returns "invalid bfd
target", `ld -m elf32dlx` is an unrecognised emulation, and a crafted
EM_DLX (0x5aa5) object carrying relocation types past the end of the howto
table is claimed by the generic elf32-big backend, which reports
"architecture: UNKNOWN!" and every relocation as UNKNOWN. The function is
never entered. Note that readelf prints DLX machine and relocation names
from its own tables, independent of BFD, so its output is not evidence of
the backend being present.
Upstream also rejects the finding on its merits, even with DLX enabled. On
the Red Hat bug that Debian's tracker carries as its only reference,
maintainer Andrew Burgess concludes "I don't believe that this is actually
a bug": DLX relocation types are a contiguous 0-9, not the non-contiguous
space with extended types at 0x10000+ that the advisory describes;
dlx_rtype_to_howto() already rejects r_type >= R_DLX_max (10); and types
6-9 have their own case arms, so the indexed access can only ever reach
0-5 of the 6-entry dlx_elf_howto_table. Patrick Monnerat adds that the
advisory claims an out-of-bounds write while the procedure performs no
indexed write at all. Both observations hold against the
2.45.50.20251201 source.
Debian marks it unimportant (binutils not covered by security support) and
ships no fix in any suite including forky/sid, so there is nothing to bump.