Issue29489
This issue tracker has been migrated to GitHub,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2017-02-08 14:46 by beginvuln, last changed 2022-04-11 14:58 by admin. This issue is now closed.
Files | ||||
---|---|---|---|---|
File name | Uploaded | Description | Edit | |
ctypes_4748 | beginvuln, 2017-02-08 14:46 | PoC |
Messages (1) | |||
---|---|---|---|
msg287323 - (view) | Author: BeginVuln (beginvuln) | Date: 2017-02-08 14:46 | |
OS Version : Ubuntu 16.04 LTS Python download link : https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz Python version : 3.6.0 Normal build cmd : ./configure make Asan build cmd: export CC="/usr/bin/clang -fsanitize=address export CXX="/usr/bin/clang++ -fsanitize=address ./confiugre make GDB with exploitable: To enable execution of this file add add-auto-load-safe-path /home/test/check/PythonGDB/python-gdb.py line to your configuration file "/home/test/.gdbinit". To completely disable this security protection add set auto-load safe-path / line to your configuration file "/home/test/.gdbinit". For more information about this security protection see the "Auto-loading safe path" section in the GDB manual. E.g., run from the shell: info "(gdb)Auto-loading safe path" [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Program received signal SIGSEGV, Segmentation fault. 0x00007ffff5d87282 in Pointer_item (index=32767, myself=0x7ffff5b3b620) at /home/test/check/PythonGDB/Modules/_ctypes/_ctypes.c:4748 4748 if (*(void **)self->b_ptr == NULL) { Description: Access violation on destination operand Short description: DestAv (8/22) Hash: 6d733dd19a93baf3031238df7085b89d.f931e2f4bcacefcb07769ddcf0b1360f Exploitability Classification: EXPLOITABLE Explanation: The target crashed on an access violation at an address matching the destination operand of the instruction. This likely indicates a write access violation, which means the attacker may control the write address and/or value. Other tags: AccessViolation (21/22) ASAN: ASAN:DEADLYSIGNAL ================================================================= ==18357==ERROR: AddressSanitizer: SEGV on unknown address 0x7f4a36c604d0 (pc 0x7f4a36e40562 bp 0x7ffc8c278530 sp 0x7ffc8c278060 T0) #0 0x7f4a36e40561 in Pointer_item /home/test/check/PythonASAN/Modules/_ctypes/_ctypes.c:4748 #1 0x7f4a36e40561 in ?? ??:0 #2 0x79987c in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:1458 (discriminator 1) #3 0x79987c in ?? ??:0 #4 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #5 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #6 0x7a9847 in ?? ??:0 #7 0x7ab648 in fast_function /home/test/check/PythonASAN/Python/ceval.c:4929 (discriminator 1) #8 0x7ab648 in ?? ??:0 #9 0x7a76f2 in call_function /home/test/check/PythonASAN/Python/ceval.c:4809 #10 0x7a76f2 in ?? ??:0 #11 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #12 0x7995cc in ?? ??:0 #13 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #14 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #15 0x7a9847 in ?? ??:0 #16 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #17 0x7ac2ea in ?? ??:0 #18 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #19 0x574668 in ?? ??:0 #20 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #21 0x5749fa in ?? ??:0 #22 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #23 0x573e9b in ?? ??:0 #24 0x793369 in do_call_core /home/test/check/PythonASAN/Python/ceval.c:5057 #25 0x793369 in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3357 #26 0x793369 in ?? ??:0 #27 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #28 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #29 0x7a9847 in ?? ??:0 #30 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #31 0x7ac2ea in ?? ??:0 #32 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #33 0x574668 in ?? ??:0 #34 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #35 0x5749fa in ?? ??:0 #36 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #37 0x573e9b in ?? ??:0 #38 0x66efe4 in slot_tp_call /home/test/check/PythonASAN/Objects/typeobject.c:6167 #39 0x66efe4 in ?? ??:0 #40 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316 #41 0x5745f0 in ?? ??:0 #42 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812 #43 0x7a7429 in ?? ??:0 #44 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #45 0x7995cc in ?? ??:0 #46 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #47 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #48 0x7a9847 in ?? ??:0 #49 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #50 0x7ac2ea in ?? ??:0 #51 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #52 0x574668 in ?? ??:0 #53 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #54 0x5749fa in ?? ??:0 #55 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #56 0x573e9b in ?? ??:0 #57 0x793369 in do_call_core /home/test/check/PythonASAN/Python/ceval.c:5057 #58 0x793369 in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3357 #59 0x793369 in ?? ??:0 #60 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #61 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #62 0x7a9847 in ?? ??:0 #63 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #64 0x7ac2ea in ?? ??:0 #65 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #66 0x574668 in ?? ??:0 #67 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #68 0x5749fa in ?? ??:0 #69 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #70 0x573e9b in ?? ??:0 #71 0x66efe4 in slot_tp_call /home/test/check/PythonASAN/Objects/typeobject.c:6167 #72 0x66efe4 in ?? ??:0 #73 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316 #74 0x5745f0 in ?? ??:0 #75 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812 #76 0x7a7429 in ?? ??:0 #77 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #78 0x7995cc in ?? ??:0 #79 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #80 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #81 0x7a9847 in ?? ??:0 #82 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #83 0x7ac2ea in ?? ??:0 #84 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #85 0x574668 in ?? ??:0 #86 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #87 0x5749fa in ?? ??:0 #88 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #89 0x573e9b in ?? ??:0 #90 0x793369 in do_call_core /home/test/check/PythonASAN/Python/ceval.c:5057 #91 0x793369 in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3357 #92 0x793369 in ?? ??:0 #93 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #94 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #95 0x7a9847 in ?? ??:0 #96 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #97 0x7ac2ea in ?? ??:0 #98 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #99 0x574668 in ?? ??:0 #100 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #101 0x5749fa in ?? ??:0 #102 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #103 0x573e9b in ?? ??:0 #104 0x66efe4 in slot_tp_call /home/test/check/PythonASAN/Objects/typeobject.c:6167 #105 0x66efe4 in ?? ??:0 #106 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316 #107 0x5745f0 in ?? ??:0 #108 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812 #109 0x7a7429 in ?? ??:0 #110 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #111 0x7995cc in ?? ??:0 #112 0x7ab4cb in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #113 0x7ab4cb in _PyFunction_FastCall /home/test/check/PythonASAN/Python/ceval.c:4870 #114 0x7ab4cb in fast_function /home/test/check/PythonASAN/Python/ceval.c:4905 #115 0x7ab4cb in ?? ??:0 #116 0x7a76f2 in call_function /home/test/check/PythonASAN/Python/ceval.c:4809 #117 0x7a76f2 in ?? ??:0 #118 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #119 0x7995cc in ?? ??:0 #120 0x7ab4cb in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #121 0x7ab4cb in _PyFunction_FastCall /home/test/check/PythonASAN/Python/ceval.c:4870 #122 0x7ab4cb in fast_function /home/test/check/PythonASAN/Python/ceval.c:4905 #123 0x7ab4cb in ?? ??:0 #124 0x7a76f2 in call_function /home/test/check/PythonASAN/Python/ceval.c:4809 #125 0x7a76f2 in ?? ??:0 #126 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #127 0x7995cc in ?? ??:0 #128 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #129 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #130 0x7a9847 in ?? ??:0 #131 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021 #132 0x7ac2ea in ?? ??:0 #133 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295 #134 0x574668 in ?? ??:0 #135 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358 #136 0x5749fa in ?? ??:0 #137 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246 #138 0x573e9b in ?? ??:0 #139 0x6713f8 in slot_tp_init /home/test/check/PythonASAN/Objects/typeobject.c:6380 #140 0x6713f8 in ?? ??:0 #141 0x666d8d in type_call /home/test/check/PythonASAN/Objects/typeobject.c:915 (discriminator 1) #142 0x666d8d in ?? ??:0 #143 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316 #144 0x5745f0 in ?? ??:0 #145 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812 #146 0x7a7429 in ?? ??:0 #147 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275 #148 0x7995cc in ?? ??:0 #149 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718 #150 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119 #151 0x7a9847 in ?? ??:0 #152 0x78e0df in PyEval_EvalCodeEx /home/test/check/PythonASAN/Python/ceval.c:4140 #153 0x78e0df in PyEval_EvalCode /home/test/check/PythonASAN/Python/ceval.c:695 #154 0x78e0df in ?? ??:0 #155 0x5142f5 in run_mod /home/test/check/PythonASAN/Python/pythonrun.c:980 #156 0x5142f5 in PyRun_FileExFlags /home/test/check/PythonASAN/Python/pythonrun.c:933 #157 0x5142f5 in ?? ??:0 #158 0x512afa in PyRun_SimpleFileExFlags /home/test/check/PythonASAN/Python/pythonrun.c:396 #159 0x512afa in ?? ??:0 #160 0x53eefd in run_file /home/test/check/PythonASAN/Modules/main.c:320 #161 0x53eefd in Py_Main /home/test/check/PythonASAN/Modules/main.c:780 #162 0x53eefd in ?? ??:0 #163 0x503d16 in main /home/test/check/PythonASAN/./Programs/python.c:69 #164 0x503d16 in ?? ??:0 #165 0x7f4a3a79082f in __libc_start_main /build/glibc-GKVZIf/glibc-2.23/csu/../csu/libc-start.c:291 #166 0x7f4a3a79082f in ?? ??:0 #167 0x432548 in _start ??:? #168 0x432548 in ?? ??:0 AddressSanitizer can not provide additional info. SUMMARY: AddressSanitizer: SEGV (/home/test/check/PythonASAN/build/lib.linux-x86_64-3.6/_ctypes.cpython-36m-x86_64-linux-gnu.so+0x26561) ==18357==ABORTING |
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-04-11 14:58:42 | admin | set | github: 73675 |
2017-02-08 14:57:25 | matrixise | set | status: open -> closed stage: resolved |
2017-02-08 14:55:34 | christian.heimes | set | priority: normal -> low type: security -> behavior components: + Extension Modules, - Interpreter Core |
2017-02-08 14:46:24 | beginvuln | create |