Présentation de la formation
Un atelier de deux jours pour les équipes de développement, construit autour de votre propre stack technologique. Les développeurs exploitent eux-mêmes des vulnérabilités typiques, les corrigent et apprennent à les repérer en revue de code. Le jour 1 porte sur la sécurité mémoire et le C/C++ embarqué, le jour 2 sur le web, les API et le processus de revue. Le cours peut être ramené à une journée ou étendu à trois, et nous pouvons travailler sur des résultats anonymisés issus de votre propre code.
Programme
Jour 1 : sécurité mémoire et code embarqué
Théorie
- Comment pensent les attaquants : du bug à l’exploit
- Dépassements de tampon, erreurs d’entiers et chaînes de format
- Le comportement indéfini et ce que les compilateurs en font
- MISRA C et SEI CERT C : ce qu’ils couvrent et ce qui leur échappe
- Aléa, clés et secrets sur les appareils embarqués
Pratique
- Exploitation d’un dépassement de pile dans un petit parseur de firmware
- Recherche et correction de bugs de longueur et d’entiers dans des gestionnaires de protocole
- Fuzzing d’un parseur et tri des crashs
- Durcissement du build : options de compilation et analyse statique
Jour 2 : web, API et revue de code
Théorie
- OWASP Top 10 et OWASP API Security Top 10
- Authentification, sessions et contrôle d’accès (IDOR, BOLA, BFLA)
- Injection et désérialisation non sécurisée
- Secrets, dépendances et chaîne d’approvisionnement logicielle
- La sécurité dans le pipeline : SAST, SCA et points de contrôle en revue
Pratique
- Exploitation d’un contrôle d’accès défaillant dans une API d’exemple
- Correction de failles d’injection et de validation
- Revue de pull requests avec un regard d’attaquant
- Rédaction d’exigences de sécurité testables
