Pwntools CTF framework and exploit development library.
Project description
pwntools - CTF toolkit
pwntools logo
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.
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()
Documentation
Our documentation is available at docs.pwntools.com
A series of tutorials is also available online
To get you started, we’ve provided some example solutions for past CTF challenges in our write-ups repository.
Installation
Pwntools is best supported on 64-bit Ubuntu LTE releases (14.04, 16.04, 18.04, and 20.04). Most functionality should work on any Posix-like distribution (Debian, Arch, FreeBSD, OSX, etc.). Python >= 2.7 is required (Python 3 suggested as best).
Most of the functionality of pwntools is self-contained and Python-only. You should be able to get running quickly with
apt-get update
apt-get install python3 python3-pip python3-dev git libssl-dev libffi-dev build-essential
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade pwntools
However, some of the features (assembling/disassembling foreign architectures) require non-Python dependencies. For more information, see the complete installation instructions here.
Contribution
See CONTRIBUTING.md
Contact
If you have any questions not worthy of a bug report, feel free to ping us at `#pwntools on Freenode <irc://irc.freenode.net/pwntools>`__ and ask away. Click here to connect. There is also a mailing list for higher latency discussion.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pwntools-4.4.0.tar.gz.
File metadata
- Download URL: pwntools-4.4.0.tar.gz
- Upload date:
- Size: 5.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 PyPy/7.3.3beta
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c51605b538c6394c6c31bc90bb3436224b497be1fe21a0a2420785ca399087e3
|
|
| MD5 |
66b152dea9f557564bb9110b475d32ab
|
|
| BLAKE2b-256 |
b03a00f6dfcb5647acef99ce4dd9f16e557390d2507e60263f16cbfea8873c0a
|
File details
Details for the file pwntools-4.4.0-py2.py3-none-any.whl.
File metadata
- Download URL: pwntools-4.4.0-py2.py3-none-any.whl
- Upload date:
- Size: 10.0 MB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 PyPy/7.3.3beta
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e2dd2665091555bfa8ab2bf191240ca23a19c7f7881027f8d15077b9dd86c62
|
|
| MD5 |
15ed1926155c5168d74d5e4551854e2e
|
|
| BLAKE2b-256 |
5dcb4ce87e2db33d93821b73a425c0aac7c6469206a70712008c321224e91f12
|