Temario del curso
Introducción al desarrollo seguro en C y C++
- Comprensión de los principios de desarrollo de software seguro
- Riesgos de seguridad comunes en aplicaciones de C y C++
- La relación entre los errores de programación y las vulnerabilidades de seguridad
- Estándares de programación segura y mejores prácticas
Vulnerabilidades comunes en la programación C y C++
- Identificación de errores de codificación comunes 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
- 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 en C y C++
Validación de entradas y procesamiento 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 usuario y externos
Gestión de errores y manejo de excepciones
- Riesgos asociados con el manejo inadecuado de errores
- Diseño de mecanismos seguros para el manejo de errores y excepciones
- Evitar la fuga de información a través de los errores
- Creación de aplicaciones resistentes
Seguridad de memoria y protección contra desbordes de búfer
- Comprensión de las vulnerabilidades en la gestión de memoria
- Desbordes de búfer basados en pila (stack)
- Desbordes de búfer basados en el montón (heap)
- Detección y prevención de la corrupción de memoria
- Técnicas seguras de manejo de memoria
Protección de la pila y características de seguridad en tiempo de ejecución
- Comprensión de las vulnerabilidades por desbordamiento de pila
- Protecciones de seguridad basadas en el compilador
- Cañones de pila (stack canaries) y mecanismos de protección
- Aleatorización del diseño del espacio de direcciones (ASLR)
- Características de seguridad de los sistemas operativos modernos
Consideraciones avanzadas de seguridad en C++
- Gestión segura del ciclo de vida de objetos
- Prevención de vulnerabilidades de uso tras 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 comprobaciones de seguridad en los flujos de trabajo de desarrollo
Estándares y mejores prácticas de programación segura
- Revisión de las 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 de desarrollo del 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 de código contra vulnerabilidades comunes
- Repaso del curso y recomendaciones de desarrollo seguro
Requerimientos
Conocimientos básicos de C/C++
Reseñas (7)
La experiencia compartida, el saber hacer del profesor y su valor son importantes.
Carey Fan - Logitech
Curso - C/C++ Secure Coding
Traducción Automática
el equilibrio entre las conferencias y la práctica, el ritmo, el conocimiento del formador y su habilidad pedagógica
Armando Pinto - EID
Curso - C/C++ Secure Coding
Traducción Automática
El instructor proporcionó información actualizada y valiosas referencias y herramientas.
Jose Vicente - EID
Curso - C/C++ Secure Coding
Traducción Automática
para obtener mucha información valiosa sobre el tema del curso
Paulo Pereira - EID
Curso - C/C++ Secure Coding
Traducción Automática
El entrenador tiene un conocimiento sólido y experiencia, diapositivas atractivas y buenos ejemplos.
Celso Almeida - EID
Curso - C/C++ Secure Coding
Traducción Automática
Información general del curso
Paulo Gouveia - EID
Curso - C/C++ Secure Coding
Traducción Automática
El excelente nivel de conocimientos del instructor, la disposición y su amabilidad.