Prenez contact avec nous

Plan du cours

Introduction au développement sûr en C et C++

  • Comprendre les principes du développement logicielle sûr
  • Risques de sécurité courants dans les applications C et C++
  • La relation entre les erreurs de programmation et les vulnérabilités de sécurité
  • Normes de programmation sûre et meilleures pratiques

Vulnérabilités courantes dans la programmation C et C++

  • Identifier les erreurs de codage courantes qui introduisent des risques de sécurité
  • Problèmes de sûreté de la mémoire en C et C++
  • Schémas de vulnérabilités et leur impact
  • Analyse d’exemples de code non sécurisé

Principes de programmation défensive

  • Application des techniques de défense en profondeur
  • Écriture de code robuste et maintenable
  • Minimisation des surfaces d’attaque
  • Principes de conception sûre pour les applications C et C++

Validation des entrées et gestion des données

  • Comprendre l’importance de la validation des entrées
  • Prévenir l’exploitation d’entrées malveillantes
  • Techniques d’assainissement des données
  • Gestion sûre des données utilisateur et externes

Gestion des erreurs et des exceptions

  • Risques liés à une mauvaise gestion des erreurs
  • Conception de mécanismes sûrs de gestion des erreurs et des exceptions
  • Éviter les fuites d’informations via les erreurs
  • Créer des applications résilientes

Sûreté de la mémoire et protection contre les dépassements de tampon

  • Comprendre les vulnérabilités de gestion de la mémoire
  • Dépassements de tampon basés sur la pile
  • Dépassements de tampon basés sur le tas
  • Détection et prévention de la corruption de la mémoire
  • Techniques de gestion sûre de la mémoire

Protection de la pile et fonctionnalités de sécurité au moment de l’exécution

  • Comprendre les vulnérabilités de dépassement de pile
  • Protections de sécurité basées sur le compilateur
  • Canaris de pile et mécanismes de protection
  • Randomisation de la disposition de l’espace d’adressage (ASLR)
  • Fonctionnalités de sécurité des systèmes d’exploitation modernes

Considérations avancées sur la sécurité C++

  • Gestion sûre du cycle de vie des objets
  • Prévention des vulnérabilités d’utilisation après libération
  • Gestion sûre des pointeurs et des références
  • Éviter les problèmes de confusion de types
  • Utilisation sûre des fonctionnalités du langage C++

Outils et techniques de programmation sûre

  • Utilisation d’outils d’analyse statique pour identifier les vulnérabilités
  • Techniques d’examen de code pour l’évaluation de la sécurité
  • Approches de test de sécurité automatisé
  • Intégration des contrôles de sécurité dans les flux de travail de développement

Normes et meilleures pratiques de programmation sûre

  • Examen des directives de programmation sûre de l’industrie
  • Application des techniques de programmation défensive
  • Intégration de la sécurité dans le cycle de vie du développement logiciel
  • Maintien d’applications C/C++ sûres et fiables

Atelier pratique de programmation sûre

  • Analyse d’exemples de code C/C++ vulnérables
  • Application de corrections et d’améliorations de sécurité
  • Test du code face aux vulnérabilités courantes
  • Bilan du cours et recommandations pour un développement sûr

Pré requis

Les bases de C/C++

 21 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (6)

Cours à venir

Catégories Similaires