Pwntools es un marco CTF y una biblioteca de desarrollo de exploits. Escrito en Python, está diseñado para la creación y desarrollo rápidos de prototipos y pretende hacer que la escritura de exploits sea lo más simple posible.
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 ()
Nuestra documentación está disponible en docs.pwntools.com
También hay una serie de tutoriales disponibles en línea.
Para comenzar, le proporcionamos algunos ejemplos de soluciones para desafíos CTF anteriores en nuestro repositorio de artículos.
Pwntools tiene mejor compatibilidad con las versiones Ubuntu LTS de 64 bits (18.04, 20.04, 22.04 y 24.04). La mayoría de las funciones deberían funcionar en cualquier distribución similar a Posix (Debian, Arch, FreeBSD, OSX, etc.).
Se sugiere Python3, pero Pwntools todavía funciona con Python 2.7. La mayor parte de la funcionalidad de pwntools es autónoma y exclusiva de Python. Deberías poder empezar a correr rápidamente con
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
Sin embargo, algunas de las funciones (ensamblar/desensamblar arquitecturas externas) requieren dependencias que no sean de Python. Para obtener más información, consulte las instrucciones de instalación completas aquí.
Ver CONTRIBUCIÓN.md
Si tiene alguna pregunta que no merezca un informe de error, únase al servidor de Discord en https://discord.gg/96VA2zvjCB