Plataforma de venta de coches premium con un endpoint de cambio de contrasena que acepta tanto POST como GET. Un bot administrador revisa los tickets de soporte y abre todos los links que contienen. Encadena el cambio de metodo HTTP con ingenieria social al bot para conseguir acceso administrativo y exfiltrar datos sensibles del negocio.
Entorno seguro y aislado
Crea una cuenta y suscríbete para acceder a todos los labs. Practica en un entorno real y seguro.
Cuando resuelvas este lab desbloqueas este logro compartible
# Opcion 1: autodeploy
./autodeploy.sh
# Opcion 2: manual
docker compose up --build
# Acceder
http://localhost:4000
Compatible con macOS, Linux y Windows (Docker Desktop / WSL).
Para parar:
./autodeploy.sh destroy
# o Ctrl+C si usaste autodeploy
# o: docker compose down -v
EliteMotors es una plataforma de venta de coches de segunda mano premium. La web incluye:
El endpoint /api/auth/change-password esta disenado para recibir peticiones POST con Content-Type: application/x-www-form-urlencoded:
POST /api/auth/change-password
Content-Type: application/x-www-form-urlencoded
Cookie: token=<JWT>
newPassword=nuevaContrasena123
Sin embargo, el mismo endpoint tambien acepta peticiones GET, leyendo los parametros de la URL:
GET /api/auth/change-password?newPassword=nuevaContrasena123
Cookie: token=<JWT>
Esto convierte una accion de estado (cambio de contrasena) en un link de 1-clic.
El administrador carlos_manager revisa los tickets de soporte cada 15 segundos. Cuando encuentra un link en el mensaje de un ticket, lo abre automaticamente con su sesion activa (cookie JWT).
1. Registrarse → Crear cuenta propia
2. Explorar → Ir a Perfil, cambiar contrasena, observar peticion POST
3. Descubrir → Probar la misma peticion como GET (funciona!)
4. Reconocimiento → Ver tickets → "Assigned to: carlos_manager"
5. Explotar → Enviar ticket con link:
http://localhost:4000/api/auth/change-password?newPassword=hacked123
6. Esperar → Bot abre el link con sesion de admin → contrasena cambiada
7. Acceso → Login como carlos_manager / hacked123
8. Flag → Panel admin → bb7a98c57b8374c3e00f0f1b3d0e4c57
Accede a /writeup dentro de la aplicacion (requiere login) para una guia paso a paso con botones que ejecutan cada peticion automaticamente.
Suscríbete para descargar