En la lección anterior elegiste, según tu perfil, hacia qué certificación de appsec quieres orientarte, y quedó clara una idea: las buenas credenciales de seguridad web se aprueban practicando, no memorizando. Esta lección —la última del curso— te da exactamente eso: un plan de estudio ejecutable con los mejores recursos gratuitos y prácticos para preparar cualquiera de las certificaciones que vimos. Verás los laboratorios donde entrenar sin romper nada (Juice Shop, WebGoat, plataformas de CTF), la documentación OWASP que funciona como material de estudio de primer nivel (WSTG como guía de testing, las Cheat Sheets como recetario, ASVS como checklist), los libros y comunidades que aceleran el aprendizaje, cómo montar un entorno de práctica seguro y legal (el punto que más gente descuida) y un plan de preparación por semanas que ordena todo lo anterior. Al terminar tendrás no una lista de enlaces, sino un método para llegar al examen con las manos entrenadas.
Contenido
- Laboratorios prácticos: dónde entrenar
- Documentación OWASP como material de estudio
- Libros y comunidades
- Montar un entorno de práctica seguro y legal
- Plan de preparación por semanas
- Errores comunes y consejos
- Ejercicios
- Conclusión
Laboratorios prácticos: dónde entrenar
Practicar sobre aplicaciones deliberadamente vulnerables es la forma correcta de entrenar: son legales, reproducibles y diseñadas para enseñar. Estas son las de referencia:
| Recurso | Tipo | Qué entrena | Nivel |
|---|---|---|---|
| OWASP Juice Shop | App web vulnerable (Node.js) | Todo el Top Ten en una app moderna con "retos" gamificados | Intro-avanzado |
| OWASP WebGoat | App web-lección (Java) | Vulnerabilidades explicadas paso a paso, con teoría | Intro-intermedio |
| DVWA (Damn Vulnerable Web App) | App web vulnerable (PHP) | Clásicos (SQLi, XSS, CSRF) con niveles de dificultad | Intro-intermedio |
| PortSwigger Web Security Academy | Laboratorios online gratuitos | Explotación web guiada, excelente para Burp/eWPT | Intro-avanzado |
| Plataformas CTF (Hack The Box, TryHackMe, PentesterLab) | Retos/máquinas | Explotación realista, metodología, informe | Todos |
Recomendación de uso: empieza por WebGoat (aprende por qué), consolida con Juice Shop (aprende a encontrarlo en una app real) y luego salta a Web Security Academy y CTF para el enfoque ofensivo. Cada reto que resuelvas, mapéalo mentalmente a su categoría del Top Ten 2021 (M3): ese hábito es lo que convierte la práctica en dominio.
Documentación OWASP como material de estudio
La documentación de OWASP no es "material de consulta" secundario: es material de estudio de primera categoría, gratuito y alineado con los temarios. Cada proyecto tiene un uso concreto:
- WSTG (Web Security Testing Guide) — tu guía de testing. Es el manual metodológico de cómo probar cada tipo de vulnerabilidad, con identificadores (WSTG-XXXX). Úsala como checklist de "qué probar y cómo" cuando practiques en los laboratorios; es prácticamente el temario de las certificaciones de pentesting web.
- OWASP Cheat Sheet Series — tu recetario defensivo. Fichas concretas ("cómo prevenir SQLi", "cómo almacenar contraseñas") que resuelven el "¿y cómo lo arreglo?". Imprescindible para el enfoque de secure coding.
- ASVS — tu checklist de verificación. Recorre sus requisitos por capítulo (V2 autenticación, V4 acceso, V5 validación...) y verifica cada uno contra la app que practicas. Es el puente entre atacar y defender.
- Top Ten — tu mapa mental. La taxonomía con la que clasificas todo lo que encuentras.
graph LR
LAB[Laboratorio vulnerable] --> WSTG[WSTG: como probar]
WSTG --> FIND[Vulnerabilidad encontrada]
FIND --> TOP[Top Ten: clasificar]
FIND --> CHEAT[Cheat Sheet: como remediar]
FIND --> ASVS[ASVS: verificar requisito]
El flujo del diagrama es el bucle de aprendizaje ideal: pruebas con WSTG, encuentras, clasificas con el Top Ten, remedias con la Cheat Sheet y verificas con ASVS. Recorriéndolo una y otra vez sobre Juice Shop o WebGoat, interiorizas a la vez el ataque y la defensa.
Libros y comunidades
Los laboratorios enseñan a hacer; los libros y la comunidad dan contexto y aceleran:
- Libros de referencia: The Web Application Hacker's Handbook (biblia del pentesting web, base de PortSwigger), Real-World Bug Hunting de Peter Yaworski (bug bounty aplicado), y la propia documentación OWASP en PDF.
- Comunidades: el Slack de OWASP, los capítulos locales de OWASP (charlas y eventos, muchas veces gratuitos), foros de las plataformas (TryHackMe/HTB), y comunidades de bug bounty. Participar acelera el aprendizaje y abre puertas profesionales.
- Blogs y writeups: los writeups de retos CTF y de bug bounty enseñan metodología real. Leerlos tras intentar un reto por tu cuenta multiplica lo aprendido.
Consejo: no acumules recursos. Elige un laboratorio, una guía (WSTG) y una comunidad, y profundiza. La dispersión es el enemigo número uno de la preparación.
Montar un entorno de práctica seguro y legal
Este es el punto que más gente pasa por alto y el más importante desde el punto de vista ético y legal, coherente con todo lo que el curso ha defendido: solo se ataca lo que tienes permiso explícito para atacar. Escanear o explotar sistemas ajenos —aunque sea "para practicar"— es un delito. La práctica se hace en un entorno aislado y propio:
- Aísla la red. Monta los laboratorios en una máquina virtual (VirtualBox/VMware) o en Docker, con red en modo host-only o interna, sin exponerlos a Internet.
- Contén el objetivo. Juice Shop, WebGoat y DVWA se levantan en contenedores en tu propia máquina; el "objetivo" y el "atacante" viven en tu equipo.
- Usa plataformas que ya dan permiso. Hack The Box, TryHackMe y la Web Security Academy te autorizan explícitamente a atacar sus entornos: es el marco legal ideal.
- Nunca uses sistemas de producción reales, ni propios ni ajenos. Ni siquiera BazarNube: para practicar, clónalo en un entorno de laboratorio.
Ejemplo mínimo de arranque de Juice Shop en local con Docker (aislado, solo accesible desde tu propia máquina):
# Descarga y ejecuta OWASP Juice Shop en un contenedor local.
# El puerto 3000 queda ligado a localhost (127.0.0.1), no expuesto a la red.
docker run --rm -p 127.0.0.1:3000:3000 bkimminich/juice-shop
# Ahora abre http://localhost:3000 en tu navegador y practica.
# Al ser 127.0.0.1, nadie fuera de tu equipo puede acceder al laboratorio.Explicación línea a línea: docker run crea el contenedor; --rm lo borra al parar (limpio y reproducible); -p 127.0.0.1:3000:3000 publica el puerto solo en tu loopback, de modo que el laboratorio vulnerable no queda accesible desde la red; la imagen bkimminich/juice-shop es la oficial del proyecto. Esta disciplina de aislamiento es la versión práctica de la ética que el curso ha subrayado desde el principio.
Plan de preparación por semanas
Un plan concreto vale más que cien recursos sueltos. Este es un plan de 8 semanas adaptable, orientado a llegar a un examen práctico de appsec. Ajusta el ritmo a tu disponibilidad y a la certificación elegida en 09-02.
| Semana | Foco | Actividad principal | Recurso |
|---|---|---|---|
| 1 | Repaso base | Rehacer la evaluación final (09-01) y detectar lagunas | Curso M3-M7 |
| 2 | Fundamentos con teoría | Completar módulos de WebGoat | WebGoat + Cheat Sheets |
| 3 | Top Ten en app real | Resolver retos de Juice Shop por categoría | Juice Shop + Top Ten |
| 4 | Metodología de testing | Recorrer WSTG probando sobre Juice Shop/DVWA | WSTG + DVWA |
| 5 | Explotación guiada | Laboratorios de PortSwigger Web Security Academy | Web Security Academy |
| 6 | Práctica realista | Máquinas/retos en TryHackMe o HTB | Plataforma CTF |
| 7 | Verificación defensiva | Auditar una app con ASVS L2 como checklist | ASVS |
| 8 | Simulacro y repaso | Examen de prueba en condiciones + repasar fallos | Simulacros del emisor |
Reglas del plan: cada sesión termina con notas (qué encontraste, cómo, cómo se remedia); mapea siempre al Top Ten y a ASVS; y repite en diferido lo que falles, no lo que ya dominas. La semana 8 (simulacro) es innegociable: llegar al examen sin haber ensayado en condiciones reales es el error más común.
Errores Comunes y Consejos
- Acumular recursos sin practicar. Ver diez cursos no equivale a resolver un reto. Prioriza el hands-on: una hora en Juice Shop enseña más que tres de vídeo pasivo.
- Practicar en sistemas ajenos "para aprender". Es ilegal, sin excepciones. Usa siempre laboratorios propios y aislados o plataformas que te autoricen. La ética no es un módulo aparte: es la condición de todo lo demás.
- Estudiar solo el ataque o solo la defensa. El appsec completo necesita ambos: recorre el bucle WSTG -> Top Ten -> Cheat Sheet -> ASVS para no quedarte cojo.
- No repasar en diferido. Lo que resuelves hoy y no repites se olvida. La retención se construye espaciando el repaso, no amontonándolo.
- Consejo: documenta cada reto como si fuera un informe profesional (hallazgo, evidencia, impacto, remediación). Es exactamente lo que piden los exámenes prácticos y los clientes reales, y te obliga a pensar como un profesional, no como un jugador de retos.
Ejercicios
Ejercicio 1. Monta OWASP Juice Shop en local de forma aislada y resuelve un reto de nivel introductorio. Documenta el hallazgo con este formato: vulnerabilidad, categoría del Top Ten 2021, cómo la encontraste y cómo se remediaría (usando la Cheat Sheet correspondiente).
Ejercicio 2. Diseña tu plan de preparación personal de 6 a 8 semanas hacia la certificación que elegiste en 09-02. Indica, semana a semana, foco, actividad y recurso, adaptando la plantilla de esta lección a tu perfil y disponibilidad.
Ejercicio 3. Explica en 4-5 frases por qué es imprescindible aislar tu laboratorio de práctica y qué diferencia legal hay entre atacar Juice Shop en tu Docker y "practicar" contra una web pública sin permiso.
Soluciones
Solución 1. Respuesta modelo (reto "Score Board" / acceso a área no listada): "Encontré una funcionalidad de administración accesible manipulando la URL sin autorización. Vulnerabilidad: control de acceso roto (IDOR/función expuesta). Top Ten 2021: A01. Cómo: exploré rutas no enlazadas y modifiqué parámetros hasta acceder a un recurso que no debía ver. Remediación (Cheat Sheet de Authorization): aplicar control de acceso del lado servidor por cada objeto y función, denegar por defecto y verificar la identidad del solicitante." Cualquier reto vale si sigue el formato hallazgo-categoría-método-remediación.
Solución 2. No hay solución única. Un buen plan reutiliza la estructura semanal de la lección pero adaptada: un aspirante a pentester dará más peso a las semanas 5-6 (explotación, CTF) y a Web Security Academy; un aspirante defensivo (CSSLP) reforzará las semanas 2, 4 y 7 (WebGoat, WSTG, ASVS) y añadirá lectura de S-SDLC. Lo correcto es que el plan sea concreto (foco + actividad + recurso por semana), realista con tu tiempo y coherente con la certificación elegida.
Solución 3. "Aislar el laboratorio (VM/Docker en red interna, puerto en 127.0.0.1) evita que la app deliberadamente vulnerable sea accesible desde Internet y comprometa tu equipo o red. La diferencia legal es total: Juice Shop en tu Docker es tu sistema, tienes permiso pleno para atacarlo; una web pública ajena no te ha autorizado, y escanearla o explotarla es un delito aunque tu intención sea aprender. La regla es simple e innegociable: solo se ataca lo que posees o lo que te han autorizado por escrito."
Conclusión
Aquí termina el viaje. Vale la pena mirar atrás y ver la distancia recorrida. Empezaste sin saber, quizá, qué era OWASP; y conociste a BazarNube, un marketplace lleno de agujeros y sin cultura de seguridad. Con el Top Ten 2021 (M3) le pusiste nombre a sus vulnerabilidades; con ASVS (M4) convertiste la seguridad en requisitos verificables; con SAMM (M5) trazaste la hoja de ruta para madurar el programa; con ZAP (M6) automatizaste la detección en el pipeline; y con las buenas prácticas (M7) —S-SDLC, threat modeling, DevSecOps, cultura y champions— cosiste todo en un proceso continuo. En el módulo 8 lo aplicaste de principio a fin, viendo a BazarNube transformarse de reactiva y vulnerable a madura y proactiva. En este módulo 9 mediste tu dominio, entendiste el papel real de OWASP en el ecosistema de certificaciones y te llevas un plan concreto para acreditarlo.
Si hay una sola idea que debe quedarte, es esta: la seguridad no es un estado que se alcanza, sino una práctica que se mantiene. No es una fase, ni una herramienta, ni un examen aprobado: es una propiedad continua del proceso, del código y de la cultura, que se cultiva cada día. BazarNube no está "asegurada para siempre"; está en un programa vivo que vigila, mide y mejora. Tú tampoco terminas aquí tu aprendizaje: terminas el curso con los cimientos puestos y las manos entrenadas para seguir construyendo. Certifícate si te ayuda, sigue practicando en los laboratorios, participa en la comunidad OWASP y, sobre todo, lleva esta mentalidad a cada aplicación en la que trabajes. El siguiente marketplace vulnerable que encuentres quizá no sea ficticio, y ahora sabes exactamente qué hacer. Enhorabuena, y bienvenido al oficio de construir software seguro.
Curso de OWASP: Directrices y Estándares para la Seguridad en Aplicaciones Web
Módulo 1: Introducción a OWASP
Módulo 2: Principales Proyectos de OWASP
- OWASP Top Ten
- OWASP ASVS (Application Security Verification Standard)
- OWASP SAMM (Software Assurance Maturity Model)
- OWASP ZAP (Zed Attack Proxy)
- Otros Proyectos Clave: WSTG, Cheat Sheets y Dependency-Check
Módulo 3: OWASP Top Ten 2021 en Profundidad
- A01:2021 – Pérdida de Control de Acceso
- A02:2021 – Fallos Criptográficos y Exposición de Datos Sensibles
- A03:2021 – Inyección
- Cross-Site Scripting (XSS) en Profundidad
- A04:2021 – Diseño Inseguro
- A05:2021 – Configuración de Seguridad Incorrecta
- Entidades Externas XML (XXE)
- A06:2021 – Componentes Vulnerables y Desactualizados
- A07:2021 – Fallos de Identificación y Autenticación
- A08:2021 – Fallos de Integridad de Software y Datos (Deserialización Insegura)
- A09:2021 – Fallos de Registro y Monitorización
- A10:2021 – Server-Side Request Forgery (SSRF)
Módulo 4: OWASP ASVS (Application Security Verification Standard)
- Introducción a ASVS
- Niveles de Verificación
- Requisitos de Seguridad
- Implementación de ASVS en Proyectos
Módulo 5: OWASP SAMM (Software Assurance Maturity Model)
Módulo 6: OWASP ZAP (Zed Attack Proxy)
- Introducción a ZAP
- Instalación y Configuración
- Escaneo de Vulnerabilidades
- Automatización de Pruebas de Seguridad
Módulo 7: Buenas Prácticas y Recomendaciones
- Ciclo de Vida de Desarrollo Seguro (SDLC)
- Modelado de Amenazas (Threat Modeling)
- Integración de Seguridad en DevOps (DevSecOps)
- Capacitación y Concienciación en Seguridad
- Herramientas y Recursos Adicionales
Módulo 8: Ejercicios Prácticos y Casos de Estudio
- Ejercicio 1: Identificación de Vulnerabilidades
- Ejercicio 2: Implementación de Controles de Seguridad
- Caso de Estudio 1: Análisis de un Incidente de Seguridad
- Caso de Estudio 2: Mejora de la Seguridad en una Aplicación Web
