Desarrollo Seguro de Software Secure Software Development — SSDLC & DevSecOps
El curso Desarrollo Seguro de Software está diseñado para enseñar a los participantes cómo integrar la seguridad durante todo el ciclo de vida del desarrollo de software, desde el análisis de requisitos y el diseño de la arquitectura hasta la programación, las pruebas, la integración continua y el despliegue.
Duración
40hrs
Modalidad
Mixto
A través de un enfoque práctico, los participantes aprenderán a identificar amenazas, prevenir vulnerabilidades, aplicar prácticas de Secure Coding, analizar código y dependencias, proteger APIs y aplicaciones web, y automatizar controles de seguridad dentro de pipelines CI/CD.
El curso integra conceptos de SSDLC (Secure Software Development Life Cycle), OWASP, Secure by Design, Threat Modeling, SAST, DAST, SCA y DevSecOps, permitiendo que los desarrolladores incorporen la seguridad como parte natural de su proceso de trabajo y no únicamente como una etapa posterior al desarrollo.
Durante el curso se trabajará sobre escenarios y laboratorios prácticos para identificar vulnerabilidades, corregirlas y establecer controles de seguridad automatizados.
Objetivo General
Al finalizar el curso, el participante estará en capacidad de:
- Comprender los principios fundamentales del desarrollo seguro de software.
- Diferenciar un SDLC tradicional de un SSDLC.
- Incorporar seguridad desde las etapas iniciales de análisis y diseño.
- Identificar amenazas y riesgos mediante técnicas de Threat Modeling.
- Aplicar principios de Secure by Design y arquitectura segura.
- Reconocer y prevenir vulnerabilidades comunes en aplicaciones web y APIs.
- Aplicar buenas prácticas de Secure Coding.
- Implementar mecanismos seguros de autenticación, autorización y gestión de sesiones.
- Analizar vulnerabilidades en código fuente, dependencias y aplicaciones.
- Comprender y utilizar herramientas SAST, DAST y SCA.
- Integrar controles de seguridad dentro de procesos CI/CD.
- Aplicar principios de DevSecOps.
- Implementar controles relacionados con secretos, dependencias y contenedores.
- Realizar revisiones de seguridad sobre aplicaciones.
- Desarrollar un proyecto práctico aplicando un flujo completo de desarrollo seguro.
¿A quién va dirigido?
Este curso está dirigido principalmente a:
- Desarrolladores de software.
- Ingenieros de software.
- Programadores Web.
- Desarrolladores Backend y Frontend.
- Ingenieros DevOps.
- Profesionales de Ciberseguridad.
- Ingenieros de infraestructura interesados en DevSecOps.
- Arquitectos de software.
- Profesionales de QA y Testing.
- Líderes técnicos y Tech Leads.
- Administradores de aplicaciones.
- Estudiantes y profesionales de tecnología que quieran especializarse en desarrollo seguro.
Prerrequisitos
Se recomienda que el participante tenga:
- Conocimientos básicos de programación.
- Conocimientos de desarrollo de aplicaciones web.
- Conceptos básicos de bases de datos.
- Conocimientos básicos de APIs y servicios web.
- Manejo básico de Git y GitHub.
- Conocimientos generales sobre HTML, JavaScript o algún lenguaje de programación.
- No es necesario tener conocimientos avanzados de ciberseguridad.
Para aprovechar mejor los laboratorios, es recomendable tener experiencia previa con alguno de los siguientes entornos: Java, .NET, Python, JavaScript/TypeScript, Node.js o frameworks web como Angular o React.
Desarrollo del programa
MÓDULO 1 — FUNDAMENTOS DEL DESARROLLO SEGURO SSDLC, Secure by Design y gestión de amenazas
En este módulo el participante comprenderá por qué la seguridad debe incorporarse desde las primeras etapas del desarrollo y no únicamente durante las pruebas finales. Se introducen los conceptos de SSDLC, Secure by Design, gestión de riesgos y Threat Modeling, estableciendo las bases para integrar seguridad en los procesos de desarrollo.
Contenidos
- 1.1. Introducción al desarrollo seguro
- 1.2. SDLC vs. SSDLC
- 1.3. Secure by Design
- 1.4. Identificación y gestión de riesgos
- 1.5. Threat Modeling
- 1.6. OWASP y desarrollo seguro
MÓDULO 2 — ARQUITECTURA Y DISEÑO SEGURO
Este módulo aborda la seguridad desde la perspectiva de la arquitectura de las aplicaciones. El participante aprenderá a diseñar aplicaciones considerando autenticación, autorización, protección de datos, gestión de secretos, segmentación y principios de arquitectura segura.
Contenidos
- 2.1. Principios de arquitectura segura
- 2.2. Principio de Least Privilege
- 2.3. Zero Trust aplicado al desarrollo
- 2.4. Autenticación y autorización
- 2.5. Gestión de sesiones
- 2.6. Protección de datos
- 2.7. Gestión de secretos
MÓDULO 3 — SECURE CODING
Programación segura y prevención de vulnerabilidades: Este módulo se enfoca en las vulnerabilidades más frecuentes presentes en aplicaciones modernas y en las técnicas necesarias para prevenirlas desde el código. El participante analizará vulnerabilidades y aplicará técnicas de programación segura para reducir la superficie de ataque.
Contenidos
- 3.1. OWASP Top 10
- 3.2. Injection
- 3.3. Cross-Site Scripting — XSS
- 3.4. Cross-Site Request Forgery — CSRF
- 3.5. Broken Access Control
- 3.6. Security Misconfiguration
- 3.7. Validación de entradas
- 3.8. Manejo seguro de errores
- 3.9. Seguridad de APIs
- 3.10. JWT y OAuth 2.0
- 3.11. Code Review
MÓDULO 4 — SECURITY TESTING
SAST, DAST, SCA y análisis de vulnerabilidades: El participante aprenderá a incorporar pruebas de seguridad dentro del proceso de desarrollo para detectar vulnerabilidades antes de que las aplicaciones lleguen a producción.
Contenidos
- 4.1. Introducción a Security Testing
- 4.2. SAST — Static Application Security Testing
- 4.3. DAST — Dynamic Application Security Testing
- 4.4. SCA — Software Composition Analysis
- 4.5. Fuzzing
- 4.6. SonarQube
- 4.7. Semgrep
- 4.8. OWASP ZAP
MÓDULO 5 — DEVSECOPS
Integración de seguridad en CI/CD: Este módulo introduce el modelo DevSecOps, mostrando cómo integrar controles de seguridad dentro de los procesos de integración y despliegue continuo. El participante aprenderá a automatizar análisis y controles de seguridad para que formen parte del pipeline.
Contenidos
- 5.1. Introducción a DevSecOps
- 5.2. Git y seguridad
- 5.3. CI/CD seguro
- 5.4. Integración de SAST
- 5.5. Integración de SCA
- 5.6. Secret Scanning
- 5.7. Seguridad de contenedores
- 5.8. Security Gates
MÓDULO 6 — PROYECTO PRÁCTICO INTEGRADOR
Implementación de un ciclo completo de desarrollo seguro: En este módulo final el participante integrará los conocimientos adquiridos durante el curso mediante la construcción y evaluación de una aplicación. El objetivo es aplicar un flujo completo de SSDLC + Secure Coding + Security Testing + DevSecOps.
Contenidos
- 6.1. Definición del proyecto
- 6.2. Threat Modeling
- 6.3. Secure Coding
- 6.4. Security Testing
- 6.5. Corrección de vulnerabilidades
- 6.6. Pipeline DevSecOps
- 6.7. Seguridad del despliegue
- 6.8. Informe final


