https://github.com/Gallopsled/pwntools
CTF framework and exploit development library
https://github.com/Gallopsled/pwntools
assembly bsd capture-the-flag ctf ctf-framework defcon exploit hacktoberfest linux pwnable pwntools python python2 python3 rop shellcode shellcode-development shellcoding wargame
Last synced: about 1 month ago
JSON representation
CTF framework and exploit development library
- Host: GitHub
- URL: https://github.com/Gallopsled/pwntools
- Owner: Gallopsled
- License: other
- Created: 2013-04-29T14:43:03.000Z (almost 12 years ago)
- Default Branch: dev
- Last Pushed: 2024-05-01T13:11:50.000Z (12 months ago)
- Last Synced: 2024-05-02T04:23:25.491Z (12 months ago)
- Topics: assembly, bsd, capture-the-flag, ctf, ctf-framework, defcon, exploit, hacktoberfest, linux, pwnable, pwntools, python, python2, python3, rop, shellcode, shellcode-development, shellcoding, wargame
- Language: Python
- Homepage: http://pwntools.com
- Size: 26.9 MB
- Stars: 11,486
- Watchers: 292
- Forks: 1,659
- Open Issues: 112
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-pwntools.txt
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-rainmana - Gallopsled/pwntools - CTF framework and exploit development library (Python)
- awesome-repositories - Gallopsled / pwntools
- Awesome-Security-Tool-List - Pwntools GitHub
- awesome-hacking-lists - Gallopsled/pwntools - CTF framework and exploit development library (Python)
- awesome-nicc - Pwntools - Pwntools is a python ctf library designed for rapid exploit development. `Multiple Licenses` `Mac/Linux` (Entries / Pwn)
- StarryDivineSky - Gallopsled/pwntools
- best-of-web-python - GitHub - 9% open · ⏱️ 23.05.2024): (Others)
README
# pwntools - CTF toolkit
[](https://pypi.python.org/pypi/pwntools/)
[](https://docs.pwntools.com/)
[](https://github.com/Gallopsled/pwntools/actions/workflows/ci.yml?query=branch%3Adev)
[](https://coveralls.io/github/Gallopsled/pwntools?branch=dev)
[](http://choosealicense.com/licenses/mit/)
[](https://repology.org/project/python:pwntools/versions)
[](https://discord.gg/96VA2zvjCB)
[](https://twitter.com/pwntools)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.
```python
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](https://docs.pwntools.com/)
A series of tutorials is also [available online](https://github.com/Gallopsled/pwntools-tutorial#readme)
To get you started, we've provided some example solutions for past CTF challenges in our [write-ups repository](https://github.com/Gallopsled/pwntools-write-ups).
# Installation
Pwntools is best supported on 64-bit Ubuntu LTS releases (22.04 and 24.04). Most functionality should work on any Posix-like distribution (Debian, Arch, FreeBSD, OSX, etc.).
Pwntools supports Python 3.10+ since version 5.0.0. Use Pwntools 4.x for older versions as well as Python 2.7. Most of the functionality of pwntools is self-contained and Python-only. You should be able to get running quickly with
```sh
sudo apt-get update
sudo 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](https://docs.pwntools.com/en/stable/install.html).
# Contribution
See [CONTRIBUTING.md](CONTRIBUTING.md)
# Contact and Community
If you have any questions not worthy of a [bug report](https://github.com/Gallopsled/pwntools/issues), join the Discord server at https://discord.gg/96VA2zvjCB