Race Condition in Plan Coupon Limits
Plataforma de cupones donde cada plan (Free/Pro/Premium) tiene un limite de cupones canjeables. Race condition permite superar el limite enviando peticiones concurrentes para diferentes cupones
Este hackeo se reportó sin recompensa
Aprende a encontrar este bug
Un hackeo real, reproducido para que lo practiques.
Crea tu cuenta y practica bugs reales que se pagaron. Descarga el entorno, encuéntralo y aprende la técnica exacta — tu camino a tu primer bounty.
hunters entrenando
labs de hackeos reales
completaciones
pagados por estos bugs
Acceso a todos los labs · sin permanencia · cancela cuando quieras
Hackers que lo han resuelto· 8
Objetivos
Logro que recibirás
Cuando resuelvas este lab desbloqueas este logro compartible

Writeups de la comunidad
La checklist que repaso en cada objetivo nuevo
47 comprobaciones ordenadas por coste: primero lo que te puede meter en un lío, luego lo barato, y al final lo caro — que es donde están los bounties grandes. Te la mando al correo ahora mismo.
Te das de baja en un clic, desde cualquier correo.
Despliegue
# Opcion 1: autodeploy
./autodeploy.sh
# Opcion 2: manual
docker compose up --build
# Acceder
https://localhost:1000
Compatible con macOS, Linux y Windows (Docker Desktop / WSL).
Para parar:
./autodeploy.sh destroy
# o: docker compose down -v
Contenido del Lab
La aplicacion
DealZone es una plataforma de cupones con planes de suscripcion que limitan la cantidad de cupones canjeables.
La vulnerabilidad
POST /api/coupons/:id/claim verifica el total de cupones canjeados contra el limite del plan con un delay antes de completar el canjeo. Peticiones concurrentes para diferentes cupones pasan todas el check.
Cadena de ataque
1. Login como alice (Free, limite 2)
2. Listar cupones disponibles (12 cupones)
3. Enviar 12 peticiones concurrentes (una por cupon)
4. Todas pasan el check del limite
5. Resultado: 12 cupones canjeados con plan Free
Solucion interactiva
Accede a /writeup dentro de la aplicacion para una guia paso a paso con botones interactivos.
Flag
(mas cupones canjeados que el limite del plan)
Remediacion
- Transacciones atomicas con bloqueo de fila
- Incremento atomico del contador de cupones
- Verificacion post-commit del limite
