FORMATION

REVERSE1 – Rétroingénierie de 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.

  • 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
  • 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
  • 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
  • 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 »
  • 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
  • Catégoriser les logiciels malveillants en fonction de leurs API
  • Keyloggers
  • Rootkits (userland et kerneland)
  • Sniffers
  • Ransomware
  • 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
  • Malware « Web » (JavaScript/VBScript)
  • Analyse statique et dynamique
  • Limitation des navigateurs
  • Malwares Flash
  • Applications mobiles Android
  • Documents malveillants

Demander des informations ou suivre cette formation ?

You've enabled "Do Not Track" in your browser, we respect that choice and don't track your visit on our website.