Unofficial fork for python 3 of pwntools, the CTF framework and exploit development library. It is designed for rapid prototyping and development, and intended to make exploit writing as simple as possible.
The official pwntools project now supports python 3, starting with pwntools 4.0beta0.
Since this repository is not maintained anymore, we recommend to use the official repository.
from pwn import *
context(arch='i386', os='linux')
r = remote('exploitme.example.com', 31337)
# EXPLOIT CODE GOES HERE
r.send(asm(shellcraft.sh()))
r.interactive()
python3-pwntools is a fork of the pwntools
project. I also merged binjitsu
into it so you can enjoy all the features of that great fork!
Our documentation is available at python3-pwntools.readthedocs.org
To get you started, we've provided some example solutions for past CTF challenges in our write-ups repository.
python3-pwntools is best supported on 64-bit Ubuntu 12.04 and 14.04, but most functionality should work on any Posix-like distribution (Debian, Arch, FreeBSD, OSX, etc.). Python 3.2 to 3.5 are supported.
Most of the functionality of python3-pwntools is self-contained and Python-only. You should be able to get running quickly with
apt-get update
apt-get install python3 python3-dev python3-pip git
pip3 install --upgrade git+https://github.com/arthaud/python3-pwntools.git
However, some of the features (assembling/disassembling foreign architectures) require non-Python dependencies. For more information, see the complete installation instructions here.
See CONTRIBUTING.md
If you have any questions not worthy of a bug report, feel free to ping
at Maxima
on Freenode and ask away.
Click here to connect.