pwntools
is a CTF framework and exploit development library. Written in Python, it is designed for rapid prototyping and development, and intended to make exploit writing as simple as possible.
The primary location for this documentation is at docs.pwntools.com, which uses readthedocs. It comes in three primary flavors:
Each of the pwntools
modules is documented here.
pwnlib.adb
— Android Debug Bridgepwnlib.args
— Magic Command-Line Argumentspwnlib.asm
— Assembler functionspwnlib.atexception
— Callbacks on unhandled exceptionpwnlib.atexit
— Replacement for atexitpwnlib.constants
— Easy access to header file constantspwnlib.config
— Pwntools Configuration Filepwnlib.context
— Setting runtime variablespwnlib.dynelf
— Resolving remote functions using leakspwnlib.encoders
— Encoding Shellcodepwnlib.elf
— ELF Executables and Librariespwnlib.exception
— Pwnlib exceptionspwnlib.flag
— CTF Flag Managementpwnlib.fmtstr
— Format string bug exploitation toolspwnlib.gdb
— Working with GDBpwnlib.libcdb
— Libc Databasepwnlib.log
— Logging stuffpwnlib.memleak
— Helper class for leaking memorypwnlib.protocols
— Wire Protocolspwnlib.qemu
— QEMU Utilitiespwnlib.replacements
— Replacements for various functionspwnlib.rop
— Return Oriented Programmingpwnlib.rop.rop
— Return Oriented Programmingpwnlib.rop.srop
— Sigreturn Oriented Programmingpwnlib.runner
— Running Shellcodepwnlib.shellcraft
— Shellcode generationpwnlib.shellcraft.aarch64
— Shellcode for AArch64pwnlib.shellcraft.amd64
— Shellcode for AMD64pwnlib.shellcraft.arm
— Shellcode for ARMpwnlib.shellcraft.common
— Shellcode common to all architecturepwnlib.shellcraft.i386
— Shellcode for Intel 80386pwnlib.shellcraft.mips
— Shellcode for MIPSpwnlib.regsort
— Register sortingpwnlib.shellcraft.thumb
— Shellcode for Thumb Modepwnlib.term
— Terminal handlingpwnlib.timeout
— Timeout handlingpwnlib.tubes
— Talking to the World!pwnlib.tubes.process
— Processespwnlib.tubes.serialtube
— Serial Portspwnlib.tubes.sock
— Socketspwnlib.tubes.ssh
— SSHpwnlib.ui
— Functions for user interactionpwnlib.update
— Updating Pwntoolspwnlib.useragents
— A database of useragent stringspwnlib.util.crc
— Calculating CRC-sumspwnlib.util.cyclic
— Generation of unique sequencespwnlib.util.fiddling
— Utilities bit fiddlingpwnlib.util.hashes
— Hashing functionspwnlib.util.iters
— Extension of standard module itertools
pwnlib.util.lists
— Operations on listspwnlib.util.misc
— We could not fit it any other placepwnlib.util.net
— Networking interfacespwnlib.util.packing
— Packing and unpacking of stringspwnlib.util.proc
— Working with /proc/
pwnlib.util.safeeval
— Safe evaluation of python codepwnlib.util.sh_string
— Shell Expansion is Hardpwnlib.util.web
— Utilities for working with the WWW