Temario del curso
I. Introducción a la Codificación Segura y la Seguridad de Aplicaciones Web
1. Panorama de amenazas en las aplicaciones web modernas
- Vectores de ataque comunes en aplicaciones web.
- Riesgos de seguridad en aplicaciones ASP.NET modernas.
- El papel de la codificación segura en el desarrollo de software.
- Introducción a la Fundación OWASP y sus recursos.
2. Principios del Desarrollo de Software Seguro
- Seguridad desde el diseño.
- Defensa en profundidad.
- Mínimo privilegio.
- Fallo seguro.
- Valores predeterminados seguros.
- Fundamentos del modelado de amenazas.
II. Ciclo de Vida del Desarrollo Seguro (SDL)
1. Ciclo de Vida del Desarrollo de Software Seguro
- Seguridad durante todo el ciclo de desarrollo.
- Requisitos de seguridad.
- Arquitectura y diseño seguros.
- Prácticas de codificación segura.
- Pruebas y validación de seguridad.
- Despliegue y mantenimiento seguros.
2. Evaluación de Riesgos y Modelado de Amenazas
- Identificación de activos y amenazas.
- Análisis de la superficie de ataque.
- Vista general de STRIDE.
- Priorización de riesgos de seguridad.
III. OWASP Top 10 para Aplicaciones ASP.NET
1. Comprensión del OWASP Top 10
- Control de acceso roto.
- Fallos criptográficos.
- Inyección.
- Diseño inseguro.
- Mala configuración de seguridad.
- Componentes vulnerables y desactualizados.
- Fallos en la identificación y autenticación.
- Fallos en la integridad del software y los datos.
- Fallos en el registro y monitoreo de seguridad.
- Falsificación de solicitudes del lado del servidor (SSRF).
2. Aplicación de las recomendaciones de OWASP
- Técnicas de codificación segura.
- Controles preventivos.
- Prácticas de configuración segura.
- Ejemplos y demostraciones del mundo real.
IV. Seguridad en Autenticación y Autorización
1. Fundamentos de la Autenticación
- Mecanismos de autenticación en ASP.NET.
- Seguridad de contraseñas.
- Autenticación multifactor.
- Gestión de sesiones.
- Gestión de identidades.
2. Autorización y Control de Acceso
- Autorización basada en roles.
- Autorización basada en reclamaciones (claims).
- Autorización basada en políticas.
- Prevención de escalada de privilegios.
- Protección de recursos sensibles.
V. Prevención de Ataques de Inyección
1. Vulnerabilidades de Inyección
- Inyección SQL.
- Inyección de comandos.
- Inyección LDAP.
- Inyección XML.
- Vista general de la inyección NoSQL.
2. Técnicas de Codificación Segura
- Consultas parametrizadas.
- Validación de entrada.
- Codificación de salida.
- Consideraciones de seguridad para ORM.
- Prácticas seguras de acceso a bases de datos.
VI. Prevención del Cross-Site Scripting (XSS)
1. Comprensión de XSS
- XSS almacenado.
- XSS reflejado.
- XSS basado en el DOM.
- Escenarios de ataque.
2. Prevención de XSS
- Codificación de salida.
- Validación de entrada.
- Política de Seguridad de Contenidos (CSP).
- Manejo seguro de HTML y JavaScript.
- Características de seguridad de ASP.NET para la prevención de XSS.
VII. Prevención del Cross-Site Request Forgery (CSRF)
1. Comprensión de CSRF
- Cómo funcionan los ataques CSRF.
- Escenarios de ataque comunes.
- Impacto empresarial.
2. Protección contra CSRF
- Ficheros antifalsificación (anti-forgery tokens).
- Cookies SameSite.
- Gestión segura de sesiones.
- Mecanismos antifalsificación de ASP.NET.
VIII. Configuración Segura de Aplicaciones ASP.NET
1. Características de Seguridad de ASP.NET
- Seguridad en la configuración.
- Cabeceras HTTP seguras.
- Configuración de HTTPS y TLS.
- Gestión de secretos.
- Manejo de errores seguro.
2. Protección de Datos Sensibles
- APIs de protección de datos.
- Almacenamiento seguro de credenciales.
- Fundamentos de la encriptación.
- Gestión de claves.
IX. Validación de Entrada y Manejo Seguro de Datos
1. Validación de la Entrada del Usuario
- Listas blancas versus listas negras.
- Validación del lado del servidor.
- Consideraciones sobre la validación del lado del cliente.
- Seguridad en la carga de archivos.
2. Procesamiento Seguro de Datos
- Seguridad en la serialización.
- Riesgos de deserialización.
- Integridad de los datos.
- Prácticas seguras de registro (logging).
X. Pruebas de Penetración y Verificación de Seguridad
1. Metodología de Pruebas de Penetración
- Planificación de evaluaciones de seguridad.
- Identificación de vulnerabilidades.
- Conceptos de explotación.
- Informes de hallazgos.
2. Técnicas de Pruebas de Seguridad
- Pruebas de Seguridad Estáticas de Aplicaciones (SAST).
- Pruebas de Seguridad Dinámicas de Aplicaciones (DAST).
- Pruebas de Seguridad Interactivas de Aplicaciones (IAST).
- Análisis de dependencias y componentes.
- Revisión manual del código.
XI. Seguridad de Aplicaciones ASP.NET
1. Aplicación de Prácticas de Codificación Segura
- Implementación segura de autenticación.
- Implementación segura de autorización.
- Seguridad de sesiones.
- Manejo de excepciones.
- Registro y monitoreo.
- Consideraciones para el despliegue seguro.
2. Mejores Prácticas de Seguridad
- Estándares de codificación segura.
- Gestión de dependencias.
- Gestión de parches.
- Mejora continua de la seguridad.
XII. Taller Práctico de Seguridad
1. Identificación y Explotación de Vulnerabilidades Comunes
- Análisis de código ASP.NET inseguro.
- Identificación de vulnerabilidades del OWASP Top 10.
- Comprensión de técnicas de ataque.
- Evaluación de la seguridad de la aplicación.
2. Remediación de Problemas de Seguridad
- Aplicación de correcciones de codificación segura.
- Validación de mitigaciones.
- Pruebas de aplicaciones remediadas.
- Ejercicio de revisión de codificación segura.
XIII. Resumen y Revisión del Curso
1. Revisión de Conceptos Clave
- Principios de diseño seguro.
- Estrategias de mitigación del OWASP Top 10.
- Características de seguridad de ASP.NET.
- Ciclo de vida del desarrollo seguro.
2. Discusión Final
- Mejores prácticas de codificación segura.
- Incorporación de la seguridad en los equipos de desarrollo.
- Recursos y herramientas adicionales de OWASP.
- Preguntas y respuestas, y próximos pasos.
Requerimientos
Experiencia con ASP.NET.
Experiencia en la creación de aplicaciones web.
Reseñas (5)
Introducción a los muchos tipos diferentes de comportamientos inseguros.
Zhongqi
Curso - Secure Developer .NET (Inc OWASP)
Traducción Automática
Tener una sesión uno a uno con Raymond fue increíble, realmente fue muy atento y se preocupó por todas mis necesidades de capacitación.
Joshua
Curso - Secure Developer .NET (Inc OWASP)
Traducción Automática
El alto nivel de conocimiento del instructor significó que obtuvimos una muy buena visión de los temas tratados.
Dafydd - TATA Steel
Curso - Secure Developer .NET (Inc OWASP)
Traducción Automática
los enlaces de referencia
Abraham Gonzalez - ATEB Servicios
Curso - Secure Developer .NET (Inc OWASP)
Traducción Automática
El conocimiento del formador sobre el tema fue excelente, y la forma en que se organizaron las sesiones para que el público pudiera seguir los ejemplos realmente ayudó a consolidar ese conocimiento, en comparación con solo sentarse y escuchar.
Jack Allan - RSM UK Management Ltd.
Curso - Secure Developer .NET (Inc OWASP)
Traducción Automática