BBLABSBBLABS
LaboratoriosAprender desde 0FuncionesPreciosTestimoniosDetrás de BBLABS
  1. Home
  2. Labs
  3. Toma de control de una cuenta en una red social de fotos encadenando SQLi, reset roto, IDOR, XSS y CSRF
Medium1h

Toma de control de una cuenta en una red social de fotos encadenando SQLi, reset roto, IDOR, XSS y CSRF

By @gorka

Red social de fotos: toma de control de la cuenta de la víctima vía SQL injection en el login, reset con token no atado al email, IDOR de cambio de contraseña, y XSS/CSRF en el chat.

This hack was reported with no reward

46 views2 completedUpdated Oct 2026
Log in to start

Learn to find this bug

A real HackerOne hack, reproduced for you to practice.

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· 2

benjaminnocervigni1
@benjaminnocervigni4 days ago
kyzk32
@kyzk326 days ago

Objectives

1
Partir de la cuenta pública del atacante y fijar como objetivo a @ana.fernandez.
2
SQL injection en el login por concatenación de username/password sin parametrizar.
3
Reset de contraseña roto: el token no está atado al email del cuerpo (BAC).
4
IDOR: cambiar la contraseña de otro usuario por su id sin comprobar propiedad.
5
XSS almacenado en el chat que la víctima ejecuta con su sesión (exfil al collector).
6
CSRF: cambiar la contraseña con una petición GET sin token, que la víctima dispara.
7
Tomar el control de la cuenta de la víctima y leer su álbum privado.
8
Capturar la flag: el secreto del álbum privado de la víctima.

Information

Platform
HackerOne
Difficulty
Medium
Duration
1h
Bounty
Sin recompensa
Completed
2
Creator
gorka@gorka
Updated
Oct 2026

Download the environment

Reproduce it and find the bug yourself

Create account

Tools

curlBurp SuitesqlmapNavegador web

Prerequisites

  • SQLi básico
  • Auth y reset de contraseña
  • XSS y CSRF

Tags

SQLiIDORXSSCSRF

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.

Contenido del lab

Escenario

Momentia es una red social de fotos estilo Instagram. La víctima es @ana.fernandez, cuya cuenta guarda un álbum privado con un secreto: la flag. Entras con la cuenta pública del atacante mario_lopez / password123 (attacker@momentia.local). Tu objetivo es tomar el control de la cuenta de Ana y leer su álbum.

Ana es una víctima simulada (bot) que cada pocos segundos abre sus mensajes y sigue los enlaces que recibe con su propia sesión.

Guía paso a paso (varias vías llevan al ATO)

  1. Recon. Localiza el login, el flujo de "olvidé mi contraseña", el perfil y el chat.

  2. Vía 1 — SQL injection en el login. POST /api/auth/login concatena username/password sin parametrizar. Inyecta para autenticarte como Ana o extraer datos.

  3. Vía 2 — Reset de contraseña roto (BAC). POST /api/auth/reset/confirm acepta un token no atado al email del cuerpo: pide un reset para tu cuenta y cambia el email al confirmar para apoderarte de la de Ana. La bandeja está en GET /api/mail.

  4. Vía 3 — IDOR de contraseña. POST /api/users/:id/password cambia la contraseña por id sin comprobar el dueño. Pon el id de Ana y fija su contraseña.

  5. Vía 4 — XSS en el chat. POST /api/messages guarda HTML crudo que el cliente pinta con dangerouslySetInnerHTML. Manda a Ana un mensaje con un payload; al abrirlo, exfiltra su token al collector (GET /collector/pixel).

  6. Vía 5 — CSRF POST→GET. GET|POST /api/change-password identifica por sesión, sin token CSRF y aceptando GET: manda a Ana un enlace que cambia su contraseña al abrirlo.

  7. Toma el control y captura la flag. Con la cuenta de Ana, GET /api/me/album te sirve el álbum privado con FLAG{…}.

Canales de feedback (no vuelas a ciegas)

  • Los errores del login y la bandeja GET /api/mail te confirman el avance.
  • El monitor de actividad del bot muestra cuándo Ana abre tus mensajes/enlaces (read receipt).
  • El panel del collector (GET /api/collector/log) registra lo exfiltrado.

Decoys (descártalos por razonamiento)

  • El endpoint de perfil (POST /api/users/:id/profile) sí valida el dueño — el que no lo hace es el de contraseña.
  • El bot solo sigue enlaces same-origin: la exfil va al collector interno del propio lab.

La falla del laboratorio

Clases: SQL injection (CWE-89), reset de contraseña roto (CWE-640), IDOR (CWE-639), XSS almacenado (CWE-79), CSRF (CWE-352), con autenticación/función sin control de acceso (CWE-306) y exposición de credenciales (CWE-522). OWASP A01/A03/A07:2021.

Todas las vías desembocan en account takeover de la víctima porque cada control confía en algo que el atacante manipula: la query no está parametrizada, el token de reset no se ata a la identidad, el cambio de contraseña no comprueba propiedad, la salida HTML no se sanea y una acción sensible se acepta por GET sin token. Defensa: consultas parametrizadas, atar los tokens a su identidad, autorización por objeto, escape de salida y CSRF tokens + métodos seguros.

Laboratorio de vídeo educativo basado en la reproducción anonimizada (empresa ficticia Momentia) de técnicas reales de account takeover.

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.