Uploaded image for project: 'Traffic Server'
  1. Traffic Server
  2. TS-4983

Buffer overflow in esi plugin

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 7.1.0
    • Plugins, Tests
    • None

    Description

      =================================================================
      ==28765==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60400000d3cf at pc 0x7f7864e3ba81 bp 0x7ffe4f0bdcb0 sp 0x7ffe4f0bd428
      READ of size 10 at 0x60400000d3cf thread T0
          #0 0x7f7864e3ba80  (/lib64/libasan.so.3+0x8ea80)
          #1 0x7f7864e3dced in __interceptor_vsnprintf (/lib64/libasan.so.3+0x90ced)
          #2 0x426c55 in Error(char const*, ...) test/print_funcs.cc:48
          #3 0x41ccbc in EsiParser::_parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int&, EsiLib::DocNodeList&, bool) const lib/EsiParser.cc:350
          #4 0x41d586 in EsiParser::_completeParse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int&, unsigned long&, EsiLib::DocNodeList&, char const*, int) const lib/EsiParser.cc:117
          #5 0x41d9b2 in EsiParser::parse(EsiLib::DocNodeList&, char const*, int) const lib/EsiParser.cc:636
          #6 0x40944d in main test/parser_test.cc:1029
          #7 0x7f7863259730 in __libc_start_main (/lib64/libc.so.6+0x20730)
          #8 0x4143b8 in _start (/home/bcall/dev/apache/trafficserver/plugins/esi/parser_test+0x4143b8)
      
      0x60400000d3cf is located 1 bytes to the left of 37-byte region [0x60400000d3d0,0x60400000d3f5)
      allocated by thread T0 here:
          #0 0x7f7864e74ea0 in operator new(unsigned long) (/lib64/libasan.so.3+0xc7ea0)
          #1 0x7f7863c3ebf8 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) (/lib64/libstdc++.so.6+0x123bf8)
      
      SUMMARY: AddressSanitizer: heap-buffer-overflow (/lib64/libasan.so.3+0x8ea80)
      Shadow bytes around the buggy address:
        0x0c087fff9a20: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
        0x0c087fff9a30: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
        0x0c087fff9a40: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
        0x0c087fff9a50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
        0x0c087fff9a60: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      =>0x0c087fff9a70: fa fa fa fa fa fa fa fa fa[fa]00 00 00 00 05 fa
        0x0c087fff9a80: fa fa fd fd fd fd fd fa fa fa 00 00 00 00 00 00
        0x0c087fff9a90: fa fa fd fd fd fd fd fd fa fa fd fd fd fd fd fd
        0x0c087fff9aa0: fa fa fd fd fd fd fd fd fa fa fd fd fd fd fd fd
        0x0c087fff9ab0: fa fa fd fd fd fd fd fd fa fa fd fd fd fd fd fd
        0x0c087fff9ac0: fa fa fd fd fd fd fd fd fa fa fd fd fd fd fd fd
      Shadow byte legend (one shadow byte represents 8 application bytes):
        Addressable:           00
        Partially addressable: 01 02 03 04 05 06 07
        Heap left redzone:       fa
        Heap right redzone:      fb
        Freed heap region:       fd
        Stack left redzone:      f1
        Stack mid redzone:       f2
        Stack right redzone:     f3
        Stack partial redzone:   f4
        Stack after return:      f5
        Stack use after scope:   f8
        Global redzone:          f9
        Global init order:       f6
        Poisoned by user:        f7
        Container overflow:      fc
        Array cookie:            ac
        Intra object redzone:    bb
        ASan internal:           fe
        Left alloca redzone:     ca
        Right alloca redzone:    cb
      ==28765==ABORTING
      

      Attachments

        Activity

          People

            bcall Bryan Call
            bcall Bryan Call
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 1.5h
                1.5h