Pourquoi choisir la formation Développements sécurisés

La formation Développements sécurisés vous expose les principales sources de vulnérabilités présentes dans les logiciels codés en C et C++ (mais ils sont applicables à l’ensembles de langages de programmation). Formind s’appuie sur les recommandations d’organismes référents tels que le SEI, le CERT, le MITRE, le NIST, l’ANSSI. L’objectif est de sensibiliser et de former les participants à la défense en profondeur, à la sécurité par le design et au développement sécurisé.

Par défaut, cette formation privilégie les langages C et le C++, qui sont largement utilisés pour développer les briques logicielles essentielles de ces dispositifs (OS, firmware, drivers, applications, …). Mais il s’applique à tous les langages. De nombreux exemples sont donnés en C# ; java, etc.

Le logiciel est partout dans les dispositifs que nous utilisons au quotidien : ordinateurs, mobiles, objets connectés, voitures… Le développement sécurisé consiste à protéger d’une part les logiciels et les environnements sur lesquels ils s’exécutent, mais aussi d’intégrer dans les pratiques de développement la sécurité comme une responsabilité de chacun des contributeurs.

 

Intéressé ?

Téléchargez le catalogue des formations Formind

Niveau : Expert

Durée : 3 jours

A qui s’adresse cette formation ?

  • Toute personne impliquée dans le développement, la mise en production et le suivi des logiciels
  • Développeurs, chefs de projet, auditeurs.
  • Environnements Linux, Windows, systèmes embarqués

Prérequis

Connaître le guide d’hygiène sécurité de l’ANSSI.

Avoir suivi le parcours introductif à la cybersécurité.

Connaissance des langages de programmations C, C++, Java, etc

Objectifs pédagogiques

1Comprendre le développement logiciel en tenant compte dès sa spécification
2Comprendre l’intérêt des concepts de Secure Coding et Secure by Design
3Connaitre et appliquer des techniques de conception et de développement en vue de protéger les logiciels, les systèmes hôtes et leur environnement
4Savoir identifier et détecter des failles de sécurité et éviter leur(s) conséquence(s)
5Mettre en place des pratiques d’audit et de tests en vue d’identifier au plus tôt des vulnérabilités de code
6Savoir réduire les surfaces d’attaques d’un système
7Connaitre les recommandations SEI CERT, OWASP quant aux bonnes pratiques de développent C/C++
8Savoir consulter le classement CVE des vulnérabilités en lien avec les développements C/C++
Intéressé ?

> Renseignez le formulaire de pré-inscription

Programme

Enjeux et perspectives de la sécurité logicielle

  • La cybersécurité, la surface d’attaque logicielle
  • Les acteurs et standards de la sécurité en développement logiciel
  • Analyse d’attaques récentes et de leurs conséquences
  • Classement du MITRE CWE/SANS des erreurs logicielles les plus dangereuses

Cycle de vie d’un logiciel sécurisé

Les 5 étapes d’une attaque

Les attaques sur la mémoire

  • Attaques sur la pile, contremesures et contournements, attaques sur le tas, contremesures et contournements, gestion des chaînes de caractères, entiers et flottants, la gestion des pointeurs
  • Cas pratiques : stack overflow, heap overflow, use after free, exploitation de la table de fonctions virtuelles, attaque sur les formateurs de chaine
Les ressources partagées et concurrence

  • Gestion des ressources partagées (mémoire, fichiers, répertoires)
  • La concurrence des threads
  • Les bonnes pratiques de développement
  • Cas pratiques : attaques temporelles basée sur les conditions de concurrence

Interaction avec l’environnement

  • Interaction avec l’environnement
  • La gestion des interruptions
  • Moindres privilèges et contrôle d’accès
  • Cas pratiques : escalade de privilège en exploitant les programmes SETUID sous Linux

Cryptographie et infrastructures à clé publique

  • Recommandations sur les algorithmes et paramètres
  • Génération de nombres aléatoires
  • Gestion des mots de passe
  • Gestion des clés
  • Bonnes pratiques de mise en place d’une ICP

Informations générales

  • Les frais de certification sont inclus dans le prix de l’examen
  • Le support de formation contenant plus de 200 pages d’informations et d’exemples pratiques sera distribué
  • Une attestation de participation de 14 crédits DPC (Développement professionnel continu) sera délivrée.
  • Nous garantissons la qualité de formations. En cas d’échec à l’examen, vous pouvez le reprendre dans les 12 mois suivants sans frais additionnels.

Matériel

Le cours s’appuie sur les standards actuels. Chaque thématique est illustrée d’exemples expliqués réels et récents. Dans le but de comprendre les concepts et de s’exercer efficacement, les parties pratiques s’appuient sur la réalisation d’exploitations de vulnérabilités, leur analyse, et sur l’audit de codes.

Ces exercices pratiques se feront sur une plateforme dédiée, sous Linux et sur une architecture Intel x86. La démarche et la transposition sous d’autres environnements (Windows, OS embarqués, environnements 64bits, ARM…) seront évoquées tout au long de la formation.

Téléchargez le catalogue des formations Formind

Formind Academy propose des formations thématiques sur (ISC)2, Amazon Web Services, Anti Corruption, Continuité résilience reprise, Cybersécurité, Développement sécurisé, ISACA, Protection des données personnelles, Santé et Sécurité au travail, Sécurité de l’information ; ainsi que des programmes en sur-mesure conçus et animés par nos consultants experts. Devenez 100% opérationnel dans votre activité au quotidien.

JE TÉLÉCHARGE

Demande d’inscription en ligne

    Subscribe to get our latest news!