CTF framework and exploit development library
This report presents the forensic synthetic code analysis of Gallopsled/pwntools, a Python project with 13,590 GitHub stars. SynthScan v2.0 examined 156,867 lines of code across 417 source files, recording 3932 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 20.7 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 3932 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/regsort.py | 321 | COMMENT | |
| LOW | pwnlib/regsort.py | 341 | # - Y = Z | COMMENT |
| LOW | pwnlib/log.py | 681 | # | COMMENT |
| LOW | pwnlib/libcdb.py | 1001 | """ | COMMENT |
| LOW | pwnlib/libcdb.py | 1021 | # 181 Displaying notes found at file offset 0x00000174 with length 0x00000024: | COMMENT |
| LOW | pwnlib/context/__init__.py | 1761 | self.bits = value | COMMENT |
| LOW | pwnlib/shellcraft/registers.py | 301 | # 'arm': arm, | COMMENT |
| LOW | pwnlib/rop/rop.py | 1481 | # - pop reg | COMMENT |
| LOW | pwnlib/rop/rop.py | 1561 | arg = int(add.match(insn).group(1), 16) | COMMENT |
| LOW | pwnlib/rop/gadgets.py | 1 | class Gadget: | COMMENT |
| LOW | pwnlib/rop/gadgets.py | 21 | #: | COMMENT |
| LOW | pwnlib/encoders/i386/xor.py | 1 | # Source: | COMMENT |
| LOW | pwnlib/encoders/mips/xor.py | 1 | # Source: | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 1 | #define STDIN_FILENO 0 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 21 | #define EDEADLK 11 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 41 | #define EMLINK 31 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 61 | #define EADDRNOTAVAIL 49 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 81 | #define EDQUOT 69 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 101 | #define EBADMSG 89 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 121 | #define O_NOFOLLOW 0x0100 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 141 | #define AT_SYMLINK_FOLLOW 0x400 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 161 | #define F_DUP2FD_CLOEXEC 18 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 181 | #define PROT_NONE 0x00 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 201 | #define MCL_CURRENT 0x0001 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 221 | #define MADV_PROTECT 10 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 241 | #define SIGKILL 9 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 261 | #define SIGINFO 29 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 281 | #define BUS_ADRALN 1 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 301 | #define CLD_STOPPED 5 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 321 | #define SI_ASYNCIO 0x10004 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 341 | #define SOCK_SEQPACKET 5 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 361 | #define SO_RCVLOWAT 0x1004 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 381 | #define AF_PUP 4 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 401 | #define AF_IPX 23 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 421 | #define AF_VENDOR03 45 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 441 | #define AF_VENDOR23 85 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 461 | #define AF_VENDOR43 125 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 481 | #define PF_DECnet 12 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 501 | #define PF_SLOW 33 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 521 | #define MSG_NOTIFICATION 0x2000 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 541 | #define S_ISUID 0x800 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 561 | #define S_IFCHR 0x2000 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 581 | #define SF_IMMUTABLE 0x00020000 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 601 | #define SYS_freebsd4_getfsstat 18 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 621 | #define SYS_dup 41 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 641 | #define SYS_sbrk 69 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 661 | #define SYS_socket 97 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 681 | #define SYS_shutdown 134 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 701 | #define SYS_msgsys 170 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 721 | #define SYS_freebsd6_truncate 200 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 741 | #define SYS_clock_gettime 232 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 761 | #define SYS_netbsd_lchown 275 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 781 | #define SYS_kldfirstmod 309 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 801 | #define SYS_sched_get_priority_max 332 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 821 | #define SYS___acl_delete_fd 352 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 841 | #define SYS___mac_set_proc 385 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 861 | #define SYS_ksem_unlink 406 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 881 | #define SYS_sigwait 429 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 901 | #define SYS_setaudit 450 | COMMENT |
| LOW | pwnlib/data/includes/freebsd.h | 921 | #define SYS_sctp_generic_recvmsg 474 | COMMENT |
| 3175 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/runner.py | 3 | CODE | |
| LOW | pwnlib/regsort.py | 4 | CODE | |
| LOW | pwnlib/log.py | 94 | CODE | |
| LOW | pwnlib/timeout.py | 4 | CODE | |
| LOW | pwnlib/__init__.py | 1 | CODE | |
| LOW | pwnlib/__init__.py | 41 | CODE | |
| LOW | pwnlib/args.py | 52 | CODE | |
| LOW | pwnlib/gdb.py | 145 | CODE | |
| LOW | pwnlib/fmtstr.py | 96 | CODE | |
| LOW | pwnlib/fmtstr.py | 103 | CODE | |
| LOW | pwnlib/fmtstr.py | 106 | CODE | |
| LOW | pwnlib/libc/__init__.py | 4 | CODE | |
| LOW | pwnlib/libc/glibc.py | 4 | CODE | |
| LOW | pwnlib/flag/__init__.py | 1 | CODE | |
| LOW | pwnlib/util/misc.py | 2 | CODE | |
| LOW | pwnlib/util/misc.py | 9 | CODE | |
| LOW | pwnlib/util/misc.py | 21 | CODE | |
| LOW | pwnlib/util/fiddling.py | 5 | CODE | |
| LOW | pwnlib/util/fiddling.py | 19 | CODE | |
| LOW | pwnlib/util/iters.py | 5 | CODE | |
| LOW | pwnlib/util/iters.py | 12 | CODE | |
| LOW | pwnlib/util/proc.py | 2 | CODE | |
| LOW | pwnlib/util/packing.py | 32 | CODE | |
| LOW | pwnlib/util/sh_string.py | 241 | CODE | |
| LOW | pwnlib/util/sh_string.py | 246 | CODE | |
| LOW | pwnlib/term/term.py | 3 | CODE | |
| LOW | pwnlib/term/term.py | 5 | CODE | |
| LOW | pwnlib/term/term.py | 8 | CODE | |
| LOW | pwnlib/term/term.py | 15 | CODE | |
| LOW | pwnlib/term/__init__.py | 3 | CODE | |
| LOW | pwnlib/term/termcap.py | 4 | CODE | |
| LOW | pwnlib/term/termcap.py | 6 | CODE | |
| LOW | pwnlib/filesystem/__init__.py | 4 | CODE | |
| LOW | pwnlib/filesystem/__init__.py | 5 | CODE | |
| LOW | pwnlib/filesystem/ssh.py | 7 | CODE | |
| LOW | pwnlib/filesystem/ssh.py | 8 | CODE | |
| LOW | pwnlib/filesystem/ssh.py | 9 | CODE | |
| LOW | pwnlib/filesystem/ssh.py | 15 | CODE | |
| LOW | pwnlib/filesystem/path.py | 3 | CODE | |
| LOW | pwnlib/shellcraft/internal.py | 1 | CODE | |
| LOW | pwnlib/shellcraft/registers.py | 1 | CODE | |
| LOW | pwnlib/shellcraft/__init__.py | 164 | CODE | |
| LOW | pwnlib/commandline/constgrep.py | 8 | CODE | |
| LOW | pwnlib/commandline/update.py | 7 | CODE | |
| LOW | pwnlib/commandline/errno.py | 1 | CODE | |
| LOW | pwnlib/commandline/disasm.py | 1 | CODE | |
| LOW | pwnlib/commandline/disasm.py | 9 | CODE | |
| LOW | pwnlib/commandline/version.py | 8 | CODE | |
| LOW | pwnlib/commandline/unhex.py | 1 | CODE | |
| LOW | pwnlib/commandline/scramble.py | 7 | CODE | |
| LOW | pwnlib/commandline/libcdb.py | 9 | CODE | |
| LOW | pwnlib/commandline/phd.py | 10 | CODE | |
| LOW | pwnlib/commandline/checksec.py | 1 | CODE | |
| LOW | pwnlib/commandline/checksec.py | 2 | CODE | |
| LOW | pwnlib/commandline/checksec.py | 4 | CODE | |
| LOW | pwnlib/commandline/disablenx.py | 2 | CODE | |
| LOW | pwnlib/commandline/shellcraft.py | 4 | CODE | |
| LOW | pwnlib/commandline/shellcraft.py | 9 | CODE | |
| LOW | pwnlib/commandline/asm.py | 7 | CODE | |
| LOW | pwnlib/commandline/hex.py | 1 | CODE | |
| 237 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | pwnlib/regsort.py | 347 | # ╰──────── ← ────────╯ | COMMENT |
| MEDIUM | pwnlib/regsort.py | 395 | # ╰──────── ← ────────╯ | COMMENT |
| MEDIUM | pwnlib/regsort.py | 405 | # ╰──────── ← ────────╯ | COMMENT |
| MEDIUM | pwnlib/encoders/arm/alphanumeric/random_funcs.py | 13 | # ================================== | COMMENT |
| MEDIUM | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 21 | # ==================================== | COMMENT |
| MEDIUM | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 47 | # ====================================== | COMMENT |
| MEDIUM | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 66 | # ========================================== | COMMENT |
| MEDIUM | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 89 | # ================================= | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 108 | # ============================ | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 113 | # ============================ | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 118 | # ============== | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 128 | # ============ | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/ARM_Instructions.py | 133 | # =========================================================================== | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 12 | # ==================================== | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 20 | # ================================= | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 25 | # ========================================================== | COMMENT |
| MEDIUM⚡ | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 34 | # ======================================================================= | COMMENT |
| MEDIUM | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 45 | # ========================================================================= | COMMENT |
| MEDIUM⚡ | extra/docker/develop/ipython_config.py | 5 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | extra/docker/develop/ipython_config.py | 7 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | extra/docker/develop/ipython_config.py | 437 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | extra/docker/develop/ipython_config.py | 439 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 100 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 102 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 202 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 204 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 359 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 361 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 380 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 382 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 421 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 423 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 489 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 491 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 529 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 531 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 553 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 555 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | travis/docker/ipython_config.py | 5 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | travis/docker/ipython_config.py | 7 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | travis/docker/ipython_config.py | 437 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | travis/docker/ipython_config.py | 439 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 100 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 102 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 202 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 204 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 359 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 361 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 380 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 382 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 421 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 423 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 489 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 491 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 529 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 531 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 553 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 555 | #------------------------------------------------------------------------------ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | pwnlib/windbg.py | 254 | attach(target, dbgscript=None, dbg_args=[]) -> int Attach to a running process with WinDbg or x64dbg. Argument | STRING |
| HIGH | pwnlib/gdb.py | 423 | Launch a GDB server with the specified command line, and launches GDB to attach to it. Arguments: | STRING |
| HIGH | pwnlib/gdb.py | 945 | Start GDB in a new terminal and attach to `target`. Arguments: target: The target to attach to. | STRING |
| HIGH | pwnlib/context/__init__.py | 524 | local(**kwargs) -> context manager Create a context manager for use with the ``with`` statement. For m | STRING |
| HIGH | pwnlib/util/iters.py | 298 | repeat_func(func, *args, **kwargs) -> iterator Repeatedly calls `func` with positional arguments `args` and keyword | STRING |
| HIGH | pwnlib/util/iters.py | 563 | random_product(*args, repeat = 1) -> tuple Arguments: args: One or more iterables repeat(int): Number | STRING |
| HIGH | pwnlib/util/packing.py | 47 | pack(number, word_size = None, endianness = None, sign = None, **kwargs) -> str Packs arbitrary-sized integer. | STRING |
| HIGH | pwnlib/util/packing.py | 163 | unpack(data, word_size = None, *, endianness = None, sign = None, **kwargs) -> int Unpacks arbitrary-sized integer. | STRING |
| HIGH | pwnlib/util/packing.py | 237 | unpack_many(data, word_size = None, *, endianness = None, sign = None) -> int list Splits `data` into groups of ``w | STRING |
| HIGH | pwnlib/util/packing.py | 654 | make_packer(word_size = None, endianness = None, sign = None) -> number → str Creates a packer by "freezing" the gi | STRING |
| HIGH | pwnlib/util/packing.py | 718 | make_unpacker(word_size = None, endianness = None, sign = None, **kwargs) -> str → number Creates an unpacker by " | STRING |
| HIGH | pwnlib/util/packing.py | 1363 | overlap(*structs: bytes | tuple[bytes, int]) -> bytes Merge multiple byte sequences with possible positional offset | STRING |
| HIGH | pwnlib/tubes/tube.py | 108 | recv(numb = 4096, timeout = default) -> bytes Receives up to `numb` bytes of data from the tube, and returns | STRING |
| HIGH | pwnlib/tubes/tube.py | 215 | recvpred(pred, timeout = default) -> bytes Receives one byte at a time from the tube, until ``pred(all_bytes)`` | STRING |
| HIGH | pwnlib/tubes/tube.py | 269 | recvn(numb, timeout = default) -> bytes Receives exactly `n` bytes. If the request is not satisfied be | STRING |
| HIGH | pwnlib/tubes/tube.py | 315 | recvuntil(delims, drop=False, timeout=default) -> bytes Receive data until one of `delims` is encountered. | STRING |
| HIGH | pwnlib/tubes/tube.py | 405 | recvlines(numlines, drop=True, timeout=default) -> list of bytes objects Receive up to ``numlines`` lines. | STRING |
| HIGH | pwnlib/encoders/i386/ascii_shellcode.py | 48 | Pack shellcode into only ascii characters that unpacks itself and executes (on the stack) Args: | STRING |
| HIGH | pwnlib/encoders/i386/ascii_shellcode.py | 113 | Allocate enough space on the stack for the shellcode int_size is taken from the context Args: | STRING |
| HIGH | pwnlib/encoders/i386/ascii_shellcode.py | 154 | Find two bitwise negatives in the vocab so that when they are and-ed the result is 0. int_size is take | STRING |
| HIGH | pwnlib/encoders/i386/ascii_shellcode.py | 192 | Covert the sellcode to sub eax and posh eax instructions int_size is taken from the context Args: | STRING |
| HIGH | pwnlib/encoders/i386/ascii_shellcode.py | 229 | Given `target` and `last`, return a list of integers that when subtracted from `last` will equal `target` whil | STRING |
| HIGH | pwnlib/elf/elf.py | 1274 | search(needle, writable = False, executable = False) -> generator Search the ELF's virtual address space for th | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/update.py | 44 | CODE | |
| LOW | pwnlib/ui.py | 47 | CODE | |
| LOW | pwnlib/ui.py | 127 | CODE | |
| LOW | pwnlib/ui.py | 254 | CODE | |
| LOW | pwnlib/libcdb.py | 335 | CODE | |
| LOW | pwnlib/windbg.py | 146 | CODE | |
| LOW | pwnlib/dynelf.py | 515 | CODE | |
| LOW | pwnlib/dynelf.py | 1007 | CODE | |
| LOW | pwnlib/asm.py | 154 | CODE | |
| LOW | pwnlib/asm.py | 750 | CODE | |
| LOW | pwnlib/useragents.py | 11 | CODE | |
| LOW | pwnlib/gdb.py | 944 | CODE | |
| LOW | pwnlib/memleak.py | 171 | CODE | |
| LOW | pwnlib/util/misc.py | 144 | CODE | |
| LOW | pwnlib/util/misc.py | 268 | CODE | |
| LOW | pwnlib/util/fiddling.py | 97 | CODE | |
| LOW | pwnlib/util/fiddling.py | 326 | CODE | |
| LOW | pwnlib/util/fiddling.py | 630 | CODE | |
| LOW | pwnlib/util/fiddling.py | 1052 | CODE | |
| LOW | pwnlib/util/lists.py | 37 | CODE | |
| LOW | pwnlib/util/iters.py | 869 | CODE | |
| LOW | pwnlib/util/proc.py | 17 | CODE | |
| LOW | pwnlib/util/proc.py | 295 | CODE | |
| LOW | pwnlib/util/proc.py | 395 | CODE | |
| LOW | pwnlib/util/packing.py | 46 | CODE | |
| LOW | pwnlib/util/packing.py | 853 | CODE | |
| LOW | pwnlib/util/packing.py | 1109 | CODE | |
| LOW | pwnlib/util/packing.py | 1362 | CODE | |
| LOW | pwnlib/util/sh_string.py | 275 | CODE | |
| LOW | pwnlib/util/cyclic.py | 134 | CODE | |
| LOW | pwnlib/util/splash.py | 26 | CODE | |
| LOW | pwnlib/util/splash.py | 30 | CODE | |
| LOW | pwnlib/util/crc/known.py | 5 | CODE | |
| LOW | pwnlib/util/crc/known.py | 18 | CODE | |
| LOW | pwnlib/term/readline.py | 52 | CODE | |
| LOW | pwnlib/term/readline.py | 69 | CODE | |
| LOW | pwnlib/term/readline.py | 99 | CODE | |
| LOW | pwnlib/term/readline.py | 159 | CODE | |
| LOW | pwnlib/term/readline.py | 367 | CODE | |
| LOW | pwnlib/term/term.py | 167 | CODE | |
| LOW | pwnlib/term/term.py | 247 | CODE | |
| LOW | pwnlib/term/term.py | 275 | CODE | |
| LOW | pwnlib/term/key.py | 20 | CODE | |
| LOW | pwnlib/term/key.py | 184 | CODE | |
| LOW | pwnlib/term/key.py | 224 | CODE | |
| LOW | pwnlib/term/key.py | 429 | CODE | |
| LOW | pwnlib/term/key.py | 117 | CODE | |
| LOW | pwnlib/term/keymap.py | 34 | CODE | |
| LOW | pwnlib/term/keymap.py | 58 | CODE | |
| LOW | pwnlib/term/unix_termcap.py | 8 | CODE | |
| LOW | pwnlib/term/text.py | 25 | CODE | |
| LOW | pwnlib/term/text.py | 110 | CODE | |
| LOW | pwnlib/shellcraft/__init__.py | 45 | CODE | |
| LOW | pwnlib/commandline/constgrep.py | 58 | CODE | |
| LOW | pwnlib/commandline/libcdb.py | 225 | CODE | |
| LOW | pwnlib/commandline/shellcraft.py | 176 | CODE | |
| LOW | pwnlib/commandline/debug.py | 51 | CODE | |
| LOW | pwnlib/commandline/template.py | 34 | CODE | |
| LOW | pwnlib/commandline/template.py | 114 | CODE | |
| LOW | pwnlib/adb/adb.py | 402 | CODE | |
| 41 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | pwnlib/gdb.py | 202 | adb.push(tmp_elf, android_path) | STRING |
| HIGH | pwnlib/gdb.py | 239 | adb.push(tmp_elf, android_path) | STRING |
| HIGH | pwnlib/gdb.py | 1007 | >>> io.sendline(b'echo Hello from bash && exit') | CODE |
| HIGH | pwnlib/gdb.py | 1034 | >>> io.sendline(b'echo Hello from bash && exit') | CODE |
| HIGH | pwnlib/gdb.py | 1055 | >>> io.sendline(b'echo Hello from bash && exit') | CODE |
| HIGH | pwnlib/gdb.py | 1078 | >>> gdbserver.sendline(b'echo Hello from bash && exit') | CODE |
| HIGH | pwnlib/filepointer.py | 282 | self.setdefault(null) | STRING |
| HIGH | pwnlib/filepointer.py | 351 | def setdefault(self,null): | STRING |
| HIGH | pwnlib/context/__init__.py | 94 | >>> t.push() | STRING |
| HIGH | pwnlib/context/__init__.py | 555 | self._tls.push() | STRING |
| HIGH | pwnlib/util/misc.py | 627 | tube.sendline('which python || echo') | CODE |
| HIGH | pwnlib/util/misc.py | 632 | tube.sendline('which perl || echo') | CODE |
| HIGH | pwnlib/adb/adb.py | 564 | >>> adb.push('./filename', '/data/local/tmp') | STRING |
| HIGH | pwnlib/adb/adb.py | 568 | >>> adb.push('./filename', '/does/not/exist') | STRING |
| HIGH | pwnlib/adb/adb.py | 1388 | >>> sent = adb.push(filename, "/data/local/tmp") | CODE |
| HIGH | pwnlib/tubes/tube.py | 1200 | self.sendlineafter(end_markerb, "command -v {} && echo YEP || echo NOPE{}".format(utility, echo_end).enc | STRING |
| HIGH | pwnlib/tubes/ssh.py | 1396 | cmd = '(sha256 || sha256sum || openssl sha256) 2>/dev/null < ' | CODE |
| HIGH | pwnlib/tubes/ssh.py | 1703 | untar = self.system(b'cd %s && tar -xzf %s' % (sh_string(remote), sh_string(remote_tar))) | CODE |
| HIGH | pwnlib/tubes/ssh.py | 1929 | wd, status = self.run_to_end('x=$(mktemp -d) && cd $x && chmod +x . && echo $PWD', cwd='.') | CODE |
| HIGH | pwnlib/tubes/ssh.py | 1066 | script = 'echo PWNTOOLS; for py in python3 python2.7 python2 python; do test -x "$(command -v $py 2>&1)" && | STRING |
| HIGH | pwnlib/data/syscalls/generate.py | 121 | ${{pwnlib.shellcraft.push(arg)}} | STRING |
| HIGH | pwnlib/elf/elf.py | 2013 | return (!cpu_has_rixi && exstack == EXSTACK_DEFAULT); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/update.py | 156 | except Exception: | CODE |
| LOW⚡ | pwnlib/libcdb.py | 669 | except Exception as e: | CODE |
| LOW⚡ | pwnlib/libcdb.py | 677 | except Exception: | CODE |
| LOW | pwnlib/windbg.py | 163 | except Exception: | CODE |
| LOW | pwnlib/atexit.py | 91 | except Exception: | CODE |
| LOW | pwnlib/gdb_api_bridge.py | 54 | except Exception as exc: | CODE |
| LOW | pwnlib/asm.py | 680 | except Exception: | STRING |
| LOW | pwnlib/asm.py | 893 | except Exception: | STRING |
| LOW | pwnlib/asm.py | 996 | except Exception: | STRING |
| LOW | pwnlib/atexception.py | 101 | except Exception: | CODE |
| LOW | pwnlib/memleak.py | 193 | except Exception as e: | STRING |
| LOW | pwnlib/flag/flag.py | 68 | except Exception: | CODE |
| LOW | pwnlib/util/misc.py | 911 | except Exception: | CODE |
| LOW | pwnlib/util/misc.py | 957 | except Exception: | CODE |
| LOW | pwnlib/util/misc.py | 963 | except Exception: | CODE |
| LOW | pwnlib/util/proc.py | 89 | except Exception: | CODE |
| LOW | pwnlib/util/proc.py | 128 | except Exception: | CODE |
| LOW | pwnlib/term/readline.py | 40 | except Exception: | CODE |
| LOW | pwnlib/term/key.py | 18 | except Exception: _fd = os.open(os.devnull, os.O_RDONLY) | CODE |
| LOW | pwnlib/term/completer.py | 108 | except Exception: | CODE |
| LOW | pwnlib/internal/dochelper.py | 26 | except Exception: | CODE |
| LOW | pwnlib/commandline/checksec.py | 35 | except Exception as e: | CODE |
| LOW⚡ | pwnlib/commandline/common.py | 15 | except Exception: pass | CODE |
| LOW⚡ | pwnlib/commandline/common.py | 17 | except Exception: pass | CODE |
| LOW⚡ | pwnlib/commandline/common.py | 19 | except Exception: arg | CODE |
| LOW⚡ | pwnlib/commandline/common.py | 21 | except Exception: pass | CODE |
| LOW | pwnlib/commandline/template.py | 158 | except Exception as e: | CODE |
| LOW | pwnlib/commandline/template.py | 191 | except Exception: | CODE |
| LOW | pwnlib/adb/adb.py | 424 | except Exception: | CODE |
| LOW | pwnlib/tubes/tube.py | 256 | except Exception: | STRING |
| LOW | pwnlib/tubes/tube.py | 375 | except Exception: | STRING |
| LOW | pwnlib/tubes/tube.py | 452 | except Exception: | STRING |
| LOW | pwnlib/tubes/tube.py | 612 | except Exception: | STRING |
| LOW⚡ | pwnlib/tubes/process.py | 449 | except Exception: | STRING |
| LOW⚡ | pwnlib/tubes/process.py | 458 | except Exception: | STRING |
| LOW⚡ | pwnlib/tubes/process.py | 465 | except Exception: | STRING |
| LOW⚡ | pwnlib/tubes/process.py | 472 | except Exception: | STRING |
| LOW⚡ | pwnlib/tubes/process.py | 480 | except Exception: | STRING |
| LOW | pwnlib/tubes/process.py | 568 | except Exception: | STRING |
| MEDIUM | pwnlib/tubes/ssh.py | 549 | def sock(self): | CODE |
| LOW | pwnlib/tubes/ssh.py | 514 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 524 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 724 | except Exception as e: | CODE |
| LOW | pwnlib/tubes/ssh.py | 805 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 810 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 834 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2014 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2025 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2036 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2052 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2061 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2109 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 2118 | except Exception: | CODE |
| LOW | pwnlib/tubes/ssh.py | 422 | except Exception: | STRING |
| LOW | pwnlib/tubes/ssh.py | 476 | except Exception as e: | STRING |
| LOW | pwnlib/tubes/ssh.py | 489 | except Exception as e: | STRING |
| LOW | pwnlib/tubes/ssh.py | 2004 | except Exception: | STRING |
| LOW | pwnlib/protocols/adb/__init__.py | 103 | except Exception: | CODE |
| LOW⚡ | pwnlib/elf/corefile.py | 1341 | except Exception: | CODE |
| LOW⚡ | pwnlib/elf/corefile.py | 1347 | except Exception: | CODE |
| 15 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | pwnlib/windbg.py | 112 | # Create a new process, and stop it at 'main' | STRING |
| MEDIUM | pwnlib/dynelf.py | 761 | # Create a fake leaker which just leaks out of the 'loaded' ELF | COMMENT |
| MEDIUM | pwnlib/asm.py | 830 | # Create a temporary copy of the cached file to avoid modification. | STRING |
| MEDIUM | pwnlib/gdb.py | 275 | # Create a temporary file to hold the script | STRING |
| MEDIUM | pwnlib/fmtstr.py | 89 | # Create a FmtStr object and give to him the function | COMMENT |
| MEDIUM | pwnlib/util/misc.py | 225 | # Create a duplicate so we can modify it | COMMENT |
| MEDIUM | pwnlib/util/misc.py | 241 | # Create a duplicate so we can modify it safely | COMMENT |
| MEDIUM | pwnlib/util/cyclic.py | 372 | >>> g = cyclic_gen() # Create a generator | STRING |
| MEDIUM | pwnlib/constants/__init__.py | 158 | # Create the module structure | COMMENT |
| MEDIUM | pwnlib/shellcraft/__init__.py | 47 | # Create a dictionary of submodules | COMMENT |
| MEDIUM | pwnlib/shellcraft/__init__.py | 169 | # Create the module structure | COMMENT |
| MEDIUM | pwnlib/adb/adb.py | 1350 | # Create the directories | STRING |
| MEDIUM | pwnlib/tubes/process.py | 319 | # Create the PTY if necessary | STRING |
| MEDIUM | pwnlib/elf/elf.py | 1591 | # Create a new view of memory, for just what we need | STRING |
| MEDIUM | pwnlib/elf/elf.py | 2616 | # Create a copy of the ELF to patch instead of the original file. | STRING |
| MEDIUM | docs/source/conf.py | 4 | # This file is execfile()d with the current directory set to its containing dir. | COMMENT |
| MEDIUM⚡ | extra/docker/develop/ipython_config.py | 14 | # The following methods should be called by the :meth:`initialize` method of the | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 115 | # Create a massive crash report when IPython encounters what may be an internal | COMMENT |
| MEDIUM | travis/ssh_setup.sh | 27 | # Create the new user account | COMMENT |
| MEDIUM⚡ | travis/docker/ipython_config.py | 14 | # The following methods should be called by the :meth:`initialize` method of the | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 115 | # Create a massive crash report when IPython encounters what may be an internal | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/exception.py | 1 | __all__ = ['PwnlibException'] | CODE |
| LOW | pwnlib/runner.py | 9 | __all__ = ['run_assembly', 'run_shellcode', 'run_assembly_exitcode', 'run_shellcode_exitcode'] | CODE |
| LOW | pwnlib/log.py | 113 | __all__ = [ | CODE |
| LOW | pwnlib/libcdb.py | 1049 | __all__ = ['get_build_id_offsets', 'search_by_build_id', 'search_by_sha1', 'search_by_sha256', 'search_by_md5', 'search_ | CODE |
| LOW | pwnlib/__init__.py | 7 | __all__ = [ | CODE |
| LOW | pwnlib/atexit.py | 18 | __all__ = ['register', 'unregister'] | CODE |
| LOW | pwnlib/asm.py | 65 | __all__ = ['asm', 'cpp', 'disasm', 'make_elf', 'make_elf_from_assembly'] | STRING |
| LOW | pwnlib/useragents.py | 4 | __all__ = ['getall', 'random'] | CODE |
| LOW | pwnlib/atexception.py | 13 | __all__ = ['register', 'unregister'] | CODE |
| LOW | pwnlib/memleak.py | 11 | __all__ = ['MemLeak', 'RelativeMemLeak'] | CODE |
| LOW | pwnlib/libc/__init__.py | 6 | __all__ = ['glibc'] | CODE |
| LOW | pwnlib/flag/__init__.py | 3 | __all__ = [ | CODE |
| LOW | pwnlib/context/__init__.py | 29 | __all__ = ['context', 'ContextType', 'Thread'] | CODE |
| LOW | pwnlib/util/iters.py | 17 | __all__ = [ | CODE |
| LOW | pwnlib/util/net.py | 9 | __all__ = ['getifaddrs', 'interfaces', 'interfaces4', 'interfaces6', 'sockaddr'] | CODE |
| LOW | pwnlib/util/__init__.py | 1 | __all__ = [ | CODE |
| LOW | pwnlib/term/term.py | 21 | __all__ = ['output', 'init'] | CODE |
| LOW | pwnlib/term/key.py | 11 | __all__ = ['getch', 'getraw', 'get', 'unget'] | CODE |
| LOW | pwnlib/term/keymap.py | 3 | __all__ = ['Keymap'] | CODE |
| LOW | pwnlib/term/unix_termcap.py | 1 | __all__ = ['get'] | CODE |
| LOW | pwnlib/term/spinners.py | 1 | __all__ = ['spinners'] | CODE |
| LOW | pwnlib/term/termcap.py | 1 | __all__ = ['get'] | CODE |
| LOW | pwnlib/term/windows_termcap.py | 10 | __all__ = ['get'] | CODE |
| LOW | pwnlib/filesystem/__init__.py | 7 | __all__ = ['SSHPath', 'Path'] | CODE |
| LOW | pwnlib/filesystem/ssh.py | 780 | __all__ = ['SSHPath'] | STRING |
| LOW | pwnlib/shellcraft/internal.py | 8 | __all__ = ['make_function'] | CODE |
| LOW | pwnlib/commandline/__init__.py | 1 | __all__ = [ | CODE |
| LOW | pwnlib/tubes/__init__.py | 21 | __all__ = ['tube', 'sock', 'remote', 'listen', 'process', 'serialtube', 'server', 'ssh'] | CODE |
| LOW | pwnlib/rop/rop.py | 434 | __all__ = ['ROP'] | STRING |
| LOW | pwnlib/encoders/amd64/delta.py | 44 | __all__ = ['encode'] | STRING |
| LOW | pwnlib/elf/elf.py | 93 | __all__ = ['load', 'ELF'] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/libcdb.py | 26 | def _turbofast_extract_build_id(path): | CODE |
| LOW | pwnlib/libcdb.py | 557 | def _find_libc_package_lib_url(libc: ELF, extra_mirrors: list[str] | None = None) -> Generator[str, None, None]: | CODE |
| LOW⚡ | pwnlib/libcdb.py | 685 | def _handle_multiple_matching_libcs(matching_libcs): | CODE |
| LOW | pwnlib/gdb_api_bridge.py | 92 | def exposed_set_finish_breakpoint(self, client, has_stop, has_out_of_scope, *args, **kwargs): | CODE |
| LOW | pwnlib/asm.py | 103 | def print_binutils_instructions(util, context): | STRING |
| LOW | pwnlib/fmtstr.py | 358 | def find_min_hamming_in_range_step(prev, step, carry, strict): | STRING |
| LOW | pwnlib/fmtstr.py | 416 | def find_min_hamming_in_range(maxbytes, lower, upper, target): | STRING |
| LOW | pwnlib/context/__init__.py | 1536 | def throw_eof_on_incomplete_line(self, v): | STRING |
| LOW | pwnlib/util/fiddling.py | 625 | def update_cyclic_pregenerated(size): | CODE |
| LOW | pwnlib/util/iters.py | 633 | def random_combination_with_replacement(iterable, r): | CODE |
| LOW | pwnlib/commandline/libcdb.py | 210 | def collect_synthetic_symbols(exe): | CODE |
| LOW | pwnlib/commandline/shellcraft.py | 172 | def is_not_a_syscall_template(name): | CODE |
| LOW | pwnlib/commandline/template.py | 34 | def get_docker_image_libraries(): | CODE |
| LOW | pwnlib/adb/adb.py | 303 | def __do_deferred_initialization(self): | CODE |
| LOW | pwnlib/adb/adb.py | 498 | def _create_adb_push_pull_callback(w): | CODE |
| LOW | pwnlib/tubes/process.py | 909 | def __pty_make_controlling_tty(self, tty_fd): | STRING |
| LOW | pwnlib/tubes/ssh.py | 1413 | def _verify_local_fingerprint(self, fingerprint): | CODE |
| LOW | pwnlib/tubes/ssh.py | 1962 | def _init_remote_platform_info(self): | CODE |
| LOW⚡ | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 27 | def alphanumeric_get_byte_ltmax(max): | CODE |
| LOW | pwnlib/encoders/arm/alphanumeric/alphanum_byte.py | 46 | def alphanumeric_get_complement(c): | CODE |
| LOW⚡ | pwnlib/elf/corefile.py | 1356 | def systemd_coredump_corefile(self): | CODE |
| LOW | pwnlib/elf/corefile.py | 1282 | def apport_crash_extract_corefile(self, crashfile_data): | CODE |
| LOW | pwnlib/elf/corefile.py | 1383 | def wsl_capture_crash_corefile(self): | CODE |
| LOW | pwnlib/elf/elf.py | 994 | def _populate_synthetic_symbols(self): | STRING |
| LOW | pwnlib/elf/plt.py | 56 | def __ensure_memory_to_run_unicorn(): | CODE |
| LOW | pwnlib/elf/plt.py | 77 | def prepare_unicorn_and_context(elf, got, address, data): | CODE |
| LOW | pwnlib/elf/plt.py | 159 | def emulate_plt_instructions_inner(uc, elf, got, pc, data): | CODE |
| LOW | extra/docker/develop/ipython_config.py | 51 | def continuation_prompt_tokens(self, cli=None, width=None): | CODE |
| LOW | travis/docker/ipython_config.py | 51 | def continuation_prompt_tokens(self, cli=None, width=None): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/elf/corefile.py | 379 | Don't forget to call :meth:`.ELF.save` to save the changes to disk. | CODE |
| MEDIUM⚡ | extra/docker/develop/ipython_config.py | 446 | # printers. Here is a simple example:: | COMMENT |
| MEDIUM | extra/docker/develop/ipython_config.py | 344 | # Set the size of the output cache. The default is 1000, you can change it | COMMENT |
| MEDIUM⚡ | travis/docker/ipython_config.py | 446 | # printers. Here is a simple example:: | COMMENT |
| MEDIUM | travis/docker/ipython_config.py | 344 | # Set the size of the output cache. The default is 1000, you can change it | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/libcdb.py | 159 | # Check if the local system libc matches the requested hash. | COMMENT |
| LOW | pwnlib/libcdb.py | 226 | # Check if all symbols have been matched | COMMENT |
| LOW | pwnlib/libcdb.py | 387 | # Check if we tried this buildid before. | COMMENT |
| LOW | pwnlib/libcdb.py | 776 | # Check if no matches are found | COMMENT |
| LOW | pwnlib/util/misc.py | 251 | # Check if = is in the key, Required check since we sometimes call ctypes.execve directly | COMMENT |
| LOW | pwnlib/commandline/constgrep.py | 91 | # Check if the value has proper type | COMMENT |
| LOW | pwnlib/commandline/template.py | 150 | # Check if the binary is statically linked before trying to extract libraries from Docker | COMMENT |
| LOW | pwnlib/tubes/process.py | 729 | # Check if process is still running. | STRING |
| LOW | pwnlib/encoders/i386/ascii_shellcode.py | 135 | # Set target to the `size` arg | STRING |
| LOW | pwnlib/elf/elf.py | 889 | # Close the file descriptor so that it may be executed | STRING |
| LOW | pwnlib/elf/elf.py | 2631 | # Set RUNPATH to library path in order to find other libraries. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/log.py | 628 | # if 'pwnlib_msgtype' is not set (or set to `None`) we just return the | COMMENT |
| MEDIUM | pwnlib/timeout.py | 49 | self.obj._timeout = self.timeout # leverage validation | CODE |
| LOW | pwnlib/tubes/process.py | 650 | # Normally we could just use PIPE and be happy. | STRING |
| MEDIUM | pwnlib/tubes/process.py | 742 | # In order to facilitate retrieving core files, force an update | STRING |
| LOW | pwnlib/tubes/ssh.py | 426 | # If we never completely started up, just use the parent implementation | STRING |
| LOW | pwnlib/rop/rop.py | 1277 | # If we can find a function with that name, just call it | STRING |
| LOW | pwnlib/data/includes/generator/freebsd/sys/errno.h | 188 | #define EJUSTRETURN (-2) /* don't modify regs, just return */ | COMMENT |
| LOW | pwnlib/data/includes/generator/freebsd/sys/socket.h | 105 | #define SO_DONTROUTE 0x0010 /* just use interface addresses */ | COMMENT |
| LOW | pwnlib/elf/corefile.py | 841 | # No embedded siginfo structure, so just return the | COMMENT |
| LOW | pwnlib/elf/elf.py | 825 | # Any existing files we can just use | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pwnlib/gdb.py | 285 | CODE | |
| LOW | pwnlib/gdb.py | 421 | CODE | |
| LOW | pwnlib/fmtstr.py | 835 | CODE | |
| LOW | pwnlib/util/misc.py | 756 | CODE | |
| LOW | pwnlib/util/fiddling.py | 630 | CODE | |
| LOW | pwnlib/util/fiddling.py | 794 | CODE | |
| LOW | pwnlib/tubes/serialtube.py | 14 | CODE | |
| LOW | pwnlib/tubes/process.py | 237 | CODE | |
| LOW | pwnlib/tubes/ssh.py | 600 | CODE | |
| LOW | pwnlib/tubes/ssh.py | 874 | CODE | |
| LOW | pwnlib/tubes/ssh.py | 1408 | CODE | |
| LOW | pwnlib/rop/rop.py | 1657 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | pwnlib/regsort.py | 337 | # In this example below, X, Y, or Z cannot be a temporary register, | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | pwnlib/data/includes/generator/freebsd/sys/mman.h | 69 | #define MAP_FIXED 0x0010 /* map addr must be exactly as requested */ | COMMENT |