Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AddressSanitizer: SEGV on unknown address 0x0005ffff800d #73684

Closed
beginvuln mannequin opened this issue Feb 8, 2017 · 1 comment
Closed

AddressSanitizer: SEGV on unknown address 0x0005ffff800d #73684

beginvuln mannequin opened this issue Feb 8, 2017 · 1 comment
Labels
extension-modules C modules in the Modules dir type-bug An unexpected behavior, bug, or error

Comments

@beginvuln
Copy link
Mannequin

beginvuln mannequin commented Feb 8, 2017

BPO 29498
Files
  • obj_1088: PoC
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = <Date 2017-02-08.15:00:22.048>
    created_at = <Date 2017-02-08.14:55:22.035>
    labels = ['extension-modules', 'type-bug']
    title = 'AddressSanitizer: SEGV on unknown address 0x0005ffff800d'
    updated_at = <Date 2017-02-08.15:00:22.047>
    user = 'https://bugs.python.org/beginvuln'

    bugs.python.org fields:

    activity = <Date 2017-02-08.15:00:22.047>
    actor = 'matrixise'
    assignee = 'none'
    closed = True
    closed_date = <Date 2017-02-08.15:00:22.048>
    closer = 'matrixise'
    components = ['Extension Modules']
    creation = <Date 2017-02-08.14:55:22.035>
    creator = 'beginvuln'
    dependencies = []
    files = ['46593']
    hgrepos = []
    issue_num = 29498
    keywords = []
    message_count = 1.0
    messages = ['287337']
    nosy_count = 1.0
    nosy_names = ['beginvuln']
    pr_nums = []
    priority = 'low'
    resolution = None
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue29498'
    versions = ['Python 3.6']

    @beginvuln
    Copy link
    Mannequin Author

    beginvuln mannequin commented Feb 8, 2017

    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.
    _PyObject_GenericGetAttrWithDict (dict=0x2c0000006f, name=0x7ffff7eed3b0, obj=0x7ffff628ebf8) at Objects/object.c:1088
    1088 Py_INCREF(dict);
    Description: Access violation on destination operand
    Short description: DestAv (8/22)
    Hash: 5fba3f64e0a5cd874121e05187de0b92.c7630c31a2ff26cdc6fb85881fa40252
    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:

    EsEASAN:DEADLYSIGNAL
    =================================================================
    ==18600==ERROR: AddressSanitizer: SEGV on unknown address 0x0005ffff800d (pc 0x00000063acfe bp 0x7f86cde063b0 sp 0x7fffa5d9ea90 T0)
    #0 0x63acfd in _PyObject_GenericGetAttrWithDict /home/test/check/PythonASAN/Objects/object.c:1088
    #1 0x63acfd in ?? ??:0
    #2 0x7966cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:2815 (discriminator 1)
    #3 0x7966cc in ?? ??:0
    #4 0x7ab4cb in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #5 0x7ab4cb in _PyFunction_FastCall /home/test/check/PythonASAN/Python/ceval.c:4870
    #6 0x7ab4cb in fast_function /home/test/check/PythonASAN/Python/ceval.c:4905
    #7 0x7ab4cb in ?? ??:0
    #8 0x7a76f2 in call_function /home/test/check/PythonASAN/Python/ceval.c:4809
    #9 0x7a76f2 in ?? ??:0
    #10 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #11 0x7995cc in ?? ??:0
    #12 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #13 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #14 0x7a9847 in ?? ??:0
    #15 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #16 0x7ac2ea in ?? ??:0
    #17 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #18 0x574668 in ?? ??:0
    #19 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #20 0x5749fa in ?? ??:0
    #21 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #22 0x573e9b in ?? ??:0
    #23 0x793369 in do_call_core /home/test/check/PythonASAN/Python/ceval.c:5057
    #24 0x793369 in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3357
    #25 0x793369 in ?? ??:0
    #26 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #27 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #28 0x7a9847 in ?? ??:0
    #29 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #30 0x7ac2ea in ?? ??:0
    #31 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #32 0x574668 in ?? ??:0
    #33 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #34 0x5749fa in ?? ??:0
    #35 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #36 0x573e9b in ?? ??:0
    #37 0x66efe4 in slot_tp_call /home/test/check/PythonASAN/Objects/typeobject.c:6167
    #38 0x66efe4 in ?? ??:0
    #39 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316
    #40 0x5745f0 in ?? ??:0
    #41 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812
    #42 0x7a7429 in ?? ??:0
    #43 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #44 0x7995cc in ?? ??:0
    #45 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #46 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #47 0x7a9847 in ?? ??:0
    #48 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #49 0x7ac2ea in ?? ??:0
    #50 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #51 0x574668 in ?? ??:0
    #52 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #53 0x5749fa in ?? ??:0
    #54 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #55 0x573e9b in ?? ??:0
    #56 0x793369 in do_call_core /home/test/check/PythonASAN/Python/ceval.c:5057
    #57 0x793369 in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3357
    #58 0x793369 in ?? ??:0
    #59 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #60 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #61 0x7a9847 in ?? ??:0
    #62 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #63 0x7ac2ea in ?? ??:0
    #64 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #65 0x574668 in ?? ??:0
    #66 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #67 0x5749fa in ?? ??:0
    #68 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #69 0x573e9b in ?? ??:0
    #70 0x66efe4 in slot_tp_call /home/test/check/PythonASAN/Objects/typeobject.c:6167
    #71 0x66efe4 in ?? ??:0
    #72 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316
    #73 0x5745f0 in ?? ??:0
    #74 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812
    #75 0x7a7429 in ?? ??:0
    #76 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #77 0x7995cc in ?? ??:0
    #78 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #79 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #80 0x7a9847 in ?? ??:0
    #81 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #82 0x7ac2ea in ?? ??:0
    #83 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #84 0x574668 in ?? ??:0
    #85 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #86 0x5749fa in ?? ??:0
    #87 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #88 0x573e9b in ?? ??:0
    #89 0x793369 in do_call_core /home/test/check/PythonASAN/Python/ceval.c:5057
    #90 0x793369 in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3357
    #91 0x793369 in ?? ??:0
    #92 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #93 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #94 0x7a9847 in ?? ??:0
    #95 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #96 0x7ac2ea in ?? ??:0
    #97 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #98 0x574668 in ?? ??:0
    #99 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #100 0x5749fa in ?? ??:0
    #101 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #102 0x573e9b in ?? ??:0
    #103 0x66efe4 in slot_tp_call /home/test/check/PythonASAN/Objects/typeobject.c:6167
    #104 0x66efe4 in ?? ??:0
    #105 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316
    #106 0x5745f0 in ?? ??:0
    #107 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812
    #108 0x7a7429 in ?? ??:0
    #109 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #110 0x7995cc in ?? ??:0
    #111 0x7ab4cb in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #112 0x7ab4cb in _PyFunction_FastCall /home/test/check/PythonASAN/Python/ceval.c:4870
    #113 0x7ab4cb in fast_function /home/test/check/PythonASAN/Python/ceval.c:4905
    #114 0x7ab4cb in ?? ??:0
    #115 0x7a76f2 in call_function /home/test/check/PythonASAN/Python/ceval.c:4809
    #116 0x7a76f2 in ?? ??:0
    #117 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #118 0x7995cc in ?? ??:0
    #119 0x7ab4cb in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #120 0x7ab4cb in _PyFunction_FastCall /home/test/check/PythonASAN/Python/ceval.c:4870
    #121 0x7ab4cb in fast_function /home/test/check/PythonASAN/Python/ceval.c:4905
    #122 0x7ab4cb in ?? ??:0
    #123 0x7a76f2 in call_function /home/test/check/PythonASAN/Python/ceval.c:4809
    #124 0x7a76f2 in ?? ??:0
    #125 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #126 0x7995cc in ?? ??:0
    #127 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #128 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #129 0x7a9847 in ?? ??:0
    #130 0x7ac2ea in _PyFunction_FastCallDict /home/test/check/PythonASAN/Python/ceval.c:5021
    #131 0x7ac2ea in ?? ??:0
    #132 0x574668 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2295
    #133 0x574668 in ?? ??:0
    #134 0x5749fa in _PyObject_Call_Prepend /home/test/check/PythonASAN/Objects/abstract.c:2358
    #135 0x5749fa in ?? ??:0
    #136 0x573e9b in PyObject_Call /home/test/check/PythonASAN/Objects/abstract.c:2246
    #137 0x573e9b in ?? ??:0
    #138 0x6713f8 in slot_tp_init /home/test/check/PythonASAN/Objects/typeobject.c:6380
    #139 0x6713f8 in ?? ??:0
    #140 0x666d8d in type_call /home/test/check/PythonASAN/Objects/typeobject.c:915 (discriminator 1)
    #141 0x666d8d in ?? ??:0
    #142 0x5745f0 in _PyObject_FastCallDict /home/test/check/PythonASAN/Objects/abstract.c:2316
    #143 0x5745f0 in ?? ??:0
    #144 0x7a7429 in call_function /home/test/check/PythonASAN/Python/ceval.c:4812
    #145 0x7a7429 in ?? ??:0
    #146 0x7995cc in _PyEval_EvalFrameDefault /home/test/check/PythonASAN/Python/ceval.c:3275
    #147 0x7995cc in ?? ??:0
    #148 0x7a9847 in PyEval_EvalFrameEx /home/test/check/PythonASAN/Python/ceval.c:718
    #149 0x7a9847 in _PyEval_EvalCodeWithName /home/test/check/PythonASAN/Python/ceval.c:4119
    #150 0x7a9847 in ?? ??:0
    #151 0x78e0df in PyEval_EvalCodeEx /home/test/check/PythonASAN/Python/ceval.c:4140
    #152 0x78e0df in PyEval_EvalCode /home/test/check/PythonASAN/Python/ceval.c:695
    #153 0x78e0df in ?? ??:0
    #154 0x5142f5 in run_mod /home/test/check/PythonASAN/Python/pythonrun.c:980
    #155 0x5142f5 in PyRun_FileExFlags /home/test/check/PythonASAN/Python/pythonrun.c:933
    #156 0x5142f5 in ?? ??:0
    #157 0x512afa in PyRun_SimpleFileExFlags /home/test/check/PythonASAN/Python/pythonrun.c:396
    #158 0x512afa in ?? ??:0
    #159 0x53eefd in run_file /home/test/check/PythonASAN/Modules/main.c:320
    #160 0x53eefd in Py_Main /home/test/check/PythonASAN/Modules/main.c:780
    #161 0x53eefd in ?? ??:0
    #162 0x503d16 in main /home/test/check/PythonASAN/./Programs/python.c:69
    #163 0x503d16 in ?? ??:0
    #164 0x7f86ccc5d82f in __libc_start_main /build/glibc-GKVZIf/glibc-2.23/csu/../csu/libc-start.c:291
    #165 0x7f86ccc5d82f in ?? ??:0
    #166 0x432548 in _start ??:?
    #167 0x432548 in ?? ??:0

    AddressSanitizer can not provide additional info.
    SUMMARY: AddressSanitizer: SEGV (/home/test/check/PythonASAN/python+0x63acfd)
    ==18600==ABORTING

    @beginvuln beginvuln mannequin added type-security A security issue interpreter-core (Objects, Python, Grammar, and Parser dirs) labels Feb 8, 2017
    @tiran tiran added extension-modules C modules in the Modules dir type-bug An unexpected behavior, bug, or error and removed interpreter-core (Objects, Python, Grammar, and Parser dirs) type-security A security issue labels Feb 8, 2017
    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    extension-modules C modules in the Modules dir type-bug An unexpected behavior, bug, or error
    Projects
    None yet
    Development

    No branches or pull requests

    2 participants