Ponte en Contacto
 Duración 21 horas

Temario del curso

Introducción al desarrollo seguro en C y C++

  • Comprensión de los principios del desarrollo de software seguro
  • Riesgos de seguridad comunes en aplicaciones C y C++
  • La relación entre errores de programación y vulnerabilidades de seguridad
  • Estándares y mejores prácticas en programación segura

Vulnerabilidades comunes en la programación C y C++

  • Identificación de errores de programación comunes que introducen riesgos de seguridad
  • Problemas de seguridad de la memoria en C y C++
  • Patrones de vulnerabilidad y su impacto
  • Análisis de ejemplos de código inseguro

Principios de programación segura

  • Aplicación de técnicas de defensa en profundidad
  • Escritura de código robusto y mantenible
  • Minimización de las superficies de ataque
  • Principios de diseño seguro para aplicaciones C y C++

Validación de entradas y manejo de datos

  • Comprensión de la importancia de la validación de entradas
  • Prevención de la explotación de entradas maliciosas
  • Técnicas de sanitización de datos
  • Manejo seguro de datos de usuarios y datos externos

Gestión de errores y manejo de excepciones

  • Riesgos asociados con el manejo inadecuado de errores
  • Diseño de mecanismos seguros de manejo de errores y excepciones
  • Evitar la fuga de información a través de errores
  • Creación de aplicaciones resilientes

Seguridad de la memoria y protección contra desbordamientos de búfer

  • Comprensión de las vulnerabilidades en la gestión de memoria
  • Desbordamientos de búfer basados en la pila
  • Desbordamientos de búfer basados en el montón
  • Detección y prevención de la corrupción de memoria
  • Técnicas seguras de manejo de memoria

Protección de la pila y funciones de seguridad en tiempo de ejecución

  • Comprensión de las vulnerabilidades por desbordamiento de pila
  • Protecciones de seguridad basadas en el compilador
  • Canarios de pila y mecanismos de protección
  • Randomización del diseño del espacio de direcciones (ASLR)
  • Funciones de seguridad modernas de los sistemas operativos

Consideraciones avanzadas de seguridad en C++

  • Gestión segura del ciclo de vida de los objetos
  • Prevención de vulnerabilidades de uso posterior a la liberación
  • Manejo seguro de punteros y referencias
  • Evitar problemas de confusión de tipos
  • Uso seguro de las características del lenguaje C++

Herramientas y técnicas de programación segura

  • Uso de herramientas de análisis estático para identificar vulnerabilidades
  • Técnicas de revisión de código para la evaluación de seguridad
  • Enfoques de pruebas de seguridad automatizadas
  • Integración de controles de seguridad en los flujos de trabajo de desarrollo

Estándares y mejores prácticas en programación segura

  • Revisión de directrices de programación segura de la industria
  • Aplicación de técnicas de programación defensiva
  • Incorporación de la seguridad en el ciclo de vida del desarrollo de software
  • Mantenimiento de aplicaciones C/C++ seguras y confiables

Taller práctico de programación segura

  • Análisis de ejemplos de código C/C++ vulnerable
  • Aplicación de correcciones y mejoras de seguridad
  • Pruebas del código contra vulnerabilidades comunes
  • Repaso del curso y recomendaciones para el desarrollo seguro

Requerimientos

Conocimientos básicos de C/C++

Número de participantes


Precio por participante

Reseñas (7)

Próximos cursos

Categorías Relacionadas