REVERSE1 – Rétroingénierie de logiciels malfaisants
Prochaines Dates de la Formation
- Du 03/11/2025 au 07/11/2025
Horaires : de 9h30 à 12h et de 13h30 à 18h00/18h30
Pour apprendre à comprendre et analyser les logiciels malfaisants.
Comprendre le fonctionnement des logiciels malveillants est un élément clé nécessaire auprès des entreprises afin de pouvoir répondre de manière plus efficiente à vos incidents de sécurités.
L’objectif de cette information est de fournir les éléments clés permettant de comprendre le fonctionnement des logiciels afin de pouvoir créer des « Indicateurs de Compromission » ainsi que des signatures permettant de détecter des versions modifiées des outils malveillants afin de détecter les mises à jour de ceux-ci sans avoir besoin de mettre à jours vos signatures.
La formation vous permettra alors de pouvoir analyser tout type de menace, du client lourd à l’application « Flash » en passant par les documents malicieux (office, PDF) en passant par les sites web malveillants et les applications mobiles.
Bon à savoir sur cette formation
-
Objectifs
- Qualifier la menace d'un logiciel malfaisant
- Savoir mettre en place d'un laboratoire d'analyse des logiciels malfaisants et préparer l'outillage d'analyse
- Analyser de manière statique et dynamique le comportement de logiciels malfaisants
- Apprendre l'architecture x86
- Savoir identifier les structures logiques (boucles, branchement...)
- Savoir identifier des motifs utilisés par les logiciels malfaisants en analysant le code
- Analyser la mémoire
-
Pré-requis
- Connaître le système Windows
- Savoir programmer
- Avoir les bases en réseau
- Connaître l'assembleur
-
Méthode pédagogique
- Cours magistral illustré par des travaux pratiques réguliers
-
Public visé
- Membres d'un SOC ou d'un CSIRT
- Équipes de réponse aux incidents
- Toute personne souhaitant réaliser des analyses avancées des menaces
- Professionnel de la sécurité souhaitant acquérir des connaissances en analyse de codes malfaisants
- Analystes
- Responsables sécurité
-
Certification
- A l'issue de cette formation, le stagiaire a la possibilité de passer un examen ayant pour but de valider les connaissances acquises. Cet examen de type QCM dure 1h30 et a lieu durant la dernière après-midi de formation. La réussite à l'examen donne droit à la certification FORENSIC2 par HS2
-
Matériel
- Support de cours au format papier en français
- Ordinateur portable mis à disposition du stagiaire
- Cahier d'exercices et corrections des exercices
- Certificat attestant de la participation à la formation
-
Formateurs
- Cyril Solomon
- Stefan Le Berre
- Évaluation qualité
- Qualifier la menace d'un logiciel malfaisant
- Savoir mettre en place d'un laboratoire d'analyse des logiciels malfaisants et préparer l'outillage d'analyse
- Analyser de manière statique et dynamique le comportement de logiciels malfaisants
- Apprendre l'architecture x86
- Savoir identifier les structures logiques (boucles, branchement...)
- Savoir identifier des motifs utilisés par les logiciels malfaisants en analysant le code
- Analyser la mémoire
- Connaître le système Windows
- Savoir programmer
- Avoir les bases en réseau
- Connaître l'assembleur
- Cours magistral illustré par des travaux pratiques réguliers
- Membres d'un SOC ou d'un CSIRT
- Équipes de réponse aux incidents
- Toute personne souhaitant réaliser des analyses avancées des menaces
- Professionnel de la sécurité souhaitant acquérir des connaissances en analyse de codes malfaisants
- Analystes
- Responsables sécurité
- A l'issue de cette formation, le stagiaire a la possibilité de passer un examen ayant pour but de valider les connaissances acquises. Cet examen de type QCM dure 1h30 et a lieu durant la dernière après-midi de formation. La réussite à l'examen donne droit à la certification FORENSIC2 par HS2
- Support de cours au format papier en français
- Ordinateur portable mis à disposition du stagiaire
- Cahier d'exercices et corrections des exercices
- Certificat attestant de la participation à la formation
Programme du cours
1 : Introduction aux bases de l’analyse de logiciels malveillants
- Processus et méthodologie générique
- Analyse statique :
- Analyse des métadonnées
- Analyse statique
- Analyse dynamique
- Comportemental
- Débugger
- Construire son laboratoire d’analyse
- Simuler internet
- Utilisation de la virtualisation
- Contournement des mécanismes de protection anti-VM
- Simulation d’architecture « exotique » (IOT)
- Construction du laboratoire et boite à outils
- Sandbox
Cas d’analyse
- Introduction au langage assembleur
- Guide de survie des instructions de bases
- Instruction modifiant le flux d’exécution
- Présentation des registres
- Conventions d’appels
- Spécificités des langages objets
- IDA Pro:
- Introduction
- Prise en main de l’outil (création de scripts)
- Chaine de compilation et binaires
- Fuite d’informations possibles
- Imports d’information dans IDA
: Système d’exploitation
- Introduction aux systèmes d’exploitation
- Processus vs thread
- Scheduler
- Syscall
- Différence processus vs thread
- Format d’exécutable
- Format PE
- Présentation des informations
- Structures internes
- SEH
- TEB
- PEB
- SSDT
- Introduction au « kernel debugging »
- Format PE
Section 3 : Mécanismes de protection (DRM ou packer)
- Introduction aux outils de DRM/Protection de code
- Comment les identifier ?
- Quels sont les impacts ?
- — Introductions aux différentes techniques de protection :
- Anti-désassemblage
- Anti-debogage
- Obscurcissement du CFG
- Machine virtuelle
- Évasion (détection de sandbox/Virtualisation)
- Analyse de packer
- Présentation de la méthode générique d’unpacking
- Découverte de l’OEP
- Reconstruction de la table d’imports
- Miasm2 :
- Unpacking automatique
- Miasm2 :
- Comment les identifier ?
Section 4 : Malwares
- Catégoriser les logiciels malveillants en fonction de leurs API
- Keyloggers
- Rootkits (userland et kerneland)
- Sniffers
- Ransomwares
- Bots et C2
- Injection de code
- Technique de contournement de flux d’exécution (ie: detour)
- Shellcode
- Techniques et outils d’analyses
- Miasm2
- Unicorn Engine
Section 5 : Autres types de malwares
- Malware « Web » (JavaScript/VBScript)
- Analyse statique et dynamique
- Limitation des navigateurs
- Malwares Flash
- Applications mobiles Android
- Documents malveillants
- Suite Office
- RTF
- Malwares .Net
Section 6 : Threat Intelligence
- Création de signatures Yara
- Communication et base de connaissances
- MISP
- Yeti
Section 7 : Avantage de l’analyse mémoire