"AddressSanitizer: SEGV on unknown address 0x60305beb6ba5"
means that the program has accessed some unmapped memory,
and the stack trace tells you where.
There is not much else to see in this report.

Since this is happening inside std::string::append, it is more likely to be
a use-after-free than a buffer-overflow,
and one that ASAN is not able to report properly.

Maybe try rerunning the test with ASAN_OPTIONS=quarantine_size_mb=1000000
(infinite quarantine).
If it's a use-after free it should report it as such.

Hard to imagine how, but it could also be a stack-use-after-return
(see
https://github.com/google/sanitizers/wiki/AddressSanitizerUseAfterReturn)
so try ASAN_OPTIONS=detect_stack_use_after_return=1

Maybe some other kind of undefined behavior is at play. Try UBSAN, TSAN,
and MSAN.

hth,

--kcc






On Thu, Apr 4, 2019 at 4:34 AM Diapnshu <[email protected]> wrote:

> Hi ,
> Guys , I am using address sanitizer in my project .
>
> But it is difficult to analysis the report . Could you please help to
> understand .
>
> Thanks in Advance .
>
>
> SUMMARY: AddressSanitizer: heap-use-after-free
> (/home/dkundu/develop/bin/Linux/Container+0x78350e) in memcpy
> Shadow bytes around the buggy address:
>   0x0c0680ccebc0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd
>   0x0c0680ccebd0: fd fd fa fa fd fd fd fd fa fa fa fa fa fa fa fa
>   0x0c0680ccebe0: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd
>   0x0c0680ccebf0: fa fa fa fa fa fa fa fa fd fd fd fd fa fa fa fa
>   0x0c0680ccec00: fa fa fa fa fa fa fa fa fa fa fd fd fd fd fa fa
> =>0x0c0680ccec10: fd fd fd[fd]fa fa fd fd fd fd fa fa fa fa fa fa
>   0x0c0680ccec20: fa fa fa fa fa fa fa fa fd fd fd fd fa fa fd fd
>   0x0c0680ccec30: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa
>   0x0c0680ccec40: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd
>   0x0c0680ccec50: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd
>   0x0c0680ccec60: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa
> 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
>   Freed heap region:       fd
>   Stack left redzone:      f1
>   Stack mid redzone:       f2
>   Stack right redzone:     f3
>   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
> =================================================================
> ==6613==ERROR: AddressSanitizer: SEGV on unknown address 0x60305beb6ba5
> (pc 0x7f589e725226 bp 0x7f5891c84070 sp 0x7f5891c837d8 T13)
> ==6613==The signal is caused by a READ memory access.
>     #0 0x7f589e725225 in __memmove_ssse3_back (/lib64/libc.so.6+0x150225)
>     #1 0x782e6e in memcpy
> (/home/dkundu/develop/bin/Linux/Container+0x782e6e)
>     #2 0x7f589f174a43 in std::string::append(std::string const&)
> (/lib64/libstdc++.so.6+0xbea43)
>     #3 0x8b6fb4 in std::basic_string<char, std::char_traits<char>,
> std::allocator<char> > std::operator+<char, std::char_traits<char>,
> std::allocator<char> >(std::basic_string<char, std::char_traits<char>,
> std::allocator<char> > const&, std::basic_string<char,
> std::char_traits<char>, std::allocator<char> > const&)
> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/../../../../include/c++/7/bits/basic_string.h:5880:13
>     #4 0x98bdd6 in TITMMessage::mySetValue(AnsiString const&, AnsiString
> const&, AnsiString const&)
> /home/dkundu/develop/Container/../pluginutils_new/unit_itmmessage.cpp:274:33
>     #5 0x98d93c in TITMMessage::GeneralSetValue(AnsiString const&,
> AnsiString const&)
> /home/dkundu/develop/Container/../pluginutils_new/unit_itmmessage.cpp:323:2
>     #6 0x98e0cb in TITMMessage::SetSource(AnsiString const&)
> /home/dkundu/develop/Container/../pluginutils_new/unit_itmmessage.cpp:343:2
>     #7 0x9bfde4 in TITMPluginHelper::log(AnsiString const&, AnsiString,
> TITMLOGLEVEL, int) const
> /home/dkundu/develop/Container/../pluginutils_new/unit_pluginhelper.cpp:917:4
>     #8 0x9a2c6b in TITMPluginHelper::log(TITMMessage const*, AnsiString
> const&, TITMLOGLEVEL, bool, int) const
> /home/dkundu/develop/Container/../pluginutils_new/unit_pluginhelper.cpp:895:2
>     #9 0x7f5889bc6888 in ProcessSendOnlineTransactions(TITMPluginHelper&,
> int, int, int, TMyCollection const&, std::map<AnsiString,
> std::unique_ptr<TSSL, std::default_delete<TSSL> >, std::less<AnsiString>,
> std::allocator<std::pair<AnsiString const, std::unique_ptr<TSSL,
> std::default_delete<TSSL> > > > >&)
> /home/dkundu/develop/Plugins/RenEndPointDataProcessor/unit_endpointdataclient.cpp:231:9
>     #10 0x7f5889bc183d in comhandler
> /home/dkundu/develop/Plugins/RenEndPointDataProcessor/unit_endpointdataclient.cpp:106:16
>     #11 0x94504d in TITMPlugin::ExecuteComHandler(int)
> /home/dkundu/develop/Container/unit_itmplugin.cpp:319:4
>     #12 0x965c5f in TPluginThread::Execute()
> /home/dkundu/develop/Container/unit_pluginthread.cpp:203:9
>     #13 0xb98897 in ThreadProc(void*)
> /home/dkundu/develop/utils-common/unittest_utils_linux/../classMThread.cpp:25:13
>     #14 0xb9ab0e in void std::__invoke_impl<void, void (*)(void*),
> TMyThread*>(std::__invoke_other, void (*&&)(void*), TMyThread*&&)
> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/../../../../include/c++/7/bits/invoke.h:60:14
>     #15 0xb9aa11 in std::__invoke_result<void (*)(void*),
> TMyThread*>::type std::__invoke<void (*)(void*), TMyThread*>(void
> (*&&)(void*), TMyThread*&&)
> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/../../../../include/c++/7/bits/invoke.h:95:14
>     #16 0xb9a9d1 in
> _ZNSt6thread8_InvokerISt5tupleIJPFvPvEP9TMyThreadEEE9_M_invokeIJLm0ELm1EEEEDTclsr3stdE8__invokespcl10_S_declvalIXT_EEEEESt12_Index_tupleIJXspT_EEE
> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/../../../../include/c++/7/thread:234:13
>     #17 0xb9a984 in std::thread::_Invoker<std::tuple<void (*)(void*),
> TMyThread*> >::operator()()
> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/../../../../include/c++/7/thread:243:11
>     #18 0xb9a6b8 in
> std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(void*),
> TMyThread*> > >::_M_run()
> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/../../../../include/c++/7/thread:186:13
>     #19 0xdb76de in execute_native_thread_routine
> (/home/dkundu/develop/bin/Linux/Container+0xdb76de)
>     #20 0x7f589f3c6dc4 in start_thread (/lib64/libpthread.so.0+0x7dc4)
>     #21 0x7f589e6cc73c in __clone (/lib64/libc.so.6+0xf773c)
>
> AddressSanitizer can not provide additional info.
> SUMMARY: AddressSanitizer: SEGV (/lib64/libc.so.6+0x150225) in
> __memmove_ssse3_back
> ==6613==ABORTING
>
> --
> You received this message because you are subscribed to the Google Groups
> "address-sanitizer" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to