A True Instrumentable Binary Emulation Framework
This report summarizes scanner evidence for qilingframework/qiling, a Python project with 6,123 GitHub stars. SynthScan examined 120,314 lines of code across 746 source files, recording 1292 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 14.1 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 512 finding(s).
Are imports declared and package/API names verified? 641 finding(s).
Are wrappers, guards, and repeated structures necessary? 293 finding(s).
Which changes need focused human review? 1292 finding(s).
Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1292 distinct pattern matches across 20 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/log.py | 6 | CODE | |
| LOW | qiling/__init__.py | 2 | CODE | |
| LOW | qiling/core.py | 29 | CODE | |
| LOW | qiling/core.py | 30 | CODE | |
| LOW | qiling/core.py | 15 | CODE | |
| LOW | qiling/core.py | 16 | CODE | |
| LOW | qiling/core.py | 17 | CODE | |
| LOW | qiling/core.py | 18 | CODE | |
| LOW | qiling/core.py | 19 | CODE | |
| LOW | qiling/core.py | 20 | CODE | |
| LOW | qiling/core.py | 21 | CODE | |
| LOW | qiling/core.py | 22 | CODE | |
| LOW | qiling/core.py | 23 | CODE | |
| LOW | qiling/cli.py | 27 | CODE | |
| LOW | qiling/utils.py | 26 | CODE | |
| LOW | qiling/utils.py | 29 | CODE | |
| LOW | qiling/utils.py | 30 | CODE | |
| LOW | qiling/utils.py | 31 | CODE | |
| LOW | qiling/utils.py | 32 | CODE | |
| LOW | qiling/utils.py | 33 | CODE | |
| LOW | qiling/core_hooks.py | 11 | CODE | |
| LOW | qiling/hw/__init__.py | 6 | CODE | |
| LOW | qiling/hw/__init__.py | 7 | CODE | |
| LOW | qiling/hw/__init__.py | 8 | CODE | |
| LOW | qiling/hw/__init__.py | 9 | CODE | |
| LOW | qiling/hw/__init__.py | 10 | CODE | |
| LOW | qiling/hw/__init__.py | 11 | CODE | |
| LOW | qiling/hw/__init__.py | 12 | CODE | |
| LOW | qiling/hw/__init__.py | 13 | CODE | |
| LOW | qiling/hw/__init__.py | 14 | CODE | |
| LOW | qiling/hw/__init__.py | 15 | CODE | |
| LOW | qiling/hw/__init__.py | 16 | CODE | |
| LOW | qiling/hw/__init__.py | 17 | CODE | |
| LOW | qiling/hw/__init__.py | 18 | CODE | |
| LOW | qiling/hw/__init__.py | 19 | CODE | |
| LOW | qiling/hw/__init__.py | 20 | CODE | |
| LOW | qiling/hw/power/__init__.py | 6 | CODE | |
| LOW | qiling/hw/power/__init__.py | 7 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 6 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 7 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 8 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 9 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 10 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 11 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 11 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 11 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 11 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 11 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 16 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 17 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 18 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 19 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 20 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 21 | CODE | |
| LOW | qiling/hw/misc/__init__.py | 22 | CODE | |
| LOW | qiling/hw/analog/sam3xa_adc.py | 9 | CODE | |
| LOW | qiling/hw/analog/__init__.py | 6 | CODE | |
| LOW | qiling/hw/analog/__init__.py | 7 | CODE | |
| LOW | qiling/hw/analog/__init__.py | 8 | CODE | |
| LOW | qiling/hw/analog/__init__.py | 9 | CODE | |
| 568 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/hw/sd/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/net/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/external_device/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/external_device/oled/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/external_device/lcd/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/utils/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/math/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/hw/const/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/extensions/winsdkapi.py | 1 | #!/usr/bin/python3 | COMMENT |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1621 | ql.mem.map(map_addr, map_size) | COMMENT |
| LOW | qiling/extensions/mcu/nxp/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/extensions/mcu/stm32f1/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/extensions/mcu/gd32vf1/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/extensions/mcu/bes/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/extensions/mcu/atmel/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/loader/elf.py | 661 | # | COMMENT |
| LOW | qiling/loader/pe_uefi.py | 421 | # returns. this is done do regain control, run necessary tear down code | COMMENT |
| LOW | qiling/loader/pe.py | 321 | data = bytearray(dll.get_memory_mapped_image()) | COMMENT |
| LOW | qiling/arch/x86_utils.py | 201 | # While debugging the linux kernel segment, the cs segment was found on the sixth segment of gdt. | COMMENT |
| LOW | qiling/debugger/gdb/gdb.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/debugger/gdb/gdb.py | 261 | # emulation was stopped by an async interrupt from the client | COMMENT |
| LOW | qiling/debugger/gdb/gdb.py | 521 | # TODO: this one requires information of loaded libraries which currently not provided | COMMENT |
| LOW | qiling/os/disk.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/os/path.py | 141 | # returning an absolute path will discard the accumulated vpath. | COMMENT |
| LOW | qiling/os/path.py | 181 | # accumulate paths as we progress through the resolution process. | COMMENT |
| LOW | qiling/os/posix/structs.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/os/posix/kernel_proxy/ipc.py | 41 | # Request header: [msg_type: u8][payload_len: u32] | COMMENT |
| LOW | qiling/os/posix/syscall/mman.py | 101 | COMMENT | |
| LOW | qiling/os/posix/syscall/mman.py | 121 | # mapping_size : actual mapping range size | COMMENT |
| LOW | qiling/os/posix/syscall/signal.py | 41 | @struct.cache | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 21 | # ino_t st_ino; /* inode's number */ uint64_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 41 | # #ifdef __STAT_TIME_T_EXT | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 121 | COMMENT | |
| LOW | qiling/os/posix/syscall/stat.py | 141 | # off_t st_size; /* [XSI] file size, in bytes */ \ int64_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 181 | # No 32bit macos. | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 201 | # long st_pad3; uint32_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 221 | # mode_t st_mode; uint32_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 241 | # }; | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 401 | # struct stat { | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 421 | # struct stat64 { | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 441 | # unsigned long long st_ino; uint64_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 541 | # struct stat { | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 561 | # unsigned long st_blocks; uint32_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 581 | # unsigned long long st_rdev; uint64_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 601 | # unsigned int st_mode; /* File mode. */ uint32_t | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 781 | # unsigned long __pad1; | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 821 | COMMENT | |
| LOW | qiling/os/posix/syscall/stat.py | 881 | # unsigned int st_nlink; /* Link count. */ | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 921 | COMMENT | |
| LOW | qiling/os/posix/syscall/stat.py | 941 | # #else | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 961 | # #elif !defined(_FILE_OFFSET_BITS) || _FILE_OFFSET_BITS == 32 | COMMENT |
| LOW | qiling/os/posix/syscall/stat.py | 981 | # uid_t st_uid; | COMMENT |
| LOW | qiling/os/posix/syscall/unistd.py | 861 | absvpath = virtual_abspath_at(ql, vpath, dirfd) | COMMENT |
| LOW | qiling/os/posix/syscall/unistd.py | 881 | # } | COMMENT |
| LOW | qiling/os/posix/syscall/sysctl.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/os/macos/mach_port.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/os/macos/mach_port.py | 41 | # def __str__(self): | COMMENT |
| LOW | qiling/os/macos/mach_port.py | 141 | # PAD_ARG_(mach_msg_size_t, send_size); unsigned int | COMMENT |
| LOW | qiling/os/macos/__init__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | qiling/os/macos/structs.py | 61 | COMMENT | |
| 117 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | qiling/hw/power/stm32f4xx_pwr.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/char/stm32f4xx_usart.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/intc/stm32f4xx_exti.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/math/stm32f4xx_crc.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/spi/stm32f4xx_spi.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/dma/stm32f4xx_dma.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/gpio/stm32f4xx_gpio.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/timer/stm32f4xx_rtc.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/i2c/stm32f4xx_i2c.py | 0 | the structure is available in : stm32f423xx.h stm32f469xx.h stm32f427xx.h stm32f479xx.h stm32f413xx.h stm32f429xx.h stm3 | STRING |
| HIGH | qiling/hw/misc/stm32f4xx_dbg.py | 0 | the structure available in : stm32f401xc stm32f401xe stm32f405xx stm32f407xx stm32f411xe stm32f412cx stm32f412rx stm32f4 | STRING |
| HIGH | qiling/hw/timer/stm32f4xx_tim.py | 0 | the structure available in : stm32f401xc stm32f401xe stm32f405xx stm32f407xx stm32f411xe stm32f412cx stm32f412rx stm32f4 | STRING |
| HIGH | qiling/hw/flash/stm32f4xx_flash.py | 0 | the structure available in : stm32f401xc stm32f401xe stm32f405xx stm32f407xx stm32f411xe stm32f412cx stm32f412rx stm32f4 | STRING |
| HIGH | qiling/hw/sd/stm32f4xx_sdio.py | 0 | the structure available in : stm32f401xc stm32f401xe stm32f405xx stm32f407xx stm32f411xe stm32f412cx stm32f412rx stm32f4 | STRING |
| HIGH | qiling/hw/analog/stm32f1xx_adc.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/char/stm32f1xx_usart.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/intc/stm32f1xx_exti.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/i2c/stm32f1xx_i2c.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/dma/stm32f1xx_dma.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/gpio/stm32f1xx_afio.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/gpio/stm32f1xx_gpio.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | qiling/hw/flash/stm32f1xx_flash.py | 0 | the structure available in : stm32f100xb stm32f100xe stm32f101xb stm32f101xe stm32f102xb stm32f103xb stm32f103xe stm32f1 | STRING |
| HIGH | …debugger/qdb/branch_predictor/branch_predictor_mips.py | 0 | [internal] read register value where register is provided as a unicorn constant. | STRING |
| HIGH | …ebugger/qdb/branch_predictor/branch_predictor_intel.py | 0 | [internal] read register value where register is provided as a unicorn constant. | STRING |
| HIGH | …/debugger/qdb/branch_predictor/branch_predictor_arm.py | 0 | [internal] read register value where register is provided as a unicorn constant. | STRING |
| HIGH | tests/test_peshellcode.py | 0 | fce8820000006089e531c0648b50308b520c8b52148b72280fb74a2631ffac3c 617c022c20c1cf0d01c7e2f252578b52108b4a3c8b4c1178e34801d | STRING |
| HIGH | tests/test_shellcode.py | 0 | fce8820000006089e531c0648b50308b520c8b52148b72280fb74a2631ffac3c 617c022c20c1cf0d01c7e2f252578b52108b4a3c8b4c1178e34801d | STRING |
| HIGH | examples/shellcode_run.py | 0 | fce8820000006089e531c0648b50308b520c8b52148b72280fb74a2631ffac3c 617c022c20c1cf0d01c7e2f252578b52108b4a3c8b4c1178e34801d | STRING |
| HIGH | tests/test_peshellcode.py | 0 | fc4881e4f0ffffffe8d0000000415141505251564831d265488b52603e488b52 183e488b52203e488b72503e480fb74a4a4d31c94831c0ac3c617c0 | STRING |
| HIGH | tests/test_shellcode.py | 0 | fc4881e4f0ffffffe8d0000000415141505251564831d265488b52603e488b52 183e488b52203e488b72503e480fb74a4a4d31c94831c0ac3c617c0 | STRING |
| HIGH | examples/shellcode_run.py | 0 | fc4881e4f0ffffffe8d0000000415141505251564831d265488b52603e488b52 183e488b52203e488b72503e480fb74a4a4d31c94831c0ac3c617c0 | STRING |
| HIGH | tests/test_shellcode.py | 0 | 420002ca210080d2400080d2c81880d2010000d4e60300aa01020010020280d2 681980d2010000d4410080d2420002cae00306aa080380d2010000d | STRING |
| HIGH | examples/shellcode_run.py | 0 | 420002ca210080d2400080d2c81880d2010000d4e60300aa01020010020280d2 681980d2010000d4410080d2420002cae00306aa080380d2010000d | STRING |
| HIGH | examples/extensions/r2/hello_r2.py | 0 | 420002ca210080d2400080d2c81880d2010000d4e60300aa01020010020280d2 681980d2010000d4410080d2420002cae00306aa080380d2010000d | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/hw/mem/kinetis_bme.py | 21 | def operand_size_from_alignment(self, addr): | CODE |
| LOW | qiling/extensions/idaplugin/qilingida.py | 538 | def finish_populating_widget_popup(self, widget, popup): | CODE |
| LOW⚡ | qiling/extensions/idaplugin/qilingida.py | 2207 | def ql_unregister_menu_actions(self): | STRING |
| LOW⚡ | qiling/extensions/idaplugin/qilingida.py | 2211 | def ql_attach_main_menu_actions(self): | STRING |
| LOW⚡ | qiling/extensions/idaplugin/qilingida.py | 2215 | def ql_detach_main_menu_actions(self): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1485 | def _force_execution_with_microcode(self, ql, ida_addr): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1512 | def _ida_address_after_branch(self, ida_addr): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1531 | def _force_execution_by_parsing_assembly(self, ql, ida_addr): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1626 | def _find_branch_in_real_block(self, bb): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1767 | def _arch_cond_jmp_instruction(self, cond, addr): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1779 | def _arch_parse_cond_from_addr(self, braddr): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1804 | def _patch_bytes_with_force_analysis(self, start, bs): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1922 | def ql_parse_blocks_for_deobf(self): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 2028 | def ql_remove_junk_code_by_patterns(self): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 2033 | def ql_nop_items_without_colors(self): | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 2231 | def finish_populating_widget_popup(self, widget, popup_handle): | STRING |
| LOW | qiling/loader/pe_uefi.py | 66 | def install_loaded_image_protocol(self, image_base: int, image_size: int): | CODE |
| LOW | qiling/loader/pe.py | 177 | def resolve_forwarded_exports(self): | CODE |
| LOW | qiling/arch/riscv.py | 75 | def unicorn_exception_handler(self, ql: Qiling, intno: int): | CODE |
| LOW | qiling/arch/cortex_m.py | 115 | def unicorn_exception_handler(self, ql: Qiling, intno: int): | CODE |
| LOW | qiling/os/posix/const_mapping.py | 157 | def socket_tcp_option_mapping(value: int, archtype: QL_ARCH) -> str: | CODE |
| LOW | qiling/os/posix/syscall/time.py | 52 | def ql_syscall_clock_nanosleep(ql: Qiling, clockid: int, flags: int, req: int, rem: int): | CODE |
| LOW | qiling/os/posix/syscall/signal.py | 184 | def ql_syscall_rt_sigprocmask(ql: Qiling, how: int, newset: int, oldset: int): | CODE |
| LOW | qiling/os/posix/syscall/futex.py | 8 | def ql_syscall_set_robust_list(ql: Qiling, head_ptr: int, head_len: int): | CODE |
| LOW | qiling/os/posix/syscall/stat.py | 1154 | def __common_pack_stat_struct(stat, info) -> bytes: | CODE |
| LOW | qiling/os/posix/syscall/unistd.py | 732 | def ql_syscall_set_tid_address(ql: Qiling, tidptr: int): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 114 | def ql_syscall_kernelrpc_mach_port_deallocate_trap(ql, *args, **kw): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 118 | def ql_syscall_kernelrpc_mach_port_mod_refs_trap(ql, target, name, right, delta, *args, **kw): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 125 | def ql_syscall_kernelrpc_mach_port_construct_trap(ql, target, options, context, name, *args, **kw): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 132 | def ql_syscall_mach_reply_port(ql, *args, **kw): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 137 | def ql_syscall_thread_self_trap(ql, *args, **kw): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 144 | def ql_syscall_task_self_trap(ql, *args, **kw): | CODE |
| LOW⚡ | qiling/os/macos/syscall.py | 149 | def ql_syscall_host_self_trap(ql, *args, **kw): | CODE |
| LOW | qiling/os/macos/syscall.py | 78 | def ql_syscall_kernelrpc_mach_vm_allocate_trap(ql, port, addr, size, flags, *args, **kw): | CODE |
| LOW | qiling/os/macos/syscall.py | 90 | def ql_syscall_kernelrpc_mach_vm_deallocate_trap(ql, target, address, size, *args, **kw): | CODE |
| LOW | qiling/os/macos/syscall.py | 95 | def ql_syscall_kernelrpc_mach_vm_map_trap(ql, target, address, size, mask, flags, cur_protection): | CODE |
| LOW | qiling/os/macos/syscall.py | 298 | def ql_syscall_shared_region_check_np(ql, p, uap, retvalp, *args, **kw): | CODE |
| LOW | qiling/os/macos/syscall.py | 318 | def ql_syscall_bsdthread_register(ql, threadstart, wqthread, flags, stack_addr_hint, targetconc_ptr, dispatchqueue_offse | CODE |
| LOW | qiling/os/macos/syscall.py | 329 | def ql_syscall_write_nocancel(ql, write_fd, write_buf, write_count, *args, **kw): | CODE |
| LOW | qiling/os/macos/syscall.py | 384 | def ql_syscall_shared_region_map_and_slide_np(ql, fd, count, mappings_addr, slide, slide_start, slide_size): | CODE |
| LOW | qiling/os/macos/syscall.py | 410 | def ql_syscall_terminate_with_payload(ql, pid, reason_namespace, reason_code, payload, payload_size, reason_string): | CODE |
| LOW | qiling/os/macos/syscall.py | 418 | def ql_syscall_abort_with_payload(ql, reason_namespace, reason_code, payload, payload_size, reason_string, reason_flags) | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 21 | def hook__kauth_unlisten_scope(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 207 | def hook__sysctl_handle_string(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 265 | def hook__getattrlist_setupvattr_all(ql, address, params): | CODE |
| LOW⚡ | qiling/os/macos/kernel_api/kernel_api.py | 280 | def hook__vfs_attr_pack_internal(ql, address, params): | CODE |
| LOW⚡ | qiling/os/macos/kernel_api/kernel_api.py | 288 | def hook__getattrlist_fixupattrs(ql, address, params): | CODE |
| LOW⚡ | qiling/os/macos/kernel_api/kernel_api.py | 296 | def hook__attrlist_pack_string(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 707 | def hook__lck_rw_lock_exclusive(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 713 | def hook__lck_rw_unlock_exclusive(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 754 | def hook__clock_get_calendar_microtime(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 873 | def hook__kauth_cred_setuidgid(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 918 | def hook__kernel_thread_start(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 961 | def hook__sysctl_register_oid(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 1005 | def hook__sysctl_unregister_oid(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 1213 | def hook__mac_policy_register(ql, address, params): | CODE |
| LOW | qiling/os/macos/kernel_api/kernel_api.py | 1259 | def hook__mac_policy_unregister(ql, address, params): | CODE |
| LOW | qiling/os/macos/events/macos.py | 243 | def get_events_by_type_and_proto(self, ev_type, protocol): | CODE |
| LOW | qiling/os/macos/events/macos.py | 257 | def get_event_by_name_and_type(self, ev_name, ev_type): | CODE |
| LOW | qiling/os/dos/utils.py | 55 | def read_dos_string_from_ds_dx(ql: Qiling): | CODE |
| 83 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qltui.py | 452 | CODE | |
| LOW | qltui.py | 591 | CODE | |
| LOW | qltui.py | 661 | CODE | |
| LOW | qiling/log.py | 164 | CODE | |
| LOW | qiling/cli.py | 78 | CODE | |
| LOW | qiling/utils.py | 104 | CODE | |
| LOW | qiling/utils.py | 332 | CODE | |
| LOW | qiling/utils.py | 452 | CODE | |
| LOW | qiling/core_hooks.py | 167 | CODE | |
| LOW | qiling/core_hooks.py | 192 | CODE | |
| LOW | qiling/core_hooks.py | 215 | CODE | |
| LOW | qiling/core_hooks.py | 231 | CODE | |
| LOW | qiling/hw/peripheral.py | 182 | CODE | |
| LOW | qiling/hw/peripheral.py | 205 | CODE | |
| LOW | qiling/hw/power/sam3xa_pmc.py | 75 | CODE | |
| LOW | qiling/hw/misc/mk64f12_mcg.py | 37 | CODE | |
| LOW | qiling/hw/analog/sam3xa_adc.py | 66 | CODE | |
| LOW | qiling/hw/intc/stm32f1xx_exti.py | 62 | CODE | |
| LOW | qiling/hw/intc/cm_nvic.py | 138 | CODE | |
| LOW | qiling/hw/intc/cm_nvic.py | 139 | CODE | |
| LOW | qiling/hw/external_device/oled/ssd1306.py | 73 | CODE | |
| LOW | qiling/hw/external_device/lcd/lcd1602.py | 98 | CODE | |
| LOW | qiling/hw/i2c/stm32f4xx_i2c.py | 83 | CODE | |
| LOW | qiling/hw/math/stm32f4xx_crc.py | 60 | CODE | |
| LOW | qiling/hw/spi/stm32f4xx_spi.py | 82 | CODE | |
| LOW | qiling/hw/gpio/stm32f1xx_gpio.py | 54 | CODE | |
| LOW | qiling/hw/gpio/mk64f12_gpio.py | 31 | CODE | |
| LOW | qiling/hw/gpio/gd32vf1xx_gpio.py | 48 | CODE | |
| LOW | qiling/extensions/trace.py | 66 | CODE | |
| LOW | qiling/extensions/trace.py | 93 | CODE | |
| LOW | qiling/extensions/multitask.py | 50 | CODE | |
| LOW | qiling/extensions/multitask.py | 209 | CODE | |
| LOW | qiling/extensions/multitask.py | 303 | CODE | |
| LOW | qiling/extensions/multitask.py | 355 | CODE | |
| LOW | qiling/extensions/tracing/formats/registers.py | 97 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 644 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 947 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1298 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1531 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1570 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1626 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1647 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1779 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1922 | CODE | |
| LOW | qiling/extensions/idaplugin/qilingida.py | 1984 | CODE | |
| LOW | qiling/loader/macho.py | 155 | CODE | |
| LOW | qiling/loader/macho.py | 355 | CODE | |
| LOW | qiling/loader/dos.py | 50 | CODE | |
| LOW | qiling/loader/elf.py | 149 | CODE | |
| LOW | qiling/loader/elf.py | 440 | CODE | |
| LOW | qiling/loader/elf.py | 151 | CODE | |
| LOW | qiling/loader/mcu.py | 109 | CODE | |
| LOW | qiling/loader/pe.py | 229 | CODE | |
| LOW | qiling/loader/pe.py | 620 | CODE | |
| LOW | qiling/loader/pe.py | 887 | CODE | |
| LOW | qiling/loader/macho_parser/parser.py | 115 | CODE | |
| LOW | qiling/loader/macho_parser/data.py | 92 | CODE | |
| LOW | qiling/debugger/gdb/gdb.py | 139 | CODE | |
| LOW | qiling/debugger/gdb/gdb.py | 393 | CODE | |
| LOW | qiling/debugger/gdb/gdb.py | 588 | CODE | |
| 66 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | qiling/core_hooks.py | 377 | Intercept certain emulation events within a specified range. Args: hook_type : event type to interc | STRING |
| HIGH | qiling/core_hooks.py | 401 | Intercept assembly instructions before they get executed. Args: callback : a method to call upon i | STRING |
| HIGH | qiling/core_hooks.py | 423 | Intercept landings in new basic blocks in a specified range. Args: callback : a method to call upo | STRING |
| HIGH | qiling/core_hooks.py | 441 | Intercept illegal accesses to unmapped memory in a specified range. Args: callback : a method to c | STRING |
| HIGH | qiling/core_hooks.py | 459 | Intercept illegal reading attempts from a specified range. Args: callback : a method to call upon | STRING |
| HIGH | qiling/core_hooks.py | 477 | Intercept illegal writing attempts to a specified range. Args: callback : a method to call upon in | STRING |
| HIGH | qiling/core_hooks.py | 495 | Intercept illegal code fetching attempts from a specified range. Args: callback : a method to call | STRING |
| HIGH | qiling/core_hooks.py | 513 | Intercept benign memory accesses within a specified range. This is equivalent to hooking memory reads, writes an | STRING |
| HIGH | qiling/core_hooks.py | 532 | Intercept invalid memory accesses within a specified range. This is equivalent to hooking invalid memory reads, | STRING |
| HIGH | qiling/core_hooks.py | 593 | Intercept benign memory reads from a specified range. Args: callback : a method to call upon inter | STRING |
| HIGH | qiling/core_hooks.py | 611 | Intercept benign memory writes to a specified range. Args: callback : a method to call upon interc | STRING |
| HIGH | qiling/core_hooks.py | 629 | Intercept benign code fetches from a specified range. Args: callback : a method to call upon inter | STRING |
| HIGH | qiling/core_hooks.py | 647 | Intercept execution of a certain instruction type within a specified range. Args: callback : a met | STRING |
| HIGH | qiling/core_hooks.py | 668 | Intercept cases in which Unicorn reaches opcodes it does not recognize or support. Args: callback | STRING |
| HIGH | qiling/extensions/afl/qlfuzzer.py | 103 | Get the effective address of a file offset. Args: offset: file offset module: module ba | STRING |
| HIGH | qiling/debugger/qdb/helper.py | 44 | Safely evaluate an arithmetic expression. The expression may include only digits, arithmetic and bitwise operators, | STRING |
| HIGH | qiling/debugger/qdb/helper.py | 93 | Resolve an arithmetic expression that might include register names. Registers names will be substituted with th | STRING |
| HIGH | qiling/os/memory.py | 541 | Locate an unallocated memory that is large enough to contain a range in size of `size` and based at `minaddr`. | STRING |
| HIGH | qiling/os/path.py | 269 | Convert a host path to its corresponding virtual path relative to rootfs. Args: hostpath : host pat | STRING |
| HIGH | qiling/os/struct.py | 189 | Get field offset within the structure. Args: fname: field name Returns: field offset in by | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_kernel_proxy.py | 182 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 184 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 281 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 283 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 355 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 357 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 415 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 417 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 494 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_kernel_proxy.py | 496 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 24 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 26 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 71 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 73 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 123 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 125 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 255 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 257 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 317 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_kernel_proxy.py | 319 | # ------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | qltui.py | 671 | except: | CODE |
| HIGH | qiling/os/filestruct.py | 14 | except ImportError: | CODE |
| HIGH | qiling/os/filestruct.py | 63 | except Exception: | CODE |
| HIGH | qiling/os/filestruct.py | 69 | except Exception: | CODE |
| HIGH | qiling/os/posix/filestruct.py | 11 | except ImportError: | CODE |
| HIGH | qiling/os/posix/filestruct.py | 64 | except Exception: | CODE |
| HIGH | qiling/os/posix/filestruct.py | 173 | except Exception: | CODE |
| HIGH | qiling/os/posix/filestruct.py | 179 | except Exception: | CODE |
| HIGH | qiling/os/posix/kernel_proxy/__init__.py | 318 | except Exception: | CODE |
| HIGH | qiling/os/dos/interrupts/int10.py | 63 | except: | CODE |
| HIGH | qiling/os/linux/thread.py | 580 | except AttributeError: | CODE |
| HIGH | qiling/os/windows/registry.py | 149 | except Registry.RegistryKeyNotFoundException: | CODE |
| HIGH | tests/test_pe_sys.py | 214 | except QlErrorSyscallError: | CODE |
| HIGH | tests/test_perf.py | 52 | except: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | qiling/arch/x86_utils.py | 42 | # first gdt entry is always null, start from 1 | COMMENT |
| HIGH | qiling/os/posix/syscall/stat.py | 1102 | ql.log.warning(f"Unrecognized arch && os with {ql.arch.type} and {ql.os.type} for stat64! Fallback to Linux x86.") | CODE |
| HIGH | qiling/os/posix/syscall/stat.py | 1151 | ql.log.warning(f"Unrecognized arch && os with {ql.arch.type} and {ql.os.type} for stat! Fallback to Linux x86.") | CODE |
| HIGH | qiling/os/windows/dlls/advapi32.py | 91 | # set to null, it means we have an out buffer without knowing its size | COMMENT |
| HIGH | qiling/os/windows/dlls/ntoskrnl.py | 117 | Format = "(null)" | CODE |
| HIGH | qiling/os/windows/dlls/ntoskrnl.py | 138 | Format = "(null)" | CODE |
| HIGH | qiling/os/windows/dlls/user32.py | 696 | Format = "(null)" | CODE |
| HIGH | qiling/os/windows/dlls/user32.py | 775 | Format = "(null)" | CODE |
| HIGH | qiling/os/windows/dlls/msvcrt.py | 232 | format = "(null)" | CODE |
| HIGH | qiling/os/windows/dlls/msvcrt.py | 249 | format = "(null)" | CODE |
| HIGH | qiling/os/windows/dlls/msvcrt.py | 266 | format = "(null)" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | qiling/cli.py | 89 | print("Error: please specify an input source for hex") | CODE |
| MEDIUM | qiling/cli.py | 98 | print("Error: please specify an input source for asm") | CODE |
| MEDIUM | qiling/cli.py | 112 | print("Error: please specify an input source for bin") | CODE |
| MEDIUM | qiling/extensions/idaplugin/qilingida.py | 889 | def url_download(url): | CODE |
| LOW | qiling/extensions/idaplugin/qilingida.py | 74 | except Exception as e: | CODE |
| LOW | qiling/extensions/idaplugin/qilingida.py | 81 | except Exception as e: | CODE |
| LOW | qiling/extensions/idaplugin/qilingida.py | 622 | except Exception: | CODE |
| LOW | qiling/extensions/idaplugin/qilingida.py | 915 | except Exception as e: | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 2099 | except Exception as e: | STRING |
| LOW | qiling/extensions/idaplugin/qilingida.py | 2138 | except Exception as e: | STRING |
| LOW | qiling/os/filestruct.py | 63 | except Exception: | CODE |
| LOW | qiling/os/filestruct.py | 69 | except Exception: | CODE |
| MEDIUM | qiling/os/filestruct.py | 66 | def ioctl(self, ioctl_cmd, ioctl_arg): | CODE |
| LOW | qiling/os/posix/filestruct.py | 64 | except Exception: | CODE |
| LOW | qiling/os/posix/filestruct.py | 173 | except Exception: | CODE |
| LOW | qiling/os/posix/filestruct.py | 179 | except Exception: | CODE |
| MEDIUM | qiling/os/posix/filestruct.py | 61 | def fcntl(self, cmd, arg): | CODE |
| MEDIUM | qiling/os/posix/filestruct.py | 103 | def accept(self): | CODE |
| MEDIUM | qiling/os/posix/filestruct.py | 176 | def ioctl(self, cmd, arg): | CODE |
| LOW | qiling/os/posix/posix.py | 233 | except Exception as e: | CODE |
| LOW | qiling/os/posix/kernel_proxy/__init__.py | 318 | except Exception: | CODE |
| LOW | qiling/os/posix/syscall/mman.py | 68 | except Exception as e: | CODE |
| LOW | qiling/os/posix/syscall/stat.py | 1468 | except Exception as e: | CODE |
| LOW | qiling/os/posix/syscall/poll.py | 37 | except Exception as e: | CODE |
| LOW | qiling/os/macos/kernel_api/hook.py | 28 | except Exception: | CODE |
| LOW | qiling/os/linux/kernel_api/hook.py | 28 | except Exception: | CODE |
| LOW | qiling/os/windows/registry.py | 185 | except Exception: | CODE |
| LOW | qiling/os/windows/windows.py | 190 | except Exception as ex: | CODE |
| LOW | tests/view_perf_results.py | 46 | except Exception as e: | CODE |
| LOW | tests/test_pe.py | 38 | except Exception as e: | CODE |
| MEDIUM | tests/test_pe.py | 35 | def _run_test(self, results): | CODE |
| LOW | examples/sality.py | 124 | except Exception: | CODE |
| LOW | examples/sality.py | 171 | except Exception as e: | CODE |
| LOW | examples/hello_arm_blob_raw.py | 94 | except Exception as e: | CODE |
| LOW | examples/fuzzing/rt_n12_b1/fuzz.py | 114 | except Exception: | CODE |
| LOW | examples/fuzzing/linux_x8664/libfuzzer_x8664_linux.py | 18 | except Exception as ex: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/log.py | 220 | __all__ = ['RegexFilter', 'setup_logger', 'resolve_logger_level'] | CODE |
| LOW | qiling/__init__.py | 9 | __all__ = ['Qiling'] | CODE |
| LOW | qiling/utils.py | 489 | __all__ = [ | CODE |
| LOW | qiling/const.py | 100 | __all__ = [ | CODE |
| LOW | qiling/extensions/tracing/formats/__init__.py | 2 | __all__ = ["base", "tenet"] | CODE |
| LOW | qiling/arch/cpr64.py | 93 | __all__ = ['QlCpr64Manager'] | CODE |
| LOW | qiling/arch/models.py | 438 | __all__ = [ | CODE |
| LOW | qiling/arch/cpr.py | 97 | __all__ = ['QlCprManager'] | CODE |
| LOW | qiling/arch/x86_utils.py | 128 | def set_entry(self, index: int, data: bytes) -> None: | CODE |
| LOW | qiling/debugger/gdb/xmlregs.py | 181 | __all__ = ['RegEntry', 'QlGdbFeatures'] | CODE |
| LOW | qiling/debugger/qdb/qdb.py | 296 | def set_breakpoint(self, address: int, is_temp: bool = False) -> None: | CODE |
| LOW | qiling/debugger/qdb/branch_predictor/__init__.py | 12 | __all__ = [ | CODE |
| LOW | qiling/os/posix/const_mapping.py | 205 | __all__ = [ | CODE |
| LOW | qiling/os/posix/kernel_proxy/__init__.py | 51 | __all__ = ['KernelProxy', 'INT', 'FD', 'PtrIn', 'PtrOut', 'PtrInOut'] | CODE |
| LOW | qiling/os/posix/syscall/shm.py | 153 | __all__ = [ | CODE |
| LOW | qiling/os/posix/syscall/syscall.py | 67 | __all__ = [ | CODE |
| LOW | qiling/os/posix/syscall/msg.py | 162 | __all__ = [ | CODE |
| LOW | qiling/os/posix/syscall/abi/__init__.py | 53 | def set_return_value(self, value: int) -> None: | CODE |
| LOW | qiling/os/posix/syscall/abi/mips.py | 37 | def set_return_value(self, value: int) -> None: | CODE |
| LOW | qiling/os/dos/dos.py | 65 | def set_flag_value(self, fl: Flags, val: int) -> None: | CODE |
| LOW | qiling/os/dos/interrupts/__init__.py | 35 | __all__ = ['handlers'] | CODE |
| LOW | qiling/os/qnx/structs.py | 121 | __all__ = ['_sync', '_sync_attr', '_thread_local_storage'] | CODE |
| LOW | qiling/os/uefi/rt.py | 300 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/st.py | 108 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/UefiBaseType.py | 43 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/UefiSpec.py | 249 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/UefiMultiPhase.py | 50 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/smst.py | 286 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/bs.py | 599 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/ds.py | 280 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/ProcessorBind.py | 88 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/PiMultiPhase.py | 41 | __all__ = [ | CODE |
| LOW | qiling/os/uefi/protocols/EfiLoadedImageProtocol.py | 55 | __all__ = [ | CODE |
| LOW | qiling/os/linux/thread.py | 481 | def set_thread_tls(self, tls_addr: int) -> None: | CODE |
| LOW | qiling/os/linux/thread.py | 513 | def set_thread_tls(self, tls_addr: int) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | qiling/debugger/qdb/qdb.py | 500 | fargs = [self.ql.os.fcall.cc.getRawParam(i) for i in range(argc)] | CODE |
| CRITICAL | qiling/os/posix/syscall/abi/arm.py | 32 | ibytes = self.arch.utils.ql.mem.read_ptr(self.arch.regs.arch_pc - isize, isize) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | qiling/extensions/idaplugin/qilingida.py | 1671 | # A: Emulation makes the de-obf much more robust and general and can work under less assumptions, like | STRING |
| MEDIUM | qiling/os/struct.py | 140 | """A structure context manager to facilitate updating structure contents. | STRING |
| LOW | qiling/os/posix/syscall/stat.py | 1535 | data = b"0" * (12 * 8) # for now, just return 0s | CODE |
| LOW | qiling/os/posix/syscall/stat.py | 1546 | data = b"0" * (12 * 8) # for now, just return 0s | CODE |
| LOW | qiling/os/qnx/syscall.py | 135 | # For the sake of simplicity we just return current timestamp in nanoseconds | COMMENT |
| LOW | qiling/os/uefi/rt.py | 47 | # we just use the default settings instead | COMMENT |
| LOW | qiling/os/windows/dlls/ucrtbased.py | 6 | # This dll is almost functionally identical to msvcrt, just use hooks from there | COMMENT |
| LOW | qiling/os/windows/dlls/ntdll.py | 751 | # For now, just create a dummy handle, and return it. | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/stringapiset.py | 201 | # this is a dry-run; just return the amount of chars | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/synchapi.py | 284 | # Implementation seems similar enough to Mutex to just use it | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/fileapi.py | 615 | # mapping backed my page file, for which we simply use memory. no need to do anything really | COMMENT |
| LOW | tests/test_struct.py | 38 | # we only need context and not going to run anything anyway, so just use whatever | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/os/qnx/message.py | 199 | # TODO: implement mem_ctrl | COMMENT |
| LOW | qiling/os/qnx/syscall.py | 172 | # TODO: implement proper mutexes instead of these stubs | COMMENT |
| LOW⚡ | qiling/os/qnx/syscall.py | 187 | # TODO: implement proper mutexes instead of these stubs | COMMENT |
| LOW | qiling/os/uefi/context.py | 28 | # TODO: implement save state | COMMENT |
| LOW | qiling/os/uefi/context.py | 32 | # TODO: implement restore state | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/stringapiset.py | 25 | # TODO: implement | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/stringapiset.py | 44 | # TODO: implement | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/timezoneapi.py | 18 | # TODO: implement this later. fail for now | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | qiling/extensions/multitask.py | 21 | # This class is named UnicornTask be design since it's not a | COMMENT |
| MEDIUM | qiling/extensions/multitask.py | 25 | # This class is a friend class of MultiTaskUnicorn | COMMENT |
| MEDIUM | qiling/os/windows/dlls/kernel32/fileapi.py | 69 | # Create a handle for the path | COMMENT |
| MEDIUM | examples/fuzzing/rt_n12_b1/fuzz.py | 34 | # This method is called with every fuzzing iteration. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/core.py | 36 | CODE | |
| LOW | qiling/core.py | 609 | CODE | |
| LOW | qiling/hw/spi/stm32f4xx_spi.py | 79 | CODE | |
| LOW | qiling/hw/spi/stm32f1xx_spi.py | 57 | CODE | |
| LOW | qiling/hw/dma/stm32f1xx_dma.py | 93 | CODE | |
| LOW | qiling/hw/dma/stm32f4xx_dma.py | 105 | CODE | |
| LOW | qiling/os/windows/dlls/user32.py | 21 | CODE | |
| LOW | qiling/os/windows/dlls/user32.py | 31 | CODE | |
| LOW | qiling/os/windows/dlls/msvcrt.py | 131 | CODE | |
| LOW | qiling/os/windows/dlls/kernel32/winbase.py | 209 | CODE | |
| LOW | tests/test_blob.py | 120 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/extensions/tracing/formats/tenet.py | 72 | # Check if PC changed for next delta | COMMENT |
| LOW | qiling/loader/pe.py | 137 | # Check if the PE file has an exception directory | COMMENT |
| LOW | qiling/os/posix/syscall/msg.py | 100 | # Check if the user has write permissions for the message queue | COMMENT |
| LOW | qiling/os/posix/syscall/msg.py | 129 | # Check if the user has read permissions for the message queue | COMMENT |
| LOW | qiling/os/windows/dlls/ntdll.py | 421 | # Check if dll is loaded | COMMENT |
| LOW | qiling/os/windows/dlls/kernel32/fileapi.py | 57 | # Check if path exists | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | qiling/extensions/afl/afl.py | 63 | # if we are fuzzin an arm code, make sure to take the effective pc | COMMENT |
| LOW | qiling/debugger/qdb/qdb.py | 226 | # make sure to include delay slot when branching in mips | COMMENT |
| LOW | qiling/debugger/qdb/qdb.py | 246 | # make sure to include delay slot when branching in mips | COMMENT |
| MEDIUM | qiling/os/windows/registry.py | 19 | # if you want to modify the registry key/value, you can modify config.json | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/fuzzing/rt_n12_b1/fuzz.py | 121 | # In this example, the target is MIPS32 LE | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | qiling/os/macos/subsystems.py | 162 | CODE |