BBLABSBBLABS
LaboratoriosAprender desde 0FuncionesPreciosTestimoniosDetrás de BBLABS
  1. Home
  2. Labs
  3. HTTP Method Override & Admin Bot Exploitation
Medium45 min

HTTP Method Override & Admin Bot Exploitation

By @gorka

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.

$200

That's what a company paid for this bug on HackerOne. Here it is, rebuilt for you to find it yourself.

912 views31 completedUpdated Nov 2026
Log in to start

Learn to find this bug

This bug paid $200 on HackerOne.

Create your account and practice real bugs that got paid. Download the environment, find it and learn the exact technique — your path to your first bounty.

650

hunters training

50

labs from real hacks

380

completions

$12,000

paid out for these bugs

40 flags captured this week
Create account
I already have an account

Access to all labs · no commitment · cancel anytime

Hackers who solved it· 8

noniná_sec1
@noniná_sec5 days ago
lydiel2
@lydiel12 days ago
espejoramirezhugo3
@espejoramirezhugo19 days ago
sharat chandra
@sharat chandraOct 2026
pippen_3
@pippen_3Sep 2026
emperador
@emperadorSep 2026
r00thor
@r00thorSep 2026
bizedtv
@bizedtvSep 2026

Objectives

1
Descubrir que el endpoint de cambio de contrasena acepta peticiones GET ademas de POST
2
Identificar al administrador que revisa los tickets de soporte
3
Construir un link malicioso que cambie la contrasena del administrador en un solo clic
4
Enviar el link a traves del formulario de contacto para que el bot lo abra
5
Acceder al panel de administracion con las credenciales robadas
6
Obtener la flag del dashboard administrativo

Information

Platform
HackerOne
Difficulty
Medium
Duration
45 min
Bounty
$200
Completed
31
Creator
gorka@gorka
Collaborators
antoniorivera@antoniorivera
Updated
Nov 2026

Download the environment

Reproduce it and find the bug yourself

Create account

Tools

Burp Suite

Prerequisites

  • - Conocimientos basicos de HTTP (metodos GET vs POST, Content-Type)
  • - Entender como funcionan las cookies de sesion (JWT, httpOnly)
  • - Saber interceptar y analizar trafico HTTP (DevTools o Burp Suite)
  • - Conceptos basicos de CSRF y ataques de 1-clic

Tags

CSRFAPI Abuse

Achievement you'll earn

Solve this lab to unlock this shareable achievement

Solve this lab to unlock this shareable achievement

Community writeups

Free · no account

The checklist I run on every new target

47 checks ordered by cost: first what can get you in trouble, then the cheap stuff, and finally the expensive stuff — which is where the big bounties are. I'll send it to your inbox right now.

Unsubscribe in one click, from any email.

Despliegue

# 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

La aplicacion

EliteMotors es una plataforma de venta de coches de segunda mano premium. La web incluye:

  • Catalogo de coches — 15 vehiculos con especificaciones detalladas (BMW M3, Porsche 911, Mercedes AMG, etc.)
  • Sistema de usuarios — Registro, login, perfil con cambio de contrasena
  • Soporte / Contacto — Formulario de tickets donde un administrador revisa cada solicitud
  • Panel administrativo — Dashboard con estadisticas de ventas, datos de compradores (PII), gestion de usuarios

La vulnerabilidad

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 bot administrador

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).

La cadena de ataque

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

Solucion interactiva

Accede a /writeup dentro de la aplicacion (requiere login) para una guia paso a paso con botones que ejecutan cada peticion automaticamente.

The community

This isn't a platform with users.It's people breaking the same things you are.

Inside people ask, share what they found and solve together what would block anyone on their own. It's free to join: no account, no plan, no email required.

Join the BBLABS community on Discord
Join the Discord

Free and open. You don't need a BBLABS account to join.

BBLABS LogoBBLABS

Laboratorios de hacking basados en hackeos reales. Aprende practicando sobre entornos vulnerables, con la resolución explicada paso a paso.

Producto

  • Funcionalidades
  • Precios
  • Labs
  • Aprender desde 0
  • Blog
  • Detrás de BBLABS

Legal

  • Términos
  • Privacidad
  • Cookies
  • Entrar
  • Crear cuenta

Para cualquier duda, bug, soporte o sugerencia puedes escribir a team@bblabs.es

© 2026 BBLABS. Todos los derechos reservados.