Skip to content

n-bes/nuitka-crash-poc

Repository files navigation

Nuitka. Memory problems.

Originally crash was detected on big code base. I’ve researched little bit and found two stable crashes on:

  • Reduced code base

  • Manually generated project (POC)

Reduced code base

This crash triggered by _unpackBlobConstants and DEEP_COPY_DICT (full stacktrace below) on handle dict<dict<str>>.

Environment based on centos/stream8 and ubuntu:18.04, but unfortunately CentOS infrastructure is outdated on 31.05.2024 (see https://blog.centos.org/2023/04/end-dates-are-coming-for-centos-stream-8-and-centos-linux-7/)

My reproducible code contains:

  • module-build/__constants.c

  • module-build/__constants_data.c

  • nuitka-build/static_src/CompiledFunctionType.c

  • run.c

Crashes detected by:

  • AddressSanitizer (amd64)

  • HWAddressSanitizer (arm64)

While debugging session I’ve also found that returned values from _Nuitka_Py_PyDict_KeysSize and _Py_PyDict_KeysSize (implementation copy-pasted from CPython) are not equal.

// run.c

Py_InitializeEx(0);
if (!Py_IsInitialized()){
    return 1;
}

// createGlobalConstants();
loadConstantsBlob(&mod_consts[0], UNTRANSLATE("<module_name>"));

PyObject * tmp_assign_source_8;
tmp_assign_source_8 = DEEP_COPY_DICT(mod_consts[index]); // Crashed
// tmp_assign_source_8 = PyDict_Copy(mod_consts[index]); // OK

Hope, stacktrace will be enough to reproduce the bug on your side:

centos stream 8

# python3 --version
Python 3.6.8

# nuitka3 --version
1.6.5
Commercial: None
==90==ERROR: HWAddressSanitizer: tag-mismatch on address 0xedcdfffee600 at pc 0x000000471408
READ of size 2216 at 0xedcdfffee600 tags: 8e/22 (ptr/mem) in thread T0
Invalid access starting at offset 2208
    #0 0x471408 in __hwasan_memcpy (/code/cmake-build/crash-nuitka+0x471408) (BuildId: 5e112bb6cd767fd8)
    #1 0x500a64 in DEEP_COPY_DICT /code/nuitka-build/static_src/HelpersDictionariesGenerated.c:427:17
    #2 0x74ce50 in main /code/run.c:115:35
    #3 0xffffb7cc7380 in __libc_start_main (/lib64/libc.so.6+0x24380) (BuildId: 92e77281835bedb6debc1d395f45ffb93e438086)
    #4 0x464388 in _start (/code/cmake-build/crash-nuitka+0x464388) (BuildId: 5e112bb6cd767fd8)

[0xedcdfffee600,0xedcdfffef000) is a small allocated heap chunk; size: 2560 offset: 0

Cause: heap-buffer-overflow
0xedcdfffee600 is located 0 bytes inside a 2208-byte region [0xedcdfffee600,0xedcdfffeeea0)
allocated by thread T0 here:
    #0 0x46c980 in malloc (/code/cmake-build/crash-nuitka+0x46c980) (BuildId: 5e112bb6cd767fd8)
    #1 0xffffb8079740  (/lib64/libpython3.6m.so.1.0+0xa3740) (BuildId: cbd0d20739018b41c810ab876db1c6937dd60cf8)
    #2 0xffffb809eaac in _PyDict_NewPresized (/lib64/libpython3.6m.so.1.0+0xc8aac) (BuildId: cbd0d20739018b41c810ab876db1c6937dd60cf8)
    #3 0x73dcb4 in _unpackBlobConstants /code/nuitka-build/static_src/HelpersConstantsBlob.c:566:27
    #4 0x6b9364 in unpackBlobConstants /code/nuitka-build/static_src/HelpersConstantsBlob.c:1219:5
    #5 0x6b8f00 in loadConstantsBlob /code/nuitka-build/static_src/HelpersConstantsBlob.c:1349:5
    #6 0x74c99c in main /code/run.c:51:5
    #7 0xffffb7cc7380 in __libc_start_main (/lib64/libc.so.6+0x24380) (BuildId: 92e77281835bedb6debc1d395f45ffb93e438086)
    #8 0x464388 in _start (/code/cmake-build/crash-nuitka+0x464388) (BuildId: 5e112bb6cd767fd8)

Thread: T0 0xeffe00002000 stack: [0xffffeb833000,0xffffec033000) sz: 8388608 tls: [0xffffb835b000,0xffffb835be50)
Memory tags around the buggy address (one tag corresponds to 16 bytes):
  0xedcdfffee600: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffee700: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffee800: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffee900: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffeea00: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffeeb00: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffeec00: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
  0xedcdfffeed00: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e  8e
=>0xedcdfffeee00: 8e  8e  8e  8e  8e  8e  8e  8e  8e  8e [22] 22  22  22  22  7c
  0xedcdfffeef00: 7c  7c  7c  7c  7c  7c  7c  7c  7c  7c  7c  00  00  00  00  00
  0xedcdfffef000: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
  0xedcdfffef100: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
  0xedcdfffef200: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
  0xedcdfffef300: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
  0xedcdfffef400: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
  0xedcdfffef500: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
  0xedcdfffef600: 64  64  64  64  64  64  64  64  64  64  64  64  64  64  64  64
Tags for short granules around the buggy address (one tag corresponds to 16 bytes):
  0xedcdfffeed00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
=>0xedcdfffeee00: ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [..] ..  ..  ..  ..  ..
  0xedcdfffeef00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..

ubuntu 18.04

nuitka3 --version
1.6.5
Commercial: None
Python: 3.6.9 (default, Mar 10 2023, 16:46:00)
Flavor: Debian Python
Executable: /usr/bin/python3
OS: Linux
Arch: aarch64
Distribution: Ubuntu (based on Debian) 18.04.6
Version C compiler: /usr/bin/gcc (gcc).
==22==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x51d00001e920 at pc 0xaaaab53edf48 bp 0xffffff971280 sp 0xffffff970a70

READ of size 2216 at 0x51d00001e920 thread T0
    #0 0xaaaab53edf44 in __asan_memcpy (/code/cmake-build/crash-nuitka+0x39df44) (BuildId: f53aebe4f7e8c1cf)
    #1 0xaaaab549ad64 in DEEP_COPY_DICT /code/nuitka-build/static_src/HelpersDictionariesGenerated.c:427:17
    #2 0xaaaab57116e0 in main /code/run.c:115:35
    #3 0xffffa453579c in __libc_start_main /build/glibc-L0whdJ/glibc-2.27/csu/../csu/libc-start.c:310
    #4 0xaaaab5350360 in _start (/code/cmake-build/crash-nuitka+0x300360) (BuildId: f53aebe4f7e8c1cf)




0x51d00001e920 is located 0 bytes after 2208-byte region [0x51d00001e080,0x51d00001e920)
allocated by thread T0 here:
    #0 0xaaaab53eff94 in malloc (/code/cmake-build/crash-nuitka+0x39ff94) (BuildId: f53aebe4f7e8c1cf)
    #1 0xffffa49de3cc in _PyObject_Alloc build-shared/../Objects/obmalloc.c:1446:22
    #2 0xffffa49de3cc in _PyObject_Malloc build-shared/../Objects/obmalloc.c:1456:12
    #3 0xffffa49f0a8c in new_keys_object build-shared/../Objects/dictobject.c:537:14
    #4 0xffffa49f0b2c in _PyDict_NewPresized build-shared/../Objects/dictobject.c:1386:16
    #5 0xaaaab5700eb4 in _unpackBlobConstants /code/nuitka-build/static_src/HelpersConstantsBlob.c:566:27
    #6 0xaaaab566bd00 in unpackBlobConstants /code/nuitka-build/static_src/HelpersConstantsBlob.c:1219:5
    #7 0xaaaab566b74c in loadConstantsBlob /code/nuitka-build/static_src/HelpersConstantsBlob.c:1349:5
    #8 0xaaaab5710f58 in main /code/run.c:51:5
    #9 0xffffa453579c in __libc_start_main /build/glibc-L0whdJ/glibc-2.27/csu/../csu/libc-start.c:310
    #10 0xaaaab5350360 in _start (/code/cmake-build/crash-nuitka+0x300360) (BuildId: f53aebe4f7e8c1cf)
==11==ERROR: HWAddressSanitizer: tag-mismatch on address 0xedcdfffedc00 at pc 0xaaaad5f3340c
READ of size 2216 at 0xedcdfffedc00 tags: 17/87 (ptr/mem) in thread T0
Invalid access starting at offset 2208
    #0 0xaaaad5f3340c in __hwasan_memcpy (/code/cmake-build/crash-nuitka+0x27340c) (BuildId: 8ace36754df69c33)
    #1 0xaaaad5fc121c in DEEP_COPY_DICT /code/nuitka-build/static_src/HelpersDictionariesGenerated.c:427:17
    #2 0xaaaad620932c in main /code/run.c:115:35
    #3 0xffffbd31479c in __libc_start_main /build/glibc-L0whdJ/glibc-2.27/csu/../csu/libc-start.c:310
    #4 0xaaaad5f26618 in _start (/code/cmake-build/crash-nuitka+0x266618) (BuildId: 8ace36754df69c33)

[0xedcdfffedc00,0xedcdfffee600) is a small allocated heap chunk; size: 2560 offset: 0

Cause: heap-buffer-overflow
0xedcdfffedc00 is located 0 bytes inside a 2208-byte region [0xedcdfffedc00,0xedcdfffee4a0)
allocated by thread T0 here:
    #0 0xaaaad5f2eb6c in malloc (/code/cmake-build/crash-nuitka+0x26eb6c) (BuildId: 8ace36754df69c33)
    #1 0xffffbd7bd3cc in _PyObject_Alloc build-shared/../Objects/obmalloc.c:1446:22
    #2 0xffffbd7bd3cc in _PyObject_Malloc build-shared/../Objects/obmalloc.c:1456:12
    #3 0xffffbd7cfa8c in new_keys_object build-shared/../Objects/dictobject.c:537:14
    #4 0xffffbd7cfb2c in _PyDict_NewPresized build-shared/../Objects/dictobject.c:1386:16
    #5 0xaaaad61fa2bc in _unpackBlobConstants /code/nuitka-build/static_src/HelpersConstantsBlob.c:566:27
    #6 0xaaaad6176b04 in unpackBlobConstants /code/nuitka-build/static_src/HelpersConstantsBlob.c:1219:5
    #7 0xaaaad61766a0 in loadConstantsBlob /code/nuitka-build/static_src/HelpersConstantsBlob.c:1349:5
    #8 0xaaaad6208e84 in main /code/run.c:51:5
    #9 0xffffbd31479c in __libc_start_main /build/glibc-L0whdJ/glibc-2.27/csu/../csu/libc-start.c:310
    #10 0xaaaad5f26618 in _start (/code/cmake-build/crash-nuitka+0x266618) (BuildId: 8ace36754df69c33)

Manually generated project (POC)

OS Python version Nuitka Version

Ubuntu 24.04

3.12.3

2.3

CentOS Stream 9

3.9.18

2.3

Image Status

centos-stream9-env-without-nuitka

OK

centos-stream9-asan-env-without-nuitka

OK

centos-stream9-hwasan-env-without-nuitka

OK

centos-stream9-env-with-nuitka

OK

centos-stream9-asan-env-with-nuitka

OK

centos-stream9-hwasan-env-with-nuitka

FAILED

ubuntu-2204-asan-env-with-nuitka

OK

ubuntu-2204-hwasan-env-with-nuitka

FAILED

ubuntu-2404-env-without-nuitka

OK

ubuntu-2404-asan-env-without-nuitka

OK

ubuntu-2404-hwasan-env-without-nuitka

OK

ubuntu-2404-env-with-nuitka

OK

ubuntu-2404-asan-env-with-nuitka

OK

ubuntu-2404-hwasan-env-with-nuitka

FAILED

ubuntu-2404-factory-asan-env-with-nuitka

OK

ubuntu-2404-factory-hwasan-env-with-nuitka

FAILED

Output

centos-stream9-env-without-nuitka

docker compose run --build centos-stream9-env-without-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

centos-stream9-asan-env-without-nuitka

docker compose run --build centos-stream9-asan-env-without-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

centos-stream9-hwasan-env-without-nuitka

docker compose run --build centos-stream9-hwasan-env-without-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

centos-stream9-env-with-nuitka

docker compose run --build centos-stream9-env-with-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

centos-stream9-asan-env-with-nuitka

docker compose run --build centos-stream9-asan-env-with-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

centos-stream9-hwasan-env-with-nuitka

docker compose run --build centos-stream9-hwasan-env-with-nuitka
==1==ERROR: HWAddressSanitizer: tag-mismatch on address 0xffffa8bd1d30 at pc 0xffffa8b652e8
WRITE of size 8 at 0xffffa8bd1d30 tags: f6/00 (ptr/mem) in thread T0
    #0 0xffffa8b652e8 in PyInit_module /code/module.build/module.module.c:1108:26
    #1 0xffffaabda118  (/lib64/libpython3.9.so.1.0+0x178118) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #2 0xffffaab2bc0c  (/lib64/libpython3.9.so.1.0+0xc9c0c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #3 0xffffaab21bd4 in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbfbd4) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #4 0xffffaab1b89c  (/lib64/libpython3.9.so.1.0+0xb989c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #5 0xffffaab2b5c8 in _PyFunction_Vectorcall (/lib64/libpython3.9.so.1.0+0xc95c8) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #6 0xffffaab20b9c in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbeb9c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #7 0xffffaab2b8cc  (/lib64/libpython3.9.so.1.0+0xc98cc) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #8 0xffffaab1d014 in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbb014) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #9 0xffffaab2b8cc  (/lib64/libpython3.9.so.1.0+0xc98cc) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #10 0xffffaab1cd6c in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbad6c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #11 0xffffaab2b8cc  (/lib64/libpython3.9.so.1.0+0xc98cc) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #12 0xffffaab1cd6c in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbad6c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #13 0xffffaab2b8cc  (/lib64/libpython3.9.so.1.0+0xc98cc) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #14 0xffffaab1cd6c in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbad6c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #15 0xffffaab2b8cc  (/lib64/libpython3.9.so.1.0+0xc98cc) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #16 0xffffaab2ac9c  (/lib64/libpython3.9.so.1.0+0xc8c9c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #17 0xffffaab374d8 in _PyObject_CallMethodIdObjArgs (/lib64/libpython3.9.so.1.0+0xd54d8) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #18 0xffffaab36ce8 in PyImport_ImportModuleLevelObject (/lib64/libpython3.9.so.1.0+0xd4ce8) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #19 0xffffaab1f718 in _PyEval_EvalFrameDefault (/lib64/libpython3.9.so.1.0+0xbd718) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #20 0xffffaab1b89c  (/lib64/libpython3.9.so.1.0+0xb989c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #21 0xffffaababc10 in _PyEval_EvalCodeWithName (/lib64/libpython3.9.so.1.0+0x149c10) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #22 0xffffaababb9c in PyEval_EvalCodeEx (/lib64/libpython3.9.so.1.0+0x149b9c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #23 0xffffaababb4c in PyEval_EvalCode (/lib64/libpython3.9.so.1.0+0x149b4c) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #24 0xffffaabe9a78  (/lib64/libpython3.9.so.1.0+0x187a78) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #25 0xffffaabe3f94  (/lib64/libpython3.9.so.1.0+0x181f94) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #26 0xffffaabdce48  (/lib64/libpython3.9.so.1.0+0x17ae48) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #27 0xffffaabdc5b0 in PyRun_SimpleFileExFlags (/lib64/libpython3.9.so.1.0+0x17a5b0) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #28 0xffffaabd7eec in Py_RunMain (/lib64/libpython3.9.so.1.0+0x175eec) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #29 0xffffaab99af8 in Py_BytesMain (/lib64/libpython3.9.so.1.0+0x137af8) (BuildId: b4d323fcb642de313fdd76880392bd99cc5d84d1)
    #30 0xffffaa8cb2fc in __libc_start_call_main (/lib64/libc.so.6+0x272fc) (BuildId: fecda416df9bfa6291ced6294aa3c9fbb96b5f28)
    #31 0xffffaa8cb3d4 in __libc_start_main@GLIBC_2.17 (/lib64/libc.so.6+0x273d4) (BuildId: fecda416df9bfa6291ced6294aa3c9fbb96b5f28)
    #32 0xaaaaaf41082c in _start (/usr/bin/python3.9+0x82c) (BuildId: e583efae636cd09e0a7a456ea10767bd6deb55f0)

Thread: T0 0xeffe00002000 stack: [0xffffe9945000,0xffffea145000) sz: 8388608 tls: [0xffffab88e020,0xffffab88ef60)
HWAddressSanitizer can not describe address in more detail.
Memory tags around the buggy address (one tag corresponds to 16 bytes):
  0xffffa8bd1500: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1600: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1700: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1800: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1900: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1a00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1b00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1c00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
=>0xffffa8bd1d00: 00  00  00 [00] 00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1e00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd1f00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd2000: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd2100: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd2200: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd2300: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd2400: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffffa8bd2500: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
Tags for short granules around the buggy address (one tag corresponds to 16 bytes):
  0xffffa8bd1c00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
=>0xffffa8bd1d00: ..  ..  .. [..] ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
  0xffffa8bd1e00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
See https://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html#short-granules for a description of short granule tags
Registers where the failure occurred (pc 0xffffa8b652e8):
    x0  0000ffffaad9dab8  x1  0000000000000000  x2  0000ffffaad6a588  x3  00000000100c1400
    x4  00000000000000e5  x5  0000000000000060  x6  0000000000000005  x7  0000ffffa8bea000
    x8  0000ffffaa033520  x9  0000ffffab88e7e0  x10 0000ffffa8bda000  x11 00000000000101c0
    x12 0000ffffa8bea210  x13 0000000000000005  x14 0000000000000000  x15 0000ffffaad61000
    x16 0000ffffaadeaacc  x17 0000000000000007  x18 00000000000c0000  x19 0000ffffaa0334f0
    x20 0200efff00000000  x21 f600ffffa8bd1d30  x22 0000ffffaa0334f0  x23 0000ffffa8be9e10
    x24 0000ffffa8be68d0  x25 0000ffffa8b6529c  x26 0000ffffa8be6a90  x27 0000ffffaac73e88
    x28 0000000000000000  x29 0000ffffea143700  x30 0000ffffa8b652ec   sp 0000ffffea143700
SUMMARY: HWAddressSanitizer: tag-mismatch /code/module.build/module.module.c:1108:26 in PyInit_module

ubuntu-2204-asan-env-with-nuitka

docker compose run --build ubuntu-2204-asan-env-with-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

ubuntu-2204-hwasan-env-with-nuitka

docker compose run --build ubuntu-2204-hwasan-env-with-nuitka
==10==ERROR: HWAddressSanitizer: tag-mismatch on address 0xffff8c2af2e0 at pc 0xffff8c09dc14
WRITE of size 8 at 0xffff8c2af2e0 tags: f6/00 (ptr/mem) in thread T0
#0 0xffff8c09dc14 in PyInit_module /code/module.build/module.module.c:1108:26
#1 0xaaaacd85c378 in _PyImport_LoadDynamicModuleWithSpec /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/importdl.c:167:9
#2 0xaaaacd85c378 in _imp_create_dynamic_impl /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/import.c:2050:11
#3 0xaaaacd85c378 in _imp_create_dynamic /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/clinic/import.c.h:330:20
#4 0xaaaacd745598 in cfunction_vectorcall_FASTCALL /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/methodobject.c:430:24
#5 0xaaaacd72ed8c in do_call_core /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5945:12
#6 0xaaaacd72ed8c in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:4277:22
#7 0xaaaacd745344 in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#8 0xaaaacd745344 in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#9 0xaaaacd745344 in _PyFunction_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:342:16
#10 0xaaaacd731778 in _PyObject_VectorcallTstate /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:114:11
#11 0xaaaacd731778 in PyObject_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:123:12
#12 0xaaaacd731778 in call_function /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5893:13
#13 0xaaaacd731778 in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:4181:23
#14 0xaaaacd745344 in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#15 0xaaaacd745344 in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#16 0xaaaacd745344 in _PyFunction_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:342:16
#17 0xaaaacd72d3f4 in _PyObject_VectorcallTstate /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:114:11
#18 0xaaaacd72d3f4 in PyObject_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:123:12
#19 0xaaaacd72d3f4 in call_function /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5893:13
#20 0xaaaacd72d3f4 in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:4198:23
#21 0xaaaacd745344 in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#22 0xaaaacd745344 in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#23 0xaaaacd745344 in _PyFunction_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:342:16
#24 0xaaaacd72d2b8 in _PyObject_VectorcallTstate /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:114:11
#25 0xaaaacd72d2b8 in PyObject_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:123:12
#26 0xaaaacd72d2b8 in call_function /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5893:13
#27 0xaaaacd72d2b8 in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:4213:19
#28 0xaaaacd745344 in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#29 0xaaaacd745344 in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#30 0xaaaacd745344 in _PyFunction_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:342:16
#31 0xaaaacd72d2b8 in _PyObject_VectorcallTstate /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:114:11
#32 0xaaaacd72d2b8 in PyObject_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:123:12
#33 0xaaaacd72d2b8 in call_function /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5893:13
#34 0xaaaacd72d2b8 in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:4213:19
#35 0xaaaacd745344 in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#36 0xaaaacd745344 in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#37 0xaaaacd745344 in _PyFunction_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:342:16
#38 0xaaaacd72d2b8 in _PyObject_VectorcallTstate /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:114:11
#39 0xaaaacd72d2b8 in PyObject_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:123:12
#40 0xaaaacd72d2b8 in call_function /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5893:13
#41 0xaaaacd72d2b8 in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:4213:19
#42 0xaaaacd745344 in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#43 0xaaaacd745344 in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#44 0xaaaacd745344 in _PyFunction_Vectorcall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:342:16
#45 0xaaaacd74426c in _PyObject_VectorcallTstate /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/cpython/abstract.h:114:11
#46 0xaaaacd74426c in object_vacall /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:734:14
#47 0xaaaacd830ee4 in _PyObject_CallMethodIdObjArgs /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Objects/call.c:825:24
#48 0xaaaacd75a7d4 in import_find_and_load /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/import.c:1522:11
#49 0xaaaacd75a7d4 in PyImport_ImportModuleLevelObject /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/import.c:1623:15
#50 0xaaaacd72f7a8 in import_name /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:6018:15
#51 0xaaaacd72f7a8 in _PyEval_EvalFrameDefault /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:3695:19
#52 0xaaaacd82975c in _PyEval_EvalFrame /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Include/internal/pycore_ceval.h:46:12
#53 0xaaaacd82975c in _PyEval_Vector /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:5067:24
#54 0xaaaacd8295e0 in PyEval_EvalCode /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/ceval.c:1134:12
#55 0xaaaacd85ccb8 in run_eval_code_obj /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/pythonrun.c:1291:9
#56 0xaaaacd8553c4 in run_mod /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/pythonrun.c:1312:19
#57 0xaaaacd85c968 in pyrun_file /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/pythonrun.c:1208:15
#58 0xaaaacd85bad0 in _PyRun_SimpleFileObject /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/pythonrun.c:456:13
#59 0xaaaacd85b69c in _PyRun_AnyFileObject /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Python/pythonrun.c:90:15
#60 0xaaaacd84bfbc in pymain_run_file_obj /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Modules/main.c:353:15
#61 0xaaaacd84bfbc in pymain_run_file /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Modules/main.c:372:15
#62 0xaaaacd84bfbc in pymain_run_python /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Modules/main.c:587:21
#63 0xaaaacd84bfbc in Py_RunMain /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Modules/main.c:666:5
#64 0xaaaacd81a744 in Py_BytesMain /build/python3.10-SBPMZM/python3.10-3.10.12/build-static/../Modules/main.c:720:12
#65 0xffff8dfc73f8 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#66 0xffff8dfc74c8 in __libc_start_main csu/../csu/libc-start.c:392:3
#67 0xaaaacd81a62c in _start (/usr/bin/python3.10+0x1da62c) (BuildId: 07fde82f379fc594bdc2a0381c75c41956b1f307)


Thread: T0 0xeffe00002000 stack: [0xffffdde64000,0xffffde664000) sz: 8388608 tls: [0xffff8ed3c440,0xffff8ed3d380)

Memory tags around the buggy address (one tag corresponds to 16 bytes):
0xffff8c2aea00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2aeb00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2aec00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2aed00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2aee00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2aef00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af000: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af100: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
=>0xffff8c2af200: 00  00  00  00  00  00  00  00  00  00  00  00  00  00 [00] 00
0xffff8c2af300: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af400: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af500: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af600: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af700: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af800: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2af900: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
0xffff8c2afa00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
Tags for short granules around the buggy address (one tag corresponds to 16 bytes):
0xffff8c2af100: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
=>0xffff8c2af200: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [..] ..
0xffff8c2af300: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
See https://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html#short-granules for a description of short granule tags

Registers where the failure occurred (pc 0xffff8c09dc14):
x0  0000ffff8d59ea60  x1  0000000000000000  x2  0000aaaacdb7f948  x3  0000000010481500
x4  00000000000000e5  x5  0000000000000060  x6  0000000000000082  x7  0000aaaacd7083e0
x8  0000ffff8d59ea60  x9  0000000000000000  x10 00000000000000f6  x11 0000aaaacdbb81d0
x12 0000ffff8c338000  x13 5300ffff8c3c0000  x14 0000000000003fff  x15 cb00ef3dfffe0000
x16 0000ffff8e28a97c  x17 0000000000000007  x18 000000000003a880  x19 0000ffff8d59ea30
x20 0200efff00000000  x21 f600ffff8c2af2e0  x22 0000ffff8d59ea30  x23 0000ffff8c32b210
x24 0000ffff8c317850  x25 0000ffff8c09d718  x26 0000aaaacdbf8208  x27 0000000000000000
x28 0000ffff8d59ea60  x29 0000ffffde661bc0  x30 0000ffff8c09dc18   sp 0000ffffde661bc0
SUMMARY: HWAddressSanitizer: tag-mismatch /code/module.build/module.module.c:1108:26 in PyInit_module

ubuntu-2404-env-without-nuitka

docker compose run --build ubuntu-2404-env-without-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

ubuntu-2404-asan-env-without-nuitka

docker compose run --build ubuntu-2404-asan-env-without-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

ubuntu-2404-hwasan-env-without-nuitka

docker compose run --build ubuntu-2404-hwasan-env-without-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

ubuntu-2404-env-with-nuitka

docker compose run --build ubuntu-2404-env-with-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

SAST report (svace 3.4.240516):

link:ubuntu-2404-env-with-nuitka/svace/nuitka-poc-svace.txt[role=include]

ubuntu-2404-asan-env-with-nuitka

docker compose run --build ubuntu-2404-asan-env-with-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

ubuntu-2404-hwasan-env-with-nuitka

docker compose run --build ubuntu-2404-hwasan-env-with-nuitka
==1==ERROR: HWAddressSanitizer: tag-mismatch on address 0xffff7ddf3bb0 at pc 0xffff7dc06ddc
READ of size 8 at 0xffff7ddf3bb0 tags: f5/00 (ptr/mem) in thread T0
    #0 0xffff7dc06ddc in PyInit_module /code/module.build/module.module.c:1123:26
    #1 0x66def0 in _PyImport_LoadDynamicModuleWithSpec /usr/src/python3.12-3.12.3-1/build-static/../Python/importdl.c:169:9
    #2 0x66d338 in _imp_create_dynamic_impl /usr/src/python3.12-3.12.3-1/build-static/../Python/import.c:3775:11
    #3 0x66d338 in _imp_create_dynamic /usr/src/python3.12-3.12.3-1/build-static/../Python/clinic/import.c.h:506:20
    #4 0x502d4c in cfunction_vectorcall_FASTCALL /usr/src/python3.12-3.12.3-1/build-static/../Objects/methodobject.c:422:24
    #5 0x5652ac in _PyEval_EvalFrameDefault /usr/src/python3.12-3.12.3-1/build-static/Python/bytecodes.c:3254:26
    #6 0x4c2f00 in _PyObject_VectorcallTstate /usr/src/python3.12-3.12.3-1/build-static/../Include/internal/pycore_call.h:92:11
    #7 0x4c2f00 in object_vacall /usr/src/python3.12-3.12.3-1/build-static/../Objects/call.c:850:14
    #8 0x4c4ae4 in PyObject_CallMethodObjArgs /usr/src/python3.12-3.12.3-1/build-static/../Objects/call.c:911:24
    #9 0x58bee8 in import_find_and_load /usr/src/python3.12-3.12.3-1/build-static/../Python/import.c:2779:11
    #10 0x58bee8 in PyImport_ImportModuleLevelObject /usr/src/python3.12-3.12.3-1/build-static/../Python/import.c:2862:15
    #11 0x565f6c in import_name /usr/src/python3.12-3.12.3-1/build-static/../Python/ceval.c:2482:15
    #12 0x565f6c in _PyEval_EvalFrameDefault /usr/src/python3.12-3.12.3-1/build-static/Python/bytecodes.c:2135:19
    #13 0x560070 in _PyEval_EvalFrame /usr/src/python3.12-3.12.3-1/build-static/../Include/internal/pycore_ceval.h:89:16
    #14 0x560070 in _PyEval_Vector /usr/src/python3.12-3.12.3-1/build-static/../Python/ceval.c:1683:12
    #15 0x560070 in PyEval_EvalCode /usr/src/python3.12-3.12.3-1/build-static/../Python/ceval.c:578:21
    #16 0x598f70 in run_eval_code_obj /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:1722:9
    #17 0x598f70 in run_mod /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:1743:19
    #18 0x67e6f0 in pyrun_file /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:1643:15
    #19 0x67e2c4 in _PyRun_SimpleFileObject /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:433:13
    #20 0x67e090 in _PyRun_AnyFileObject /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:78:15
    #21 0x6890e8 in pymain_run_file_obj /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:360:15
    #22 0x6890e8 in pymain_run_file /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:379:15
    #23 0x6890e8 in pymain_run_python /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:629:21
    #24 0x6890e8 in Py_RunMain /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:709:5
    #25 0x688ca4 in Py_BytesMain /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:763:12
    #26 0xffff7fb384c0 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
    #27 0xffff7fb38594 in __libc_start_main csu/../csu/libc-start.c:360:3
    #28 0x5f24ec in _start (/usr/bin/python3.12+0x5f24ec) (BuildId: 18160fe6beb052a7e6830ecc99e313a3498c377d)


Thread: T0 0xeffe00002000 stack: [0xfffff1f19000,0xfffff2719000) sz: 8388608 tls: [0xffff808f1460,0xffff808f2320)

Memory tags around the buggy address (one tag corresponds to 16 bytes):
  0xffff7ddf3300: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3400: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3500: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3600: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3700: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3800: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3900: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3a00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
=>0xffff7ddf3b00: 00  00  00  00  00  00  00  00  00  00  00 [00] 00  00  00  00
  0xffff7ddf3c00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3d00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3e00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf3f00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf4000: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf4100: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf4200: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff7ddf4300: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
Tags for short granules around the buggy address (one tag corresponds to 16 bytes):
  0xffff7ddf3a00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
=>0xffff7ddf3b00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [..] ..  ..  ..  ..
  0xffff7ddf3c00: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
See https://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html#short-granules for a description of short granule tags

Registers where the failure occurred (pc 0xffff7dc06ddc):
    x0  0000000000b1a670  x1  0000ffff808f1bb0  x2  0000000000b266d8  x3  0000ffff7de09de0
    x4  0000000000009d90  x5  0000000000b2d8d0  x6  ea00ef3dffffbef0  x7  0000ffff7db92060
    x8  0000000000000000  x9  0000000000000000  x10 0000000000000000  x11 0000000000000000
    x12 9100ed9dfffeba00  x13 0000000000000027  x14 000000000236fa65  x15 fffffffffffff000
    x16 0000ffff7fe3b350  x17 0000000000000007  x18 0000000000000004  x19 0000000000b266b0
    x20 0200efff00000000  x21 f500ffff7ddf3bb0  x22 00000000000000f5  x23 00000ffff7ddf3bb
    x24 0000ffff7f0fa990  x25 000000000070f5b8  x26 0000ffff7dc06ac4  x27 0000ffff7f0fb920
    x28 0000000000b8a278  x29 0000fffff2717e00  x30 0000ffff7dc06de0   sp 0000fffff2717e00
SUMMARY: HWAddressSanitizer: tag-mismatch /code/module.build/module.module.c:1123:26 in PyInit_module

ubuntu-2404-asan-factory-env-with-nuitka

docker compose run --build ubuntu-2404-asan-factory-env-with-nuitka
{'level_1': {'key_1': 'value_1'}, 'level_2': {'key_2': 'value_2'}, 'level_3': {'key_3': 'value_3'}}

ubuntu-2404-hwasan-factory-env-with-nuitka

docker compose run --build ubuntu-2404-hwasan-factory-env-with-nuitka
|| [0xffff00000000, 0xffffffffffff] || HighMem ||
|| [0xfffef0000000, 0xfffeffffffff] || HighShadow ||
|| [0xfefef0000000, 0xfffeefffffff] || ShadowGap ||
|| [0xefff00000000, 0xfefeefffffff] || LowShadow ||
|| [0x000000000000, 0xeffeffffffff] || LowMem ||
==1==Installed the sigaction for signal 11
==1==Installed the sigaction for signal 7
==1==Installed the sigaction for signal 8
==1==Installed the sigaction for signal 5
HWAddressSanitizer init done
==1==ERROR: HWAddressSanitizer: tag-mismatch on address 0xffff9e7b43c0 at pc 0xffff9e5c8750
READ of size 8 at 0xffff9e7b43c0 tags: f5/00 (ptr/mem) in thread T0
|| [0xffff00000000, 0xffffffffffff] || HighMem ||
|| [0xfffef0000000, 0xfffeffffffff] || HighShadow ||
|| [0xfefef0000000, 0xfffeefffffff] || ShadowGap ||
|| [0xefff00000000, 0xfefeefffffff] || LowShadow ||
|| [0x000000000000, 0xeffeffffffff] || LowMem ||
==7==Installed the sigaction for signal 11
==7==Installed the sigaction for signal 7
==7==Installed the sigaction for signal 8
==7==Installed the sigaction for signal 5
HWAddressSanitizer init done
    #0 0xffff9e5c8750 in PyInit_module /code/module.build/module.module.c:1125:26
    #1 0x66def0 in _PyImport_LoadDynamicModuleWithSpec /usr/src/python3.12-3.12.3-1/build-static/../Python/importdl.c:169:9
    #2 0x66d338 in _imp_create_dynamic_impl /usr/src/python3.12-3.12.3-1/build-static/../Python/import.c:3775:11
    #3 0x66d338 in _imp_create_dynamic /usr/src/python3.12-3.12.3-1/build-static/../Python/clinic/import.c.h:506:20
    #4 0x502d4c in cfunction_vectorcall_FASTCALL /usr/src/python3.12-3.12.3-1/build-static/../Objects/methodobject.c:422:24
    #5 0x5652ac in _PyEval_EvalFrameDefault /usr/src/python3.12-3.12.3-1/build-static/Python/bytecodes.c:3254:26
    #6 0x4c2f00 in _PyObject_VectorcallTstate /usr/src/python3.12-3.12.3-1/build-static/../Include/internal/pycore_call.h:92:11
    #7 0x4c2f00 in object_vacall /usr/src/python3.12-3.12.3-1/build-static/../Objects/call.c:850:14
    #8 0x4c4ae4 in PyObject_CallMethodObjArgs /usr/src/python3.12-3.12.3-1/build-static/../Objects/call.c:911:24
    #9 0x58bee8 in import_find_and_load /usr/src/python3.12-3.12.3-1/build-static/../Python/import.c:2779:11
    #10 0x58bee8 in PyImport_ImportModuleLevelObject /usr/src/python3.12-3.12.3-1/build-static/../Python/import.c:2862:15
    #11 0x565f6c in import_name /usr/src/python3.12-3.12.3-1/build-static/../Python/ceval.c:2482:15
    #12 0x565f6c in _PyEval_EvalFrameDefault /usr/src/python3.12-3.12.3-1/build-static/Python/bytecodes.c:2135:19
    #13 0x560070 in _PyEval_EvalFrame /usr/src/python3.12-3.12.3-1/build-static/../Include/internal/pycore_ceval.h:89:16
    #14 0x560070 in _PyEval_Vector /usr/src/python3.12-3.12.3-1/build-static/../Python/ceval.c:1683:12
    #15 0x560070 in PyEval_EvalCode /usr/src/python3.12-3.12.3-1/build-static/../Python/ceval.c:578:21
    #16 0x598f70 in run_eval_code_obj /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:1722:9
    #17 0x598f70 in run_mod /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:1743:19
    #18 0x67e6f0 in pyrun_file /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:1643:15
    #19 0x67e2c4 in _PyRun_SimpleFileObject /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:433:13
    #20 0x67e090 in _PyRun_AnyFileObject /usr/src/python3.12-3.12.3-1/build-static/../Python/pythonrun.c:78:15
    #21 0x6890e8 in pymain_run_file_obj /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:360:15
    #22 0x6890e8 in pymain_run_file /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:379:15
    #23 0x6890e8 in pymain_run_python /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:629:21
    #24 0x6890e8 in Py_RunMain /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:709:5
    #25 0x688ca4 in Py_BytesMain /usr/src/python3.12-3.12.3-1/build-static/../Modules/main.c:763:12
    #26 0xffffa05084c0 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
    #27 0xffffa0508594 in __libc_start_main csu/../csu/libc-start.c:360:3
    #28 0x5f24ec in _start (/usr/bin/python3.12+0x5f24ec) (BuildId: 18160fe6beb052a7e6830ecc99e313a3498c377d)


Thread: T0 0xeffe00002000 stack: [0xffffdbb4a000,0xffffdc34a000) sz: 8388608 tls: [0xffffa12c1460,0xffffa12c2320)

Memory tags around the buggy address (one tag corresponds to 16 bytes):
  0xffff9e7b3b00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b3c00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b3d00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b3e00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b3f00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4000: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4100: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4200: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
=>0xffff9e7b4300: 00  00  00  00  00  00  00  00  00  00  00  00 [00] 00  00  00
  0xffff9e7b4400: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4500: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4600: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4700: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4800: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4900: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4a00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
  0xffff9e7b4b00: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
Tags for short granules around the buggy address (one tag corresponds to 16 bytes):
  0xffff9e7b4200: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
=>0xffff9e7b4300: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [..] ..  ..  ..
  0xffff9e7b4400: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
See https://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html#short-granules for a description of short granule tags

Registers where the failure occurred (pc 0xffff9e5c8750):
    x0  0000000000b1a670  x1  0000ffffa12c1bb0  x2  0000000000b266d8  x3  0000ffff9e7c9e80
    x4  00000000000c9de0  x5  0000000000b2d8d0  x6  ae00ef3dffffcf38  x7  0000ffff9e552090
    x8  0000000000000000  x9  0000000000000000  x10 0000000000000000  x11 0000000000000000
    x12 bd00ed9dfffeba00  x13 0000000000000027  x14 000000000236fa65  x15 fffffffffffff000
    x16 0000ffffa080b350  x17 0000000000000007  x18 0000000000000004  x19 0000000000000000
    x20 0200efff00000000  x21 f500ffff9e7b43c0  x22 00000000000000f5  x23 00000ffff9e7b43c
    x24 0000ffff9fafbc50  x25 000000000070f5b8  x26 0000ffff9e5c8414  x27 0000ffff9fafbd10
    x28 0000000000b8a278  x29 0000ffffdc3488f0  x30 0000ffff9e5c8754   sp 0000ffffdc3488f0
SUMMARY: HWAddressSanitizer: tag-mismatch /code/module.build/module.module.c:1125:26 in PyInit_module

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published