ATELIER : Effectuez vos développements sécurisés en C
Pour connaitre les prochaines sessions de formation sur Logiciel embarque et programmation cliquez ici.
Mettre sur le marché un produit fiable et de qualité est une nécessité, tant du point de vue de l’image de marque de l’entreprise que de sa performance et de sa compétitivité.
Si les équipements sont utilisés dans des applications où la qualité de service est importante, les équipes de développement logiciel doivent maitriser un certain nombre de bonnes pratiques et d’outils pour assurer la qualité du code embarqué. Ceci est d’autant plus vrai que à l’heure des malwares, logiciels espions, virus informatiques etc... le développement sécurisé en C est devenu un impératif !
L’objet de cette atelier est de présenter un ensemble d’erreurs à ne pas commettre, et de les contre-balancer par des bonnes pratiques et des outils permettant de minimiser les vulnérabilités dans les développements logiciels.
Mercredi 21 février 2018
Exemple de bug qui devient une vulnérabilité : le buffer overflow, fonctionnement de la pile
Liste et mise en pratique de différents bugs (use after free, off by 1…)
Les risques de la mémoire dynamiquement allouée
Les dangers du multi-threading
Différences entre programmation noyau (kernel) et userland
Validation des données en entrée
Utiliser le minimum de privilèges (chroot)
Jeudi 22 février 2018
Workflow et versionning du code (git), ticketing
Documentation du code, exemple de doxygen, normes de codage
Utiliser les warnings du compilateur
Analyse dynamique, valgrind, debugging (gdb, dynamoRIO)
Analyse statique, couverture de code, fuzzing
Tests : unitaires, non-régression, intégration, performances, intégration continue (buildbot)
Conclusion : top 10 des pratiques de développement sécurisé
Lieu de l’événement :
ENSEM
2 avenue de la Forêt de Haye
54516 VANDOEUVRE LES NANCY