Ponte en Contacto

Temario del curso

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

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

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

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

Principios de programación segura

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

Validación de entradas y gestión de datos

  • Comprensión de la importancia de la validación de entradas
  • Prevención de la explotación maliciosa de entradas
  • Técnicas de sanitización de datos
  • Gestión segura de datos de usuario y externos

Gestión de errores y excepciones

  • Riesgos asociados a una gestión inadecuada de errores
  • Diseño de mecanismos seguros para la gestión de errores y excepciones
  • Evitar la filtración de información mediante los errores
  • Creación de aplicaciones resilientes

Seguridad de 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 (stack)
  • Desbordamientos de búfer basados en el montón (heap)
  • Detección y prevención de corrupción de memoria
  • Técnicas de manejo seguro de memoria

Protección de la pila y características de seguridad en tiempo de ejecución

  • Comprensión de las vulnerabilidades de desbordamiento de pila
  • Protecciones de seguridad basadas en el compilador
  • Cáñones de pila (stack canaries) y mecanismos de protección
  • Randomización del diseño del espacio de direcciones (ASLR)
  • Características modernas de seguridad del sistema operativo

Consideraciones avanzadas de seguridad en C++

  • Gestión segura del ciclo de vida de objetos
  • Prevención de vulnerabilidades de uso tras liberación (use-after-free)
  • Gestión segura 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 codificació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 comprobaciones de seguridad en los flujos de desarrollo

Estándares y mejores prácticas de codificación segura

  • Revisión de las directrices de codificació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 fiables

Taller práctico de codificación segura

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

Requerimientos

Conocimientos básicos de C/C++

 21 Horas

Número de participantes


Precio por participante

Reseñas (7)

Próximos cursos

Categorías Relacionadas