~/blog/2026-02-14-tutorial-introduccion-a-pwn.md
[tutorial]Tutorial: tu primer buffer overflow en 30 minutos
¿Qué es pwn?
En el mundo CTF, pwn (de “owning” un sistema) se refiere a explotar binarios. La idea es encontrar una falla de programación —típicamente en C— que te permita controlar la ejecución del programa.
El binario de hoy
Vamos a trabajar con este programita:
| |
Compílalo sin protecciones modernas para ver el ataque clásico:
| |
Identificando el offset
gets() no valida longitud → buffer overflow. Necesitamos saber cuántos bytes hay desde el inicio del buffer hasta la dirección de retorno guardada.
Con pwntools:
| |
Construyendo el exploit
| |
¡Y listo! Tienes shell.
Próximos pasos
Cuando domines este nivel, súbele un escalón:
- Activa
-fno-stack-protector→ off (canaries). - Activa
-no-pie→ off (ASLR para el binario). - Aprende ROP (Return-Oriented Programming).
- Pasa al heap.
En CiberSecUNI tenemos un track de pwn que entrena estos pasos uno por uno. Si te quedaste enganchado, únete al equipo y entrenamos juntos.
Referencias
- Hacking: The Art of Exploitation, Jon Erickson.
- pwn.college — laboratorios gratuitos.
- LiveOverflow — YouTube — explicaciones visuales.