Curso Red Team para Desarrolladores

Este curso básico está diseñado para enseñar a desarrolladores web cómo identificar, explotar y mitigar vulnerabilidades críticas de seguridad en aplicaciones web, usando un enfoque Red Team. A lo largo del curso se construirá una aplicación web intencionalmente vulnerable con Angular (frontend) y Spring Boot (API REST), que luego será utilizada para demostrar ataques reales basados en las vulnerabilidades más relevantes del OWASP Top 10 Web 2021 y OWASP API Security Top 10 2023. No se usará Docker. El curso se enfoca exclusivamente en entornos de desarrollo accesibles y técnicas prácticas.

Mira una introducción al curso aquí.

¿Para quién es este curso?

Este curso está diseñado para desarrolladores web, especialistas en seguridad ofensiva junior, y cualquier persona interesada en comprender y explotar vulnerabilidades en aplicaciones web desde una perspectiva de Red Team. No se requieren conocimientos previos profundos en ciberseguridad, pero una comprensión básica de desarrollo web (HTML, CSS, JavaScript, frameworks) es beneficiosa.

Qué vas a aprender

Fundamentos de Red Team

Comprenderás el pensamiento ofensivo y el rol del desarrollador en seguridad.

Desarrollo de Apps Vulnerables

Aprenderás a construir APIs inseguras con Spring Boot y frontends vulnerables con Angular.

Explotación de Vulnerabilidades

Dominarás la explotación de las vulnerabilidades OWASP Top 10 Web y API más relevantes.

Corrección y Mitigación

Desarrollarás habilidades para corregir y mitigar las vulnerabilidades de forma segura.

Contenido del Curso

Módulo 1 – Fundamentos del Red Team para Desarrolladores

Imagen de Clase 1.1
Clase 1.1: Introducción al pensamiento ofensivo y rol del desarrollador en seguridad

Concepto de Red Team, rol del desarrollador en seguridad, y cómo el atacante analiza un sistema.

Imagen de Clase 1.2
Clase 1.2: Introducción a OWASP Top 10 Web (2021) y API (2023)

Exploración de las listas OWASP Top 10 Web y API, y análisis de vulnerabilidades prácticas.

Imagen de Clase 1.3
Clase 1.3: Herramientas esenciales de ataque para desarrolladores

Instalación y configuración de Postman, Burp Suite, OWASP ZAP para pruebas de seguridad.

Módulo 2 – Desarrollo de la Aplicación Web Vulnerable

Imagen de Clase 2.1
Clase 2.1: Creación de una API insegura con Spring Boot

Construcción de una API REST vulnerable para simular fallos de seguridad.

Imagen de Clase 2.2
Clase 2.2: Frontend vulnerable con Angular

Desarrollo de un frontend Angular con prácticas inseguras para visualizar ataques.

Módulo 3 – Ataques Red Team: Explotación de vulnerabilidades OWASP

Imagen de Clase 3.1
Clase 3.1: Broken Access Control (A01:2021)

Cómo un atacante accede y manipula recursos sin autorización.

Imagen de Clase 3.2
Clase 3.2: Injection (A03:2021)

Explotación de campos vulnerables a SQL Injection y uso de payloads.

Imagen de Clase 3.3
Clase 3.3: Security Misconfiguration (A05:2021)

Identificación de información sensible filtrada por mala configuración del servidor.

Imagen de Clase 3.4
Clase 3.4: Broken Object Level Authorization (API1:2023)

Ataque a APIs que permiten consultar o modificar recursos sin validar propiedad.

Imagen de Clase 3.5
Clase 3.5: Broken Object Property Level Authorization (API3:2023)

Modificación de propiedades sensibles en JSON por falta de controles.

Imagen de Clase 3.6
Clase 3.6: Server Side Request Forgery (SSRF) (API7:2023)

Simulación de SSRF para redirigir a recursos internos y validar conectividad.

Módulo 4 – Desarrollo Seguro: Corrección y mitigación de vulnerabilidades OWASP

Imagen de Clase 4.1
Clase 4.1: Implementación segura de control de acceso (A01:2021 y API1:2023)

Validación de permisos de usuario y protección de rutas sensibles con Spring Security.

Imagen de Clase 4.2
Clase 4.2: Prevención de inyecciones con consultas seguras (A03:2021)

Cómo prevenir SQL Injection con consultas parametrizadas y validaciones de entrada.

Imagen de Clase 4.3
Clase 4.3: Configuración segura del servidor y cabeceras HTTP (A05:2021)

Configuración de cabeceras seguras y cómo evitar exposición de información sensible.

Imagen de Clase 4.4
Clase 4.4: Protección de propiedades sensibles en objetos JSON (API3:2023)

Cómo ignorar o filtrar propiedades sensibles desde el lado del servidor.

Imagen de Clase 4.5
Clase 4.5: Mitigación de SSRF (API7:2023)

Restricción de URLs externas y evitación de acceso a direcciones internas.