Hacking Web: S4vitar - Hack4u
Publicado: sábado, nov. 29, 2025 - Post actualizado: sábado, nov. 29, 2025
**Este curso ofrece al alumnado una base técnica sólida y un recorrido profundo por las principales áreas del hacking web moderno. **
A lo largo de 51 horas de contenido, se abordan en profundidad un total de 31 vulnerabilidades, combinando teoría y práctica con 269 laboratorios reales y cuidadosamente seleccionados.
Gracias a este enfoque, los estudiantes adquirirán una comprensión estratégica y aplicada de la seguridad en aplicaciones web, desarrollando las habilidades necesarias para enfrentarse a escenarios reales y complejos.
No es un curso superficial: se abordan vulnerabilidades reales, técnicas de evasión, explotación avanzada y desarrollo de un pensamiento crítico en seguridad ofensiva.
🎯 Qué conseguirás
Conocimientos aplicables a entornos reales, más allá del típico CTF.
Dominio de metodologías de pentesting web desde el reconocimiento hasta la explotación y la post-explotación.
Capacidad para entender y replicar vulnerabilidades modernas como SSRF, deserialización insegura, prototype pollution, race conditions, explotación en APIs, WAF bypass, así como técnicas avanzadas para vulnerar modelos de lenguaje (LLMs) y explotar sistemas basados en inteligencia artificial.
🏅 Preparación para certificaciones profesionales
Este curso sienta las bases necesarias y ofrece el conocimiento avanzado que te permitirá enfrentarte con confianza a certificaciones web reconocidas internacionalmente:
eWPT (Web Application Penetration Tester) – INE Security [Ver Certificación]
eWPTX (Extreme Web Application Penetration Tester) – INE Security [Ver Certificación]
BSCP (Burp Suite Certified Practitioner) – PortSwigger [Ver Certificación]
CWES (HTB Certified Web Exploitation Specialist) – HackTheBox [Ver Certificación]
Cada una de ellas requiere no solo técnica, sino comprensión profunda de vectores reales, algo que este curso entrena desde el primer módulo.
📈 Al terminar serás capaz de:
Analizar en profundidad el funcionamiento interno de una amplia variedad de vulnerabilidades web.
Explotar fallos de seguridad utilizando técnicas modernas y herramientas profesionales.
Encadenar vulnerabilidades de forma lógica para maximizar su impacto.
Prepararte con confianza para certificaciones clave de hacking web como: eWPT, eWPTX, CBBH y BSCP.
✨ ¿A quién va dirigido?
A cualquier persona con conocimientos básicos en seguridad o desarrollo web que quiera llevar su nivel al siguiente escalón, con una mirada profesional y orientada a resultados. Tanto si tu objetivo es trabajar en pentesting como si aspiras a certificarte formalmente, este curso es el camino ideal.
¿Necesito conocimientos previos?
Este curso está diseñado para llevarte a un nivel técnico alto, por lo que se recomienda haber completado previamente los siguientes cursos disponibles en esta misma academia:
Introducción a Linux [15 horas]
Python Ofensivo [35 horas]
Introducción al Hacking [53 horas]
Si ya has trabajado con estos contenidos, el aprovechamiento del curso será mucho más fluido y podrás centrarte de lleno en los aspectos avanzados del hacking web.
Aun así, cada concepto será explicado paso a paso, de forma clara y guiada, para que puedas avanzar aunque no recuerdes todos los detalles. Lo ideal es contar con una base previa, pero si tienes ganas y compromiso, este curso también te acompañará desde lo esencial hasta lo avanzado.
Contiene:
Introducción al curso
- → Bienvenido/a al curso
SQL Injection (SQLI)
- → Introducción a la Inyección SQL en cláusulas WHERE [1/2]
- → Introducción a la Inyección SQL en cláusulas WHERE [2/2]
- → Bypass de login mediante Inyección SQL
- → Identificación de versión y motor de base de datos (Oracle)
- → Identificación de versión y motor de base de datos (MySQL y MSSQL)
- → Enumeración de bases de datos en motores no Oracle
- → Enumeración de bases de datos en Oracle
- → Ataque UNION: descubriendo número de columnas
- → Ataque UNION: encontrando columnas con texto
- → Ataque UNION: extrayendo datos de otras tablas
- → Ataque UNION: múltiples valores en una sola columna
- → Inyección SQL ciega con respuestas condicionales [1/3]
- → Inyección SQL ciega con respuestas condicionales [2/3]
- → Inyección SQL ciega con respuestas condicionales [3/3]
- → Inyección SQL ciega con errores condicionales [1/2]
- → Inyección SQL ciega con errores condicionales [2/2]
- → Inyección SQL basada en errores visibles
- → Inyección SQL ciega mediante retrasos temporales
- → Inyección SQL ciega con retrasos y exfiltración de datos [1/2]
- → Inyección SQL ciega con retrasos y exfiltración de datos [2/2]
- → Inyección SQL ciega con interacción out-of-band (OOB)
- → Exfiltración de datos por canal OOB en Inyección SQL
- → Bypass de filtros con codificación XML en Inyección SQL
- → Cuestionario de SQL Injection
Cross-site Scripting (XSS)
- → XSS reflejado en HTML sin codificación
- → XSS almacenado en HTML sin codificación
- → XSS DOM con ‘document.write’ y ’location.search’
- → XSS DOM con ‘innerHTML’ y ’location.search’
- → XSS DOM en ‘href’ con jQuery y ’location.search’
- → XSS DOM con jQuery y evento ‘hashchange’
- → XSS reflejado en atributo con corchetes codificados
- → XSS almacenado en ‘href’ con comillas codificadas
- → XSS reflejado en string JS con corchetes codificados
- → XSS DOM con ‘document.write’ dentro de ‘select’
- → XSS DOM en AngularJS con comillas codificadas
- → XSS DOM reflejado
- → XSS DOM almacenado
- → XSS reflejado en HTML con etiquetas bloqueadas
- → XSS reflejado con solo etiquetas personalizadas
- → XSS reflejado con etiquetas SVG permitidas
- → XSS reflejado en etiqueta canonical
- → XSS en string JS con comilla y backslash escapados
- → XSS en JS con comillas, corchetes y comilla escapada
- → XSS almacenado en ‘onclick’ con codificación completa
- → XSS en template literal con caracteres unicode escapados
- → Robo de cookies mediante XSS
- → Captura de contraseñas mediante XSS
- → Evasión de CSRF usando XSS [1/2]
- → Evasión de CSRF usando XSS [2/2]
- → Escape de sandbox AngularJS sin cadenas [1/2]
- → Escape de sandbox AngularJS sin cadenas [2/2]
- → Escape de sandbox AngularJS con CSP
- → XSS con eventos y atributos bloqueados
- → XSS en javascript: con caracteres limitados [1/2]
- → XSS en javascript: con caracteres limitados [2/2]
- → XSS con CSP estricto y marcado colgante [1/2]
- → XSS con CSP estricto y marcado colgante [2/2]
- → XSS con CSP y técnica de bypass
- → Cuestionario de XSS
Cross-site Request Forgery (CSRF)
- → CSRF sin ningún tipo de defensa
- → CSRF con token validado según el método HTTP
- → CSRF con validación solo si hay token presente
- → CSRF con token no vinculado a la sesión
- → CSRF con token atado a cookie sin sesión [1/2]
- → CSRF con token atado a cookie sin sesión [2/2]
- → CSRF con token duplicado en cookie
- → Bypass de SameSite Lax con method override
- → Bypass de SameSite Strict con redirección cliente
- → Bypass de SameSite Strict con dominio hermano [1/2]
- → Bypass de SameSite Strict con dominio hermano [2/2]
- → Bypass de SameSite Lax con refresco de cookie
- → CSRF con validación Referer si el header existe
- → CSRF con validación Referer vulnerable
- → Cuestionario de CSRF
Clickjacking
- → Clickjacking básico con token CSRF
- → Clickjacking con datos precargados por parámetro
- → Clickjacking con script anti-frame
- → Explotación de clickjacking para XSS DOM
- → Clickjacking en múltiples pasos
- → Cuestionario de Clickjacking
Vulnerabilidades basadas en el DOM
- → XSS DOM usando Web Messages
- → XSS DOM con Web Messages y URL JavaScript
- → XSS DOM con Web Messages y ‘JSON.parse’
- → Redirección abierta basada en el DOM
- → Manipulación de cookies vía DOM
- → XSS mediante clobbering en el DOM [1/2]
- → XSS mediante clobbering en el DOM [2/2]
- → Bypass de filtros HTML con clobbering DOM [1/2]
- → Bypass de filtros HTML con clobbering DOM [2/2]
- → Cuestionario de vulnerabilidades en DOM
Compartición de recursos entre orígenes (CORS)
- → CORS con reflexión básica del origen [1/2]
- → CORS con reflexión básica del origen [2/2]
- → CORS con origen null marcado como confiable
- → CORS con protocolos inseguros confiables [1/2]
- → CORS con protocolos inseguros confiables [2/2]
- → Cuestionario de CORS
XML external entity (XXE) injection
- → XXE para leer archivos con entidades externas
- → XXE para realizar ataques SSRF
- → XXE ciego con interacción out-of-band
- → XXE ciego con entidades XML externas (OOB)
- → XXE ciego con exfiltración vía DTD externa [1/2]
- → XXE ciego con exfiltración vía DTD externa [2/2]
- → XXE ciego para filtrar datos con errores
- → XInclude para leer archivos
- → XXE vía subida de imagen maliciosa
- → XXE usando DTD local para extraer datos [1/2]
- → XXE usando DTD local para extraer datos [2/2]
- → Cuestionario de XXE
Server-side request forgery (SSRF)
- → SSRF básico contra servidor local [1/2]
- → SSRF básico contra servidor local [2/2]
- → SSRF básico contra sistema interno
- → SSRF ciego con detección out-of-band
- → SSRF con filtro basado en blacklist
- → Bypass SSRF con redirección abierta
- → SSRF ciego explotando Shellshock
- → SSRF con filtro basado en whitelist
- → Cuestionario de SSRF
HTTP request smuggling
- → Confirmación de CL.TE por respuestas diferenciales [1/3]
- → Confirmación de CL.TE por respuestas diferenciales [2/3]
- → Confirmación de CL.TE por respuestas diferenciales [3/3]
- → Confirmación de TE.CL por respuestas diferenciales
- → Bypass de seguridad front-end (CL.TE)
- → Bypass de seguridad front-end (TE.CL)
- → Descubrimiento de reescritura en front-end
- → Captura de peticiones de otros usuarios [1/2]
- → Captura de peticiones de otros usuarios [2/2]
- → Entrega de XSS reflejado por smuggling
- → Response queue poisoning con H2.TE [1/2]
- → Response queue poisoning con H2.TE [2/2]
- → Smuggling H2.CL
- → Smuggling HTTP/2 por inyección CRLF
- → Splitting HTTP/2 por inyección CRLF
- → Smuggling con CL.0
- → Vulnerabilidad básica CL.TE
- → Vulnerabilidad básica TE.CL
- → Smuggling ocultando el header TE
- → Poisoning de caché web con smuggling
- → Decepción de caché web con smuggling
- → Bypass de control con túnel HTTP/2 [1/3]
- → Bypass de control con túnel HTTP/2 [2/3]
- → Bypass de control con túnel HTTP/2 [3/3]
- → Poisoning de caché con túnel HTTP/2 [1/2]
- → Poisoning de caché con túnel HTTP/2 [2/2]
- → Desincronización en cliente (client-side desync) [1/3]
- → Desincronización en cliente (client-side desync) [2/3]
- → Desincronización en cliente (client-side desync) [3/3]
- → Smuggling por pausa del servidor [1/3]
- → Smuggling por pausa del servidor [2/3]
- → Smuggling por pausa del servidor [3/3]
- → Cuestionario de HTTP Request Smuggling
Inyección de comandos del sistema
- → Inyección de comandos, caso simple
- → Inyección ciega con retrasos temporales
- → Inyección ciega con redirección de salida
- → Inyección ciega con interacción OOB
- → Inyección ciega con exfiltración vía OOB
- → Cuestionario de Inyección de Comandos
Server-side template injection (SSTI)
- → SSTI básica en plantilla del servidor
- → SSTI básica en contexto de código
- → SSTI usando la documentación del motor
- → SSTI en lenguaje desconocido con exploit público
- → SSTI con filtrado de info vía objetos del usuario
- → SSTI en entorno con sandbox
- → SSTI con exploit personalizado [1/2]
- → SSTI con exploit personalizado [2/2]
- → Cuestionario de SSTI
Path Traversal
- → Path traversal, caso simple
- → Bypass absoluto con secuencias bloqueadas
- → Secuencias traversal eliminadas sin recursión
- → Bypass con doble decodificación en URL
- → Validación del inicio de la ruta
- → Bypass con null byte y validación de extensión
- → Cuestionario de Path Traversal
Vulnerabilidades de Control de Acceso
- → Funcionalidad admin sin protección
- → Funcionalidad admin con URL impredecible
- → Rol de usuario controlado por parámetro
- → Modificación del rol en el perfil de usuario
- → ID de usuario controlado por parámetro
- → ID de usuario impredecible controlado por parámetro
- → Filtración de datos en redirección con ID por parámetro
- → Filtración de contraseña con ID por parámetro
- → Referencias directas inseguras a objetos
- → Bypass de control por URL
- → Bypass de control por método HTTP
- → Paso sin control de acceso en proceso múltiple
- → Control de acceso basado en Referer
- → Cuestionario de Control de Acceso
Gestión de Autenticación
- → Enumeración de usuarios por respuestas distintas
- → Bypass básico de 2FA
- → Lógica rota en reseteo de contraseña
- → Enumeración por respuestas sutilmente distintas
- → Enumeración de usuario por tiempo de respuesta
- → Protección rota: bloqueo por IP
- → Enumeración de usuario por bloqueo de cuenta
- → Lógica rota en 2FA
- → Fuerza bruta de cookie de sesión persistente
- → Cracking offline de contraseñas [1/2]
- → Cracking offline de contraseñas [2/2]
- → Poisoning en reset de contraseña vía middleware
- → Fuerza bruta de contraseña en cambio de clave
- → Protección rota: múltiples credenciales por petición
- → Bypass de 2FA por ataque de fuerza bruta [1/2]
- → Bypass de 2FA por ataque de fuerza bruta [2/2]
- → Cuestionario de gestión de autenticación
WebSockets
- → Manipulación de mensajes WebSocket
- → Secuestro de WebSocket entre sitios
- → Manipulación del handshake de WebSocket
- → Cuestionario de WebSockets
Web Cache Poisoning
- → Poisoning con header no indexado [1/2]
- → Poisoning con header no indexado [2/2]
- → Poisoning con cookie no indexada
- → Poisoning con múltiples headers
- → Poisoning dirigido con header desconocido
- → Poisoning con query string no indexado
- → Poisoning con parámetro de query no indexado
- → Parameter cloaking
- → Poisoning con petición GET anómala
- → Normalización de URL
- → Poisoning para explotar XSS DOM con caché estricta
- → Combinación de vulnerabilidades de poisoning [1/3]
- → Combinación de vulnerabilidades de poisoning [2/3]
- → Combinación de vulnerabilidades de poisoning [3/3]
- → Inyección en clave de caché [1/4]
- → Inyección en clave de caché [2/4]
- → Inyección en clave de caché [3/4]
- → Inyección en clave de caché [4/4]
- → Poisoning de caché interna
- → Cuestionario de Cache Poisoning
Deserialización Insegura
- → Modificación de objetos serializados
- → Modificación de tipos de datos serializados
- → Explotación vía funciones de la aplicación
- → Inyección de objetos arbitrarios en PHP
- → Deserialización Java con Apache Commons
- → Deserialización PHP con gadget predefinido [1/2]
- → Deserialización PHP con gadget predefinido [2/2]
- → Deserialización Ruby con gadget documentado [1/2]
- → Deserialización Ruby con gadget documentado [2/2]
- → Cadena personalizada en deserialización Java [1/3]
- → Cadena personalizada en deserialización Java [2/3]
- → Cadena personalizada en deserialización Java [3/3]
- → Cadena personalizada en deserialización PHP [1/2]
- → Cadena personalizada en deserialización PHP [2/2]
- → Deserialización PHAR con cadena personalizada [1/3]
- → Deserialización PHAR con cadena personalizada [2/3]
- → Deserialización PHAR con cadena personalizada [3/3]
- → Cuestionario de deserialización insegura
Divulgación de Información
- → Divulgación en mensajes de error
- → Divulgación en página de depuración
- → Código fuente expuesto por archivos backup
- → Bypass de login por divulgación de info
- → Divulgación en historial de control de versiones
- → Cuestionario de divulgación de información
Vulnerabilidades de lógica de negocio
- → Confianza excesiva en el lado del cliente
- → Vulnerabilidad lógica de alto nivel
- → Controles de seguridad inconsistentes
- → Reglas de negocio mal aplicadas
- → Fallo lógico de bajo nivel [1/2]
- → Fallo lógico de bajo nivel [2/2]
- → Gestión inconsistente de entradas atípicas
- → Aislamiento débil en endpoint de doble uso
- → Validación insuficiente del flujo de trabajo
- → Bypass por máquina de estados rota
- → Fallo lógico para generar dinero infinito [1/2]
- → Fallo lógico para generar dinero infinito [2/2]
- → Bypass por oráculo de cifrado [1/2]
- → Bypass por oráculo de cifrado [2/2]
- → Bypass por parsing inconsistente de email [1/3]
- → Bypass por parsing inconsistente de email [2/3]
- → Bypass por parsing inconsistente de email [3/3]
- → Cuestionario de Business Logic
Ataques mediante cabecera Host
- → Poisoning básico en reseteo de contraseña
- → Bypass de autenticación por cabecera Host
- → Web cache poisoning por petición ambigua
- → SSRF por fallo en enrutamiento
- → SSRF por parsing incorrecto de la petición
- → Bypass de validación por estado de conexión
- → Poisoning de reset con markup colgante
- → Cuestionario de Host Header Injection
Autenticación con OAuth
- → Bypass de login usando flujo implícito de OAuth
- → SSRF vía registro dinámico de cliente OpenID
- → Forzado de enlace entre perfiles OAuth
- → Secuestro de cuenta por ‘redirect_uri’ en OAuth
- → Robo de token OAuth con redirección abierta [1/2]
- → Robo de token OAuth con redirección abierta [2/2]
- → Robo de token de acceso con página proxy [1/3]
- → Robo de token de acceso con página proxy [2/3]
- → Robo de token de acceso con página proxy [3/3]
- → Cuestionario de OAuth
Vulnerabilidades en subida de archivos
- → Ejecución remota con web shell subida
- → Web shell por bypass de Content-Type
- → Web shell por path traversal
- → Web shell por bypass de blacklist de extensiones
- → Web shell con extensión de archivo ofuscada
- → Ejecución remota con web shell multi-formato
- → Web shell por condición de carrera
- → Cuestionario de subida de archivos
(Json Web Tokens)
- → Bypass de autenticación JWT sin verificar la firma
- → Bypass de autenticación JWT por verificación defectuosa
- → Bypass de autenticación JWT con clave débil
- → Bypass de autenticación JWT por inyección en jwk
- → Bypass de autenticación JWT por inyección en jku
- → Bypass de autenticación JWT con traversal en kid
- → Bypass de autenticación JWT por confusión de algoritmo
- → Confusión de algoritmo JWT sin clave expuesta
- → Cuestionario de JWT
Habilidades esenciales
- → Detección rápida con escaneo dirigido
- → Escaneo de estructuras de datos no estándar
Prototype Pollution
- → Prototype pollution en el lado cliente usando APIs del navegador [1/2]
- → Prototype pollution en el lado cliente usando APIs del navegador [2/2]
- → XSS en el DOM por prototype pollution en cliente
- → XSS en el DOM con vector alternativo de pollution
- → Prototype pollution en cliente por mala sanitización
- → Prototype pollution en librerías de terceros [1/3]
- → Prototype pollution en librerías de terceros [2/3]
- → Prototype pollution en librerías de terceros [3/3]
- → Escalada de privilegios por pollution en el servidor
- → Detección sin reflejo de propiedades modificadas
- → Bypass de filtros para pollution en servidor
- → Ejecución remota por pollution en servidor
- → Exfiltración de datos sensibles por pollution en servidor
- → Cuestionario de Prototype Pollution
Vulnerabilidades en APIs GraphQL
- → Acceso a publicaciones privadas en GraphQL
- → Exposición accidental de campos privados
- → Descubrimiento de endpoint GraphQL oculto
- → Bypass de protección contra fuerza bruta en GraphQL
- → Explotación CSRF a través de GraphQL
- → Cuestionario de GraphQL
Condiciones de Carrera (Race Condition)
- → Condición de carrera superando límites [1/2]
- → Condición de carrera superando límites [2/2]
- → Bypass de limitación por condición de carrera
- → Condiciones de carrera en múltiples endpoints
- → Condiciones de carrera en un único endpoint [1/2]
- → Condiciones de carrera en un único endpoint [2/2]
- → Explotación de vulnerabilidades sensibles al tiempo [1/2]
- → Explotación de vulnerabilidades sensibles al tiempo [2/2]
- → Condición de carrera en construcción parcial [1/4]
- → Condición de carrera en construcción parcial [2/4]
- → Condición de carrera en construcción parcial [3/4]
- → Condición de carrera en construcción parcial [4/4]
- → Cuestionario de Race Condition
Inyecciones NoSQL
- → Detección de inyección NoSQL [1/2]
- → Detección de inyección NoSQL [2/2]
- → Bypass de login con inyección de operadores
- → Extracción de datos con inyección NoSQL [1/2]
- → Extracción de datos con inyección NoSQL [2/2]
- → Extracción de campos desconocidos con operadores NoSQL [1/2]
- → Extracción de campos desconocidos con operadores NoSQL [2/2]
- → Cuestionario de Inyecciones NoSQL
Pruebas de seguridad en APIs
- → Explotación de un endpoint usando la documentación
- → Parameter pollution en query string del servidor
- → Descubrimiento y explotación de un endpoint no usado
- → Explotación de Mass Assignment
- → Parameter pollution en URL REST del servidor
- → Cuestionario de APIs
Explotación de LLMs en entornos web
- → Explotación de LLMs con agencia excesiva
- → Explotación de vulnerabilidades en APIs de LLM
- → Inyección indirecta de prompts [1/3]
- → Inyección indirecta de prompts [2/3]
- → Inyección indirecta de prompts [3/3]
- → Explotación por manejo inseguro de salidas en LLMs [1/2]
- → Explotación por manejo inseguro de salidas en LLMs [2/2]
- → Cuestionario de LLMs
Engaño a la caché web
- → Engaño a la caché por manipulación de rutas
- → Engaño a la caché usando delimitadores en la ruta
- → Engaño a la caché por normalización en el servidor origen
- → Engaño a la caché por normalización en el servidor de caché
- → Engaño a la caché con reglas de coincidencia exacta
- → Cuestionario de caché web
Cuestionario de Tensada Máxima
- → Cuestionario de Tensada Máxima
Despedida
- → Clase final y certificado
En Hack4u encontrarás los mejores cursos de hacking ético online para formarte desde cero y dominar el pentesting.

Para comentar y reportar un enlace expirado utiliza el siguiente botón, serás dirigido a otra sección donde nuestros moderadores estarán esperando los comentarios.
Ir a los comentarios