Formation

Recherche de vulnérabilités dans les binaires

Objectifs

La formation est dispensée par des professionnels dont l'occupation principale est la recherche de vulnérabilités sur des cibles complexes ce qui assure un contenu à jour et efficace. Afin de coller à la réalité, la formation s'appuie sur des cas concrets (1-days) et des outils modernes. La formation se concentre sur les vulnérabilités dans les langages bas niveau (C/C++/Obj-C).

 

La recherche de vulnérabilités étant un sujet très vaste, cette formation est adaptable à vos besoins spécifiques.

 

La formation recherche de vulnérabilités peut être adaptée du niveau intermédiaire à avancé et a été conçue pour les experts sécurité ayant des connaissances en rétro ingénierie et en audit de code source.

 

5 jours / 10 heures de théorie / 25 heures de pratique

Contenu

Le contenu détaillé ci-dessous est donné à titre informatif, la formation peut être adaptée de manière à consacrer plus ou moins de temps à certaines parties. Il est aussi possible de créer des formations à la demande sur un cible particulière.

 

  • Méthodologie

    • Étude de la surface d'attaque

    • Stratégie de recherche

    • Chemin d'attaque

    • Organisation et répartition du travail

    • Patterns de vulnérabilité

  • Audit de code source

    • Outillage

      • Prise en main de Woboq

    • Recherche de patterns/variants

      • CodeQL

      • Coccinnelle

    • Techniques d'instrumentation de code

      • ASAN

      • Plugin LLVM

  • Kernel Windows

    • Prise en main de WinDBG et de IDA

    • Diff de correctifs pour rechercher des vulnérabilités 1-day

    • Recherche de vulnérabilités dans un module kernel

      • Identification des points d'entrée

      • Implémentation d'un fuzzer d'IOCTL

  • Navigateurs

    • Surface d’attaque

    • Mitigations modernes

    • Moteurs JavaScript

      • IonMonkey / V8 / JavaScriptCore

      • Types de vulnérabilités spécifiques au JiT

      • Spécificités des différents moteurs

  • IOT

    • Attaques hardwares pour l’obtention du code

    • Fuzzing efficace par émulation

      • Utilisation de Unicorn Engine

      • Extension de Qemu