Prenez contact avec nous

Plan du cours

Introduction au développement C et C++ sécurisé

  • Comprendre les principes de développement logiciel sécurisé
  • Risques de sécurité courants dans les applications C et C++
  • Relation entre erreurs de programmation et vulnérabilités de sécurité
  • Normes de codage sécurisé et bonnes pratiques

Vulnérabilités courantes en programmation C et C++

  • Identification des erreurs de code courantes introduisant des risques de sécurité
  • Problèmes de sécurité 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 sécurisée

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

Validation des entrées et gestion des données

  • Compréhension de l'importance de la validation des entrées
  • Prévention de l'exploitation d'entrées malveillantes
  • Techniques d'assainissement des données
  • Gestion sécurisée des données utilisateur et externes

Gestion des erreurs et des exceptions

  • Risques liés à une gestion inadéquate des erreurs
  • Conception de mécanismes sécurisés de gestion des erreurs et des exceptions
  • Évitement de la fuite d'informations via les erreurs
  • Création d'applications résilientes

Sécurité de la mémoire et protection contre les débordements de tampon

  • Compréhension des vulnérabilités liées à la gestion de la mémoire
  • Débordements de tampon basés sur la pile
  • Débordements de tampon basés sur le tas (heap)
  • Détection et prévention de la corruption de la mémoire
  • Techniques de manipulation sécurisée de la mémoire

Protection de la pile et fonctionnalités de sécurité à l'exécution

  • Compréhension des vulnérabilités de débordement de pile
  • Protections de sécurité basées sur le compilateur
  • Canaris de pile et mécanismes de protection
  • Randomisation de la mise en page de l'espace d'adresses (ASLR)
  • Fonctionnalités de sécurité des systèmes d'exploitation modernes

Considérations avancées de sécurité C++

  • Gestion sécurisée du cycle de vie des objets
  • Prévention des vulnérabilités d'utilisation après libération
  • Gestion sécurisée des pointeurs et des références
  • Évitement des problèmes de confusion de types
  • Utilisation sécurisée des fonctionnalités du langage C++

Outils et techniques de codage sécurisé

  • Utilisation d'outils d'analyse statique pour identifier les vulnérabilités
  • Techniques de revue de code pour l'évaluation de la sécurité
  • Approches de tests de sécurité automatisés
  • Intégration des vérifications de sécurité dans les flux de développement

Normes et bonnes pratiques de codage sécurisé

  • Examen des directives de codage sécurisé 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
  • Maintenance d'applications C/C++ sécurisées et fiables

Atelier pratique de programmation sécurisée

  • Analyse d'exemples de code C/C++ vulnérable
  • Application de correctifs et d'améliorations de sécurité
  • Test du code face aux vulnérabilités courantes
  • Révision du cours et recommandations pour un développement sécurisé

Pré requis

Fondamentaux de C/C++

 21 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (6)

Cours à venir

Catégories Similaires