Accede a este lab
Entorno seguro y aislado
Crea una cuenta y suscríbete para acceder a todos los labs. Practica en un entorno real y seguro.
Hunters que lo han resuelto· 3
Logro que recibirás
Cuando resuelvas este lab desbloqueas este logro compartible
Content Security Policy Bypass Challenges
Writeups de la comunidad
Despliegue
# Opcion 1: autodeploy
./autodeploy.sh
# Opcion 2: manual
docker compose up --build
# Acceder
http://localhost:2200
Compatible con macOS, Linux y Windows (Docker Desktop / WSL).
Para parar:
./autodeploy.sh destroy
# o: docker compose down -v
Contenido del Lab
La aplicacion
Plataforma con 8 niveles de CSP progresivamente mas restrictivos. El objetivo es ejecutar alert(1) en cada uno.
La vulnerabilidad
Cada nivel tiene una configuracion CSP diferente con un bypass especifico: unsafe-inline, data:, unsafe-eval, wildcard, JSONP callback, CDN con AngularJS, nonce estatico, y script echo reflection.
Cadena de ataque
Nivel 1: unsafe-inline → <script>alert(1)</script>
Nivel 2: data: → <script src=data:,alert(1)>
Nivel 3: unsafe-eval → eval('alert(1)')
Nivel 4: * wildcard → cargar script externo
Nivel 5: JSONP → callback=alert(1)
Nivel 6: CDN → AngularJS ng-app con expresiones
Nivel 7: nonce hardcoded → reusar nonce
Nivel 8: script echo → reflected input en script
Solucion interactiva
Accede a /writeup dentro de la aplicacion para una guia paso a paso con botones interactivos.
Flag
(alert(1) en cada desafio)
Remediacion
- Nunca usar unsafe-inline o unsafe-eval
- Usar nonces aleatorios por peticion
- Whitelist estricto de dominios
- Evitar JSONP endpoints
- No reflejar input dentro de bloques script