Analyse de logiciels malveillants

BT220

Sommaire

Description

L’analyse des logiciels malveillants est l’étude et l’examen minutieux des logiciels malveillants afin de comprendre leurs origines, leur but et leur impact potentiel sur le système. Les analystes de logiciels malveillants accomplissent leurs tâches en utilisant divers outils et des connaissances d’experts pour comprendre non seulement ce qu’un logiciel malveillant peut faire, mais aussi comment il le fait.

Ce cours fournit aux participants les compétences et les connaissances pratiques nécessaires pour être en mesure d’analyser les logiciels malveillants et les expose à un ensemble d’outils essentiels nécessaires à leurs tâches.

Comment réussir au mieux ce cours

Pour réussir ce cours, il vous faudra :

  • Participer à l’ensemble des labos
  • Produire du travail personnel entre les cours
  • Exécuter les exercices, s’auto-former, réaliser les tâches demandées, etc.

Outre une participation active au cours, le participant doit fournir au moins 10h de travail personnel durant la semaine de cours afin d’acquérir une expérience pratique dans les domaines enseignés.
Le participant doit également posséder un ordinateur personnel capable de faire tourner un système virtuel avec une connexion Internet stable (voir ci-dessous pour plus de détails).

Public cible

Le cours s’adresse aux participants ayant une connaissance de base de l’internet, qui souhaitent acquérir des capacités avancées en matière de renseignement à source ouverte.

  • Praticiens de la cybersécurité
  • Analystes en cyberforensique
  • Ingénieurs et chercheurs en sécurité
  • Intervenants en cas d’incident
  • Débutants en analyse de logiciels malveillants ou en rétro-ingénierie
  • Développeurs de logiciels
  • Administrateurs de la sécurité informatique

Objectifs

  • Analyse des logiciels malveillants à l’aide de méthodes d’analyse dynamiques et statiques
  • Langage Assembly pour examiner les logiciels malveillants
  • Rétro-ingénierie de logiciels malveillants à l’aide de divers outils
  • Le premier aperçu du noyau de Windows

Prérequis

  • Cours ThinkCyber niveau 1

Syllabus

Description

Dans le premier module, les participants étudieront différents types de logiciels malveillants et verront comment ils fonctionnent, comprendront comment fonctionne l’anti-virus, et auront finalement une idée de la manière d’aborder un fichier malveillant et de l’endroit où le trouver.

Contenu technique

  • Introduction à l’analyse des logiciels malveillants
    o Définitions de l’analyse des logiciels malveillants
    o Types de logiciels malveillants
    o Les différents comportements des types de logiciels malveillants
    ▪ Analyse comportementale
    ▪ Analyse des codes
    ▪ Analyse de la mémoire
    o Mécanismes de sécurité
    o Comment fonctionne l’anti-virus
    o Comprendre le format PE
    o Identification du hachage et du fichier
    o Bibliothèques et processus Windows
    o API Windows
    o Mise en place d’un environnement sûr pour l’inspection des logiciels malveillants
    ▪ Construction et configuration de la machine virtuelle
    ▪ Outils d’analyse des logiciels malveillants
    o Hacker de processus
    o Suivi du processus
    o Regshot
    o API Monitor
    o IDA
  • Extraction de logiciels malveillants à partir de segments de données
    o Fichier PCAP du réseau
    o Mémoire volatile (RAM)
    o Bases de la recherche sur les activités malveillantes de la mémoire volatile
    ▪ Connexions aux réseaux
    ▪ Malfind
    ▪ Processus
    ▪ DLL
    ▪ Memdump

Description

L’analyse statique de base permet au chercheur de logiciels malveillants d’inspecter les influences des logiciels malveillants sur le système, alors que celui-ci est dans une phase statique, c’est-à-dire sous forme de code. Cette phase est essentielle pour recueillir des informations sur le logiciel malveillant pour les étapes plus avancées de la recherche.

Contenu technique

  • Analyse statique de base
    o Préoccupations en matière de sécurité
    ▪ Prévention des doubles clics
    ▪ Prévention des accidents de la route
    o Première analyse avec les cordes
    ▪ Identifier les bibliothèques
    ▪ Identifier les modèles
    ▪ Identifier le domaine
    ▪ Identifier les fonctions de Windows
    o Sections du dossier PE
    ▪ Sections communes
    ▪ Sections d’anomalie
    o Collecte d’informations auprès du PE
    ▪ Horodatage
    ▪ Application GUI ou CLI
    ▪ Allocation de mémoire virtuelle
    ▪ Point d’entrée
    o Analyser les bibliothèques dépendantes des programmes
    ▪ Exportations et importations
    ▪ Appels de fonction par numéro ordinaire
    o Anomalie de la section Ressources
    o VirusTotal
    o Base de données des hash de fichiers
    o Rédaction d’un rapport d’analyse statique.

Description

L’analyse dynamique de base est la méthode initiale d’inspection et d’analyse des logiciels malveillants. Au cours de cette étape, les participants activeront le logiciel malveillant dans un environnement de bac à sable protégé et analyseront ses effets sur le système. Divers outils d’analyse des logiciels malveillants seront présentés et utilisés par les participants au cours de ce module.

Contenu technique

  • Analyse dynamique de base
    o Organisez et isolez votre environnement
    o Nouveau système de logiciels malveillants
    ▪ Identifier les machines virtuelles
    ▪ Recherche de ports
    ▪ Tester le trafic du réseau
    o Système d’instantanés
    o Analyser les processus
    ▪ Procmon
    ▪ Explorateur de processus
    o Analyse du registre
    o Suivi des modifications du registre
    o Analyser les autoruns
    o Surveillance du trafic sur le réseau avec Wireshark
    o Falsification du trafic réseau et configuration des mandataires
    o Surveillance du DNS
    o Simulation de services Internet
    o Analyser les résultats.

Description

Ce module introduira les bases du langage Assembly, qui est le plus proche du langage binaire des ordinateurs pouvant être lu par les humains. La familiarisation avec le langage Assembly permettra aux participants de mieux comprendre ce qui se trouve à la base du code du logiciel malveillant et comment il est censé fonctionner lorsqu’il est activé. Il constitue un ticket d’entrée dans le monde de la rétro-ingénierie.

Contenu technique

  • Bases du langage Assembly
    o Architecture de processeur x86
    o Comprendre les bus et le trafic de données
    o Table Syscalls
    o Représentation des nombres et des caractères
    o Programmation avec Assembly x86
    ▪ Sortie standard
    ▪ Registres
    ▪ Variables et réserves
    ▪ Chaînes avec Assembly
    ▪ Travailler avec les chiffres
    ▪ Jumps et flags

Labos

Les labos suivants font partie du cours BT212 :

  • Labo 1 Introduction à l’analyse des logiciels malveillants
  • Labo 2 Surveillance avancée du DNS
  • Labo 3 Extraction des segments de données des logiciels malveillants
  • Labo 4 Analyser les processus
  • Labo 5 Analyse statique de base
  • Labo 6 Analyse dynamique de base
  • Labo 7 Surveillance du trafic réseau avec Wireshark
  • Labo 8 Analyse du registre
  • Labo 9 Les bases d’Assembly
  • Labo 10 Programmation Assembly x86
Etude de cas #1 (MA001)
Une compagnie d'électricité nommée City Power a été attaquée par des demandes de rançons qui ont laissé la capitale financière de l'Afrique du Sud, Johannesburg, sans électricité. Le logiciel de demande de rançon a crypté toute la base de données de la compagnie. En tant qu'expert en analyse de logiciels malveillants de la compagnie, vous avez été chargé d'analyser le logiciel malveillant.
Reference
Etude de cas #2 (MA002)
Un groupe de chercheurs en sécurité a découvert un nouveau logiciel malveillant très évolué qui a infecté une société énergétique européenne. Ce logiciel malveillant est notamment capable de démanteler les processus anti-virus et contient également des fonctions anti-analyse. Vous avez été chargé de lancer une analyse du logiciel malveillant.
Reference
Diapositive précédente
Diapositive suivante
BT220

Type de Cours

Le participant peut bénéficier d’un des deux modes de cours :

  • Une classe de cours virtuelle avec des labos avec instructeur et des scénarios exécutés dans notre Cyberium Arena
  • Des cours in situ avec des labos avec instructeur et des scénarios exécutés dans notre Cyberium Arena

Cependant, en raison des restrictions sanitaires, l’ensemble des cours se fait sous la forme de classes virtuelles. Toutes les sessions sont enregistrées et peuvent être re-visionnées pendant 30 jours. Tout le matériel de cours  est mis à disposition du participant sous  forme électronique, couvrant les syllabus, les labos, et les études de cas.

Groupe de cours:
défense

NIVEAU
0%
HEURES
1

Entre Pratique et Théorie

Notre approche de la formation est éminemment pratique et vise à permettre au participant d’appliquer dans un contexte pratique les connaissances qu’il acquiert.
Pratique
1 %
Labos
1
Etudes de cas
1

Certification

Ce cours prépare aux certifications suivantes:

  • GREM (SANS)

Équipement requis

Connexion réseau

Comme ce cours est essentiellement fondé sur un Learning Managament System (LMS), incluant une arène pour les labos, les participants ont besoin d’une connexion fiable à Internet.

Apporter votre propre matériel

Le cours étant principalement basé sur la pratique, les participants doivent avoir un ordinateur portable avec :

  • L’audio et la vidéo
  • 8 GB RAM
  • 200 GB d’espace disque
  • La capacité d’un environnement virtuel (capable de faire tourner la dernière version de Virtualbox ou un simulateur de machine virtuelle équivalent)

Et bien sûr un bon kit casque/micro. Plus de détails ici

Inscription

Etudes de cas réels