[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/21663] New: There is integer Overflow in the objdump tool

From: v.owl337 at gmail dot com
Subject: [Bug binutils/21663] New: There is integer Overflow in the objdump tool of the GNU Binutils.
Date: Fri, 23 Jun 2017 14:37:15 +0000


            Bug ID: 21663
           Summary: There is integer Overflow in the objdump tool of the
                    GNU Binutils.
           Product: binutils
           Version: 2.28
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: binutils
          Assignee: unassigned at sourceware dot org
          Reporter: v.owl337 at gmail dot com
  Target Milestone: ---

Created attachment 10215
  --> https://sourceware.org/bugzilla/attachment.cgi?id=10215&action=edit
./objdump -S POC1

The asan debugging information is as follows:

$./objdump -S POC1

==51582==ERROR: AddressSanitizer: SEGV on unknown address 0x255a0782 (pc
0x082abe10 bp 0xf3f01eb4 sp 0xffe74620 T0)
    #0 0x82abe0f in elf_x86_64_get_plt_sym_val
    #1 0x82f36fa in _bfd_elf_ifunc_get_synthetic_symtab
    #2 0x82aacd9 in elf_x86_64_get_synthetic_symtab
    #3 0x8069013 in dump_bfd objdump.c:3448
    #4 0x806b0ce in display_object_bfd objdump.c:3526
    #5 0x806b0ce in display_any_bfd objdump.c:3615
    #6 0x8056562 in display_file objdump.c:3636
    #7 0x8056562 in main objdump.c:3919
    #8 0xf703679d in __libc_start_main (/lib32/libc.so.6+0x1879d)
    #9 0x805944b  (/home/icy/real/binutils-2.28/binutils/objdump+0x805944b)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV
/home/icy/real/binutils-2.28/bfd/elf64-x86-64.c:6669 elf_x86_64_get_plt_sym_val

This is an integer overflow in line elf64-86-64.c:6655 at function
elf_x86_64_get_plt_sym_val(). With the exact input we provided, line
elf64-86-64.c:6655 will run multiple
times, but in the 90th cycle,the value of reloc_index is calculated as
3338665986, which exceeds the maximum range of long.

6586 static bfd_vma *
6587 elf_x86_64_get_plt_sym_val (bfd *abfd, asymbol **dynsyms, asection *plt,
6588                             asection *relplt)
6589 {
6651       if (p->howto->type != R_X86_64_JUMP_SLOT
6652           && p->howto->type != R_X86_64_IRELATIVE)
6653         continue;
6655       reloc_index = H_GET_32 (abfd, (plt_contents + plt_offset
6656                                      + bed->plt_reloc_offset));
6657       if (reloc_index < count)
6658         {
6659           if (plt_bnd)
6660             {


This vulnerability is detected by team OWL337, with our custom fuzzer collAFL.
Please contact address@hidden   and address@hidden if you need
more info about the team, the tool or the vulnerability.

You are receiving this mail because:
You are on the CC list for the bug.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]