Programa del Curso

Día 1

  • Seguridad informática y codificación segura
    • Naturaleza de la seguridad
    • Términos relacionados con la seguridad informática
    • Definición de riesgo
    • Diferentes aspectos de la seguridad informática
    • Requisitos de las diferentes áreas de aplicación
    • Seguridad de TI frente a codificación segura
    • De las vulnerabilidades a las botnets y la ciberdelincuencia
      • Naturaleza de las fallas de seguridad
      • Razones de dificultad
      • De un ordenador infectado a ataques dirigidos
    • Clasificación de los fallos de seguridad
      • Taxonomía de Landwehr
      • Los Siete Reinos Perniciosos
      • OWASP Los diez mejores de 2013
      • OWASP Comparación de los diez mejores entre 2003 y 2013
  • Introducción al ciclo ® de vida de desarrollo de seguridad (SDL)
    • Agenda
    • Aplicaciones bajo ataque...
      • Evolución de la ciberdelincuencia
      • Los ataques se centran en las aplicaciones
      • La mayoría de las vulnerabilidades se encuentran en aplicaciones ISV más pequeñas
    • Orígenes de la Microsoft SDL...
      • Cronología de seguridad en Microsoft...
      • ¿Qué aplicaciones deben seguir SDL?
    • Microsoft Ciclo de vida del desarrollo de la seguridad (SDL)
      • Microsoft Ciclo de vida del desarrollo de la seguridad (SDL)
      • Requisitos previos a SDL: Formación en seguridad
      • Primera fase: Requisitos
      • Segunda fase: Diseño
      • Tercera fase: Implementación
      • Cuarta fase: Verificación
      • Fase Cinco: Liberación – Plan de Respuesta
      • Fase cinco: Lanzamiento – Revisión de seguridad final
      • Fase Cinco: Lanzamiento – Archivo
      • Requisito posterior al SDL: Respuesta
      • Guía de procesos de SDL para aplicaciones de línea de negocio
      • Guía de SDL para metodologías Agile
      • El desarrollo de software seguro requiere la mejora de los procesos
  • Principios de diseño seguro
    • Superficie de ataque
      • Reducción de la superficie de ataque
      • Superficie de ataque: un ejemplo
      • Análisis de la superficie de ataque
      • Reducción de la superficie expuesta a ataques: ejemplos
    • Privacidad
      • Privacidad
      • Comprender los comportamientos y preocupaciones de las aplicaciones
    • Defensa en profundidad
      • Principio básico de SDL: Defensa en profundidad
      • Defensa en profundidad: ejemplo
    • Principio de privilegio mínimo
      • Privilegio mínimo: ejemplo
    • Valores predeterminados seguros
      • Valores predeterminados seguros: ejemplos
  • Principios de implementación segura
    • Agenda
    • Microsoft Ciclo de vida del desarrollo de la seguridad (SDL)
    • Conceptos básicos de desbordamiento de búfer
      • Procesadores Intel 80x86 – registros principales
      • El diseño de la dirección de memoria
      • El mecanismo de llamada a la función en C/C++ en x86
      • Las variables locales y el marco de pila
      • Desbordamiento de pila
        • Desbordamiento de búfer en la pila
        • Ejercicios – introducción
        • Ejercicio BOFIntro
        • Ejercicio BOFIntro: determinar el diseño de la pila
        • Ejercicio BOFIntro: un exploit simple
    • Validación de entradas
      • Conceptos de validación de entrada
      • Problemas con enteros
        • Representación de números enteros negativos
        • Desbordamiento de enteros
        • Desbordamiento aritmético: ¡adivina el resultado!
        • Ejercicio IntOverflow
        • ¿Cuál es el valor de Math.Abs(int. MinValue)?
      • Mitigación de problemas de enteros
        • Mitigación de problemas de enteros
        • Evitar el desbordamiento aritmético – suma
        • Evitar el desbordamiento aritmético – multiplicación
        • Detección de desbordamiento con la palabra clave marcada en C#
        • Ejercicio – Usando la palabra clave checked en C#
        • Excepciones desencadenadas por desbordamientos en C#
      • Caso práctico: Desbordamiento de enteros en .NET
        • Una vulnerabilidad de desbordamiento de enteros del mundo real
        • Explotación de la vulnerabilidad de desbordamiento de enteros
      • Vulnerabilidad de recorrido de ruta
        • Mitigación de recorrido de ruta

Día 2

  • Principios de implementación segura
    • Inyección
      • Métodos típicos de ataque de inyección SQL
      • Inyección ciega y basada en el tiempo SQL
      • SQL Métodos de protección contra inyecciones
      • Inyección de comandos
    • Autenticación rota: gestión de contraseñas
      • Ejercicio – Debilidad de las contraseñas con hash
      • Gestión y almacenamiento de contraseñas
      • Algoritmos hash de propósito especial para el almacenamiento de contraseñas
    • Secuencias de comandos entre sitios (XSS)
      • Secuencias de comandos entre sitios (XSS)
      • CSS Inyección
      • Explotación: inyección a través de otras etiquetas HTML
      • Prevención de XSS
    • Falta control de acceso a nivel de función
      • Filtrado de cargas de archivos
    • Criptografía práctica
      • Proporcionar confidencialidad con criptografía simétrica
      • Algoritmos de cifrado simétrico
      • Cifrados de bloques: modos de funcionamiento
      • Hash o resumen de mensaje
      • Algoritmos hash
      • Código de autenticación de mensajes (MAC)
      • Proporcionar integridad y autenticidad con una clave simétrica
      • Proporcionar confidencialidad con cifrado de clave pública
      • Regla general: posesión de clave privada
      • Errores típicos en la gestión de contraseñas
      • Ejercicio – Contraseñas codificadas de forma rígida
      • Conclusión
  • Principios de verificación segura
    • Pruebas funcionales vs. pruebas de seguridad
    • Vulnerabilidades de seguridad
    • Priorización
    • Pruebas de seguridad en el SDLC
    • Pasos de la planificación de pruebas (análisis de riesgos)
    • Determinación del alcance y recopilación de información
      • Participantes
      • Activo
      • La superficie de ataque
      • Objetivos de seguridad para las pruebas
    • Modelado de amenazas
      • Modelado de amenazas
      • Perfiles de los atacantes
      • Modelado de amenazas basado en árboles de ataque
      • Modelado de amenazas basado en casos de uso indebido/abuso
      • Casos de uso indebido/abuso: un ejemplo sencillo de tienda web
      • Enfoque STRIDE por elemento para el modelado de amenazas: MS SDL
      • Identificación de objetivos de seguridad
      • Diagramación: ejemplos de elementos DFD
      • Diagrama de flujo de datos: ejemplo
      • Enumeración de amenazas: elementos STRIDE y DFD de MS SDL
      • Análisis de riesgos: clasificación de amenazas
      • El modelo de clasificación de amenazas/riesgos DREAD
    • Técnicas y herramientas de pruebas de seguridad
      • Enfoques generales de las pruebas
      • Técnicas para varios pasos del SDLC
    • Revisión de código
      • Revisión de código para la seguridad del software
      • Análisis de la contaminación
      • Heurística
    • Análisis de código estático
      • Análisis de código estático
      • Análisis de código estático
      • Ejercicio: uso de herramientas de análisis de código estático
    • Prueba de la implementación
      • Verificación manual en tiempo de ejecución
      • Pruebas de seguridad manuales vs. automatizadas
      • Pruebas de penetración
      • Pruebas de estrés
    • Fuzzing
      • Pruebas de seguridad automatizadas: fuzzing
      • Desafíos del fuzzing
    • Escáneres de vulnerabilidades web
      • Ejercicio: uso de un escáner de vulnerabilidades
    • Comprobación y endurecimiento del entorno
      • Sistema común de puntuación de vulnerabilidades – CVSS
      • Escáneres de vulnerabilidades
      • Bases de datos públicas
    • Caso práctico: omisión de autenticación de formularios
      • Vulnerabilidad de terminación de bytes NULL
      • La vulnerabilidad de omisión de autenticación de formularios en el código
      • Aprovechamiento de la omisión de autenticación de formularios
  • Fuentes de conocimiento
    • Fuentes de codificación seguras: un kit de inicio
    • Bases de datos de vulnerabilidades
    • Directrices de codificación segura de .NET en MSDN
    • Hojas de referencia rápida de codificación segura de .NET
    • Libros recomendados: .NET y ASP.NET
 14 Horas

Número de participantes


Precio por Participante​

Testimonios (5)

Próximos cursos

Categorías Relacionadas