Solicitar información

Temario del curso

I. Introducción a la Programación Segura y a la Seguridad de las Aplicaciones Web

1. Panorama actual de amenazas para aplicaciones web

  • Vectores comunes de ataque en aplicaciones web
  • Riesgos de seguridad en aplicaciones ASP.NET modernas
  • Importancia de la programación segura durante el desarrollo de software
  • Presentación de la Fundación OWASP y sus recursos

2. Principios del Desarrollo de Software Seguro

  • Diseño orientado a la seguridad
  • Defensa en profundidad
  • Principio de mínimo privilegio
  • Operar de forma segura incluso ante fallos
  • Configuraciones predeterminadas seguras
  • Fundamentos del modelado de amenazas

II. Ciclo de Vida del Desarrollo de Software Seguro (SDLC)

1. Implementación del SDLC en el desarrollo de software

  • Incorporación de la seguridad en cada etapa del ciclo de vida del desarrollo
  • Definición y manejo de requisitos de seguridad
  • Diseño y arquitectura orientados a la seguridad
  • Prácticas de programación segura
  • Pruebas y validación de aspectos de seguridad
  • Implementación y mantenimiento seguro del software

2. Evaluación de riesgos y modelado de amenazas

  • Identificación de activos y posibles amenazas
  • Análisis del perímetro de ataque
  • Introducción al modelo STRIDE
  • Priorización de riesgos de seguridad identificados

III. El Top 10 de OWASP para Aplicaciones ASP.NET

1. Comprensión del Top 10 de OWASP

  • Fallos en el control de acceso
  • Problemas relacionados con criptografía
  • Ataques por inyección
  • Diseño poco seguro del software
  • Configuraciones incorrectas desde el punto de vista de la seguridad
  • Uso de componentes obsoletos o vulnerables
  • Fallos en la identificación y autenticación del usuario
  • Problemas de integridad en software y datos
  • Falta de registros y monitoreo adecuados de seguridad
  • Secuestro de solicitudes desde el servidor (SSRF)

2. Aplicación de las recomendaciones de OWASP

  • Técnicas de programación segura para prevenir vulnerabilidades
  • Controles preventivos en el código
  • Prácticas recomendadas para configurar aplicaciones con seguridad
  • Ejemplos prácticos y demostraciones en vivo

IV. Seguridad en la Autenticación y Autorización

1. Fundamentos de la autenticación

  • Mecanismos de autenticación disponibles en ASP.NET
  • Seguridad en el manejo de contraseñas
  • Autenticación multifactor
  • Gestión segura de sesiones de usuario
  • Manejo adecuado de identidades digitales

2. Autorización y control de acceso

  • Autorización basada en roles
  • Autorización según los atributos del usuario (claims)
  • Políticas personalizadas para autorización
  • Prevención de la escalación indebida de privilegios
  • Protección de información sensible dentro de las aplicaciones

V. Prevención de Ataques por Inyección

1. Vulnerabilidades derivadas de inyecciones

  • Inyección SQL
  • Inyección de comandos
  • Inyección LDAP
  • Inyección XML
  • Introducción a los riesgos de inyección en bases de datos NoSQL

2. Técnicas para escribir código seguro

  • Uso de consultas parametrizadas para evitar inyecciones
  • Validación exhaustiva de datos ingresados por el usuario
  • Codificación adecuada antes de mostrar contenido en pantalla
  • Precauciones especiales al utilizar frameworks ORM
  • Prácticas seguras para interactuar con bases de datos

VI. Prevención del Cross-Site Scripting (XSS)

1. Comprensión básica del XSS

  • XSS almacenado en la base de datos
  • XSS reflejado por el servidor o cliente
  • XSS basado en el DOM (Document Object Model)
  • Posibles escenarios de ataque relacionados con XSS

2. Medidas para combatir el XSS

  • Codificación segura del contenido que se muestra al usuario
  • Validación previa de todos los datos introducidos por los usuarios
  • Aplicación estricta de políticas de seguridad en el contenido (CSP)
  • Manejo cuidadoso de etiquetas HTML y código JavaScript
  • Uso de funcionalidades integradas en ASP.NET para prevenir XSS

VII. Prevención del Cross-Site Request Forgery (CSRF)

1. Comprensión de los ataques CSRF

  • Cómo se llevan a cabo estos tipos de ataques
  • Ejemplos frecuentes de situaciones donde puede ocurrir un CSRF
  • Impacto negativo que pueden tener en el negocio

2. Protección contra ataques CSRF

  • Implementación de tokens anti-falsificación para autenticación
  • Uso adecuado de cookies con el flag SameSite activado
  • Gestión segura y consistente de las sesiones del usuario
  • Aprovechamiento de mecanismos internos de ASP.NET para combatir CSRF

VIII. Configuración Segura de Aplicaciones ASP.NET

1. Funcionalidades de seguridad integradas en ASP.NET

  • Mecanismos de configuración orientados a la protección del entorno
  • Uso correcto y eficaz de encabezados HTTP seguros
  • Ajustes recomendados para el uso de HTTPS y TLS en la comunicación
  • Manejo adecuado de información sensible como contraseñas o claves criptográficas
  • Gestión correcta de los errores del sistema, minimizando posibles filtraciones de datos

2. Protección de información sensible en las aplicaciones

  • Aplicación adecuada de APIs orientadas a la protección de datos
  • Técnicas para guardar credenciales de manera segura
  • Conceptos básicos sobre cifrado y sus aplicaciones prácticas
  • Organización y manejo correcto de claves utilizadas en el procesamiento de datos

IX. Validación de Datos e Integridad de la Información Procesada

1. Verificación de los datos enviados por los usuarios

  • Diferencias y ventajas entre listas blancas y negras para validación de contenido
  • Aplicación obligatoria de la validación en el lado del servidor
  • Consideraciones para implementar controles en el cliente, cuando sea adecuado
  • Estrategias seguras para el manejo de archivos subidos por los usuarios

2. Procesamiento seguro y responsable de datos

  • Buenas prácticas al serializar información en formatos diversos
  • Posibles peligros derivados de la deserialización descontrolada de contenido
  • Mantenimiento correcto e inalterado del contenido de los datos procesados
  • Técnicas adecuadas para registrar sucesos sin exponer información sensible

X. Pruebas de Penetración y Verificación de la Seguridad

1. Metodología básica para ejecutar pruebas de penetración

  • Planificación metódica para evaluar la seguridad del sistema
  • Búsqueda sistemática de posibles vulnerabilidades activas en el software
  • Conceptos generales sobre cómo aprovechar estas debilidades durante los ataques simulados
  • Forma profesional y efectiva de documentar resultados obtenidos tras las pruebas

2. Técnicas comunes para comprobar la seguridad del código

  • Aplicación de técnicas SAST (análisis estático de software)
  • Evaluaciones DAST, que contemplen el comportamiento del sistema en tiempo real
  • Uso estratégico de IAST para combinar métodos dinámicos y estáticos
  • Análisis detallado de dependencias, librerías y módulos utilizados en el proyecto
  • Revisión manual cuidadosa del código fuente para localizar puntos débiles ocultos

XI. Puesta en Práctica de Estrategias Seguras para Aplicaciones ASP.NET

1. Implementación práctica de la programación segura

  • Diseño adecuado del proceso de autenticación, minimizando riesgos asociados
  • Gestión responsable y fiable de los derechos de autorización entre usuarios
  • Mantenimiento cuidadoso de las sesiones de conexión en tiempo real
  • Tratamiento idóneo de errores durante el desarrollo para no exponer información sensible
  • Implementación robusta del monitoreo y registros de actividad relacionados con la seguridad
  • Elementos clave a evaluar antes de proceder a publicar las aplicaciones en producción

2. Buenas prácticas establecidas para garantizar la integridad del software

  • Estándares definidos y obligatorios para mantener una codificación segura entre los desarrolladores
  • Manejo adecuado de dependencias externas, incluyendo su actualización periódica
  • Sistema riguroso para aplicar parches en componentes vulnerables
  • Esfuerzos continuos por mejorar la seguridad integral del desarrollo informático

XII. Taller Práctico de Seguridad Informática

1. Detección y estudio profundo de vulnerabilidades recurrentes

  • Evaluación minuciosa de fragmentos de código ASP.NET que presenten fallas evidentes
  • Búsqueda activa de posibles debilidades listadas en el Top 10 de OWASP
  • Análisis cuidadoso sobre los diferentes métodos empleados para atacar este tipo de aplicaciones
  • Estudio integral del nivel real de protección alcanzado por la plataforma software analizada

2. Soluciones prácticas ante los problemas detectados

  • Integración y ensayo rápido de mejoras seguras para corregir anomalías previas
  • Comprobación precisa si dichos cambios resultan efectivos en términos preventivos
  • Ejecución de pruebas exhaustivas a la nueva versión actualizada del programa
  • Ejercicio final: Revisión detallada y colaborativa por parte de los alumnos para evaluar mejoras realizadas

XIII. Resumen Final y Retroalimentación sobre el Curso

1. Recordatorio importante respecto a los conceptos clave del programa

  • Principios fundamentales para estructurar un diseño fiable y protegido ante fallas
  • Estrategias probadas para combatir eficazmente las vulnerabilidades listadas en el Top 10 de OWASP
  • Características de seguridad propias ofrecidas por ASP.NET
  • Conformación correcta y evolución natural del ciclo vital del desarrollo software seguro

2. Conversación final orientada a reflexionar sobre el aprendizaje alcanzado

  • Reflexión conjunta acerca de los estándares más efectivos en programación segura actualmente
  • Mecanismos viables para integrar principios preventivos dentro de los equipos de desarrollo informático
  • Enlace a valiosos materiales y herramientas adicionales gestionados directamente por OWASP
  • Espacio abierto para realizar consultas pendientes y definir próximos pasos de aprendizaje

Requerimientos

Experiencia previa con ASP.NET
Conocimientos en el desarrollo de aplicaciones web

 21 Horas

Formación Corporativa a Medida

Soluciones de formación diseñadas exclusivamente para empresas.

  • Contenido personalizado: Adaptamos el temario y los ejercicios prácticos a los objetivos y necesidades reales del proyecto.
  • Calendario flexible: Fechas y horarios adaptados a la agenda de su equipo.
  • Modalidad: Online (en directo), In-company (en sus oficinas) o Híbrida.
Inversión

Precio por grupo privado (formación online) desde 4350 € + IVA*

Contáctenos para obtener un presupuesto exacto y conocer nuestras promociones actuales

Reseñas (5)

Próximos cursos

Categorías Relacionadas