
BADGE reverse engineering
Décryptez l’inconnu et devenez maître de la rétro-ingénierie.
Informations clés
Certification
Formation accréditée par la Conférence des Grandes Écoles (CGE)
Campus
Paris
Niveau requis
Solides bases en informatique nécessaires
Durée
5 mois
Rythme
Soirs et week-ends, compatible avec une activité professionnelle
Rentrée
Fin janvier (1 session/an)
Bon à savoir
Financement individuel ou par un organisme tiers (employeur, organisme de financement…)
Une formation accréditée par la CGE
Cette formation accréditée par la CGE se concentre à la fois sur les techniques de retro-ingénierie et sur les différences selon les applications recherchées : analyser un code malveillant est très différent de la découverte d’un protocole inconnu.

Prérequis et objectifs de la formation


Prérequis pour candidater à la formation
Objectifs de la formation
Modules du BADGE Reverse Engineering
Cette formation BADGE en « reverse engineering » (tout comme celle en « sécurité offensive ») a été conçue conjointement par l’ESIEA et QUARKSLAB en collaboration avec des personnalités aux compétences reconnues issues de différents milieux (entreprises de service, industrie, État). L’objectif de ce BADGE étant de faire de vous l’expert en sécurité de l’information que les entreprises, mais aussi les organismes publics recherchent activement, il vous préparera aux multiples environnements dans lesquels vous serez amenés à évoluer.
Modules
ASM / ARM
Introduction à l’ASM x86 et à l’ARM
Ce module est une brique de base sur lequel les intervenants de la formation s’appuieront. Il s’agit de voir ou revoir les concepts liés au reverse engineering ainsi que les particularités de l’ASM et de l’ARM. Au travers des différents exercices pratiques, les étudiants vont acquérir un bagage technique suffisant pour aborder les différents sujets de la formation. |
Cryptographie
Ce cours a pour objectif d’introduire les concepts fondamentaux de la cryptographie moderne ainsi que de donner un aperçu des primitives présentes dans les protocoles cryptographiques actuels. À l’issue de la formation, les étudiants auront les connaissances et la méthodologie nécessaires à l’identification et au reverse engineering d’algorithmes cryptographiques.
Orientés Objet
L’analyse de binaires développés dans un langage orienté objet nécessite des notions spécifiques à ce dernier. Cette intervention a pour but, par le biais de l’étude des caractéristiques liées au C++, d’introduire les concepts et la façon d’analyser ce type d’exécutable.
Compilation et obfuscation
Ce cours permet de se familiariser avec les différentes étapes du processus de compilation d’un programme et propose un aperçu des techniques d’obfuscation basiques. Ces notions sont utiles afin de comprendre les optimisations effectuées par le compilateur ainsi que d’identifier certains mécanismes utilisés pour contrer l’analyse de binaire.
Reverse mobile
L’objectif de ce module est de présenter les notions de base associées au reverse engineering sur mobile. À l’issue de la formation, les étudiants seront capables d’analyser et de débugger des applications IOS et Android et auront une connaissance générale des mécaniques internes à ces deux plateformes.
Outils et framework d’analyse
Le reverse engineering d’applications réelles peut être long et fastidieux. Il est parfois nécessaire de développer ses propres scripts afin de faciliter leur analyse. Ce module présente différents outils tels que Metasm, Miasm et Triton qui aident au reverse en proposant chacun un angle d’approche différent. À la fin de la formation, les étudiants auront une idée de l’utilité de tels outils, et seront en capacité de les utiliser efficacement. |
Format de fichier exécutable
Ce cours apporte des connaissances sur les structures internes d’un fichier exécutable ainsi que sur le processus de chargement de binaires sur le système d’exploitation.
À l’issue de cette intervention, les étudiants seront capables d’étudier et de manipuler ce type de format ainsi que de reconnaitre les différentes structures le constituant.
Embarqué
Le reverse engineering ne s’arrête pas à la couche logicielle. De plus en plus d’attaques sont possibles au niveau matériel. Ce module a pour objectif de montrer, par la pratique, une méthodologie d’analyse de devices embarqués et de fournir les connaissances de base en reverse engineering matériel.
Architectures d’un système d’exploitation
Ce cours présente l’architecture des ordinateurs, les couches physiques, le noyau, l’espace utilisateur, et les liens entre les composants logiciels et le matériel. Il s’agit de comprendre le fonctionnement interne d’un ordinateur et des mécanismes qui permettent ensuite d’interagir avec un programme (pagination, segmentation, DMA, breakpoints logiciels et matériels, gestion des fautes, etc.).
Exploitation
Cette intervention a pour vocation de présenter les différentes classes de vulnérabilité ainsi qu’une méthodologie liée à la recherche de ces dernières. Dans ce module, les étudiants sont invités à analyser des failles logicielles et développer des codes d’exploitation fonctionnels.
Analyse de malwares
Les malwares sont des binaires particuliers qui peuvent s’avérer compliqués à reverser : ils sont généralement accompagnés par de nombreux mécanismes de protection et leur nature même peut rendre pénible leur analyse. Ce cours a pour objectif d’apprendre à étudier efficacement ces programmes. Vu le nombre sans cesse croissant de tels codes, il est impossible de tout regarder manuellement. Nous passerons donc en revue les outils et les méthodes de classification afin d’optimiser les analyses. |
Points forts de la formation




Formation continue

Une formation reconnue et certifiée

Encadrement en présentiel
Comment candidater et s’inscrire ?
Cette procédure d’inscription a pour objectifs de cerner vos connaissances et de s’assurer que vous êtes aptes à suivre un BADGE.

Téléchargez le dossier de candidature à remplir et renvoyez-le dans un email adressé à guyot@esiea.fr et intitulé « Candidature BADGE-RE ».

Vous serez ensuite convoqué à un entretien, qui s’appuiera sur ce dossier. Les résultats d’admission seront disponibles rapidement après l’entretien.