This is the CTF framework used by Gallopsled in every CTF.
Most code is inside the pwnlib folder with some functionality inside pwn or bin. It is typically used as:
from pwn import *
context(arch = 'i386', os = 'linux')
# EXPLOIT HEREHowever we have made command-line frontends for some of the functionality inside the pwnlib. These are:
asm/disasm: Small wrapper for various assemblersconstgrep: Tool for finding constants defined in header filescyclic: De Bruijn sequence generator and lookup toolhex/unhex: Command line tools for doing common hexing/unhexing operationsshellcraft: Frontend to our shellcode
Our documentation is available on http://pwntools.readthedocs.org/
Pwntools is available as a pip package. You can install it by running
pip install pwntools.
Alternatively if you prefer to have the latest version in git, you can
simply clone this repository, run pip install -r requirements.txt
and add entries in your PATH and PYTHONPATH variables. The script
install_local.sh will help you do so, in case you are using bash.
If you have any questions not worthy of a bug report, feel free to join us
at #gallopsled on Freenode and ask away.