Ponte en Contacto

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
  • Estandares y buenas prácticas de codificación segura

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

  • Identificación de errores de codificación habituales 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 la superficie 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 mediante entradas maliciosas
  • Técnicas de sanitización de datos
  • Manejo seguro de datos de usuarios y externos

Manejo de errores y gestión de excepciones

  • Riesgos asociados con un manejo inadecuado de errores
  • Diseño de mecanismos seguros de manejo de errores y excepciones
  • Evitar la filtración 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 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
  • Banderas canarias (canaries) y mecanismos de protección
  • Randorización del diseño del espacio de direcciones (ASLR)
  • Características de seguridad modernas de los sistemas operativos

Consideraciones avanzadas de seguridad en C++

  • Gestión segura del ciclo de vida de objetos
  • Prevención de vulnerabilidades use-after-free
  • Manejo seguro de punteros y referencias
  • Evitación de 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 prueba automatizada de seguridad
  • Integración de verificaciones de seguridad en flujos de desarrollo

Estandares y buenas prácticas de codificación segura

  • Revisión de directrices industriales para la codificación segura
  • 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 vulnerables de código C/C++
  • Aplicación de correcciones y mejoras de seguridad
  • Prueba 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