• 20 heures
  • Difficile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 17/10/2023

Découvrez les différents vecteurs d’infection

Dans les parties précédentes nous avons étudié comment investiguer un système Windows pour rechercher des indices de compromission et quelles actions ont été menées sur la machine. Vous avez identifié des fichiers et des éléments malveillants qui sont à l’origine de la compromission, félicitation ! 🎉

Il faut à présent analyser ces éléments pour comprendre le mode opératoire et comment le contrer.

Dans cette partie, nous découvrirons ce qu'est un vecteur d’infection et comment ils sont utilisés par un attaquant pour infecter une machine.

Qu’est-ce qu’un vecteur d’infection ?

Pour pouvoir infecter un ordinateur un attaquant doit faire en sorte d’exécuter du code malveillant sur la machine cible. Pour ce faire il doit utiliser un vecteur d’infection.

Un vecteur d’infection est donc un moyen d’infecter un ordinateur. Il existe plusieurs types de vecteur.

  • La navigation internet via le téléchargement ou via l’exploitation de vulnérabilités.

  • L’email contenant une pièce jointe malveillante ou un lien malveillant. Les pièces jointe peuvent être des fichiers compromis tel que qu’un fichier PDF, ZIP, Office… Cela peut également être un SMS, ou un message sur les réseaux sociaux par exemple.

Dans certains environnements sensibles tels que les centrales nucléaire, l’accès internet n’est pas autorisé. En 2010, le malware Stuxnet a infecté les centrales nucléaires iranienne par le biais d’une clef USB, le malware s’est ensuite propagé sur le réseau interne. Il avait pour objectif de ralentir les centrifugeuses responsables de l’enrichissement de l’uranium.

  • Les clefs USB et autres supports externes, peuvent aussi être des vecteurs d’infection.

  • Un autre vecteur d’infection est ce qu’on appelle la « Supply Chain Attack », il s’agit ici de compromettre un tiers de confiance de l’entreprise cible pour pouvoir la compromettre. Ainsi elle bénéficiera d’un canal de confiance qui lui permettra de contourner les protections mis en place. Ce genre de vecteur est beaucoup plus difficile à détecter et à éviter car il s’agit de la sécurité des tierces parties avec lequel l’entreprise travaille.

En 2017, le malware NotPetya s’est répandu par le biais d’une mise à jour logiciel d’un outils de comptabilité en Ukraine. Lorsque les clients de cette entreprise ont mis à jour le logiciel elles ont téléchargé le malware qui s’est ensuite répandu de manière très rapide sur les réseaux infectés.

Quels sont les techniques utilisé par les attaquants ?

Comme nous venons de le voir il existe plusieurs vecteurs d’infection qui implique dans la plupart des cas une action utilisateur. Toutefois l’exploitation de vulnérabilité ne nécessite pas toujours l’interaction humaine. Nous allons à présent étudier quelques techniques utilisées par un attaquant.

L’exploitation de vulnérabilité

L’exploitation de vulnérabilité permet de compromettre une machine en exploitant un bugs d’un programme. Elle permet dans le pire des cas   une élévation de privilège ou l’installation d’un logiciel malveillant par exemple. Lorsque la vulnérabilité n’a pas de correctif disponible on parle de faille Zéro Day. C’est généralement celle-ci qui est la plus redouté car tant que le patch n’est pas disponible les systèmes sont vulnérables.

Il existe de nombreuse vulnérabilités qui sont référencé par des numéros de CVE (Common Vulnérabilité Exposure). Pour en savoir plus vous pouvez visiter le site du Mitre.

L’utilisation de fichier anodins

L’email reste un des moyens les plus utilisés pour compromettre une cible. Pour pouvoir inciter un utilisateur à ouvrir une pièce jointe, les attaquants pourront utiliser des fichiers communément utilisés tous les jours tels que des fichier PDF, Office Documents, zips, etc.

Généralement la pièce jointe sera accompagnée d’un message qui incitera l’utilisateur à cliquer.

Spam Email
Spam Email

La pièce jointe pourra contenir :

  • Du code malveillant permettant l’exploitation d’une vulnérabilité par exemple exploitation d’une faille dans Adobe Reader avec un fichier PDF spécifiquement créé.

  • Du code malveillant permettant de télécharger un autre composant. Par exemple une macro malveillante dans un fichier Excel ou Word qui téléchargera sur une source distance un logiciel malveillant. On appelle ce type de document un Dropper ou un Downloader.

Les autres types de fichiers

Les attaquants peuvent également utiliser d’autre type de fichiers qui seront exécutés par l’utilisateur : des fichiers ZIP contenant une vulnérabilité, des fichiers JavaScript, VBS, etc.

Utiliser les outils de base pour analyser le fichier

Pour analyser un fichier malveillant il faut d’abord identifier quel type de fichier nous avons devant nous avant même de l’ouvrir pour l’analyse dynamiquement. On parle ici d’analyse statique. 

Déterminez si le fichier est malveillant

Une des premières étapes est de savoir si le fichier est connu comme étant malveillant. La plateforme VirusTotal permet de vérifier si le malware est connu ou non. Il s’agit d’une plateforme d’analyse regroupant plusieurs antivirus.

Il est possible d’uploader un fichier pour l’analyser, analyser une url et faire une recherche de malware.

Déterminez le type de fichier avec l'outil file

File est un outil natif sous Linux qui permet d’identifier le type de fichier en lisant le magic number. Le magic number est un nombre hexadecimal utilisé dans l’entête d’un fichier pour identifier son format.

Ci-dessous, quelques exemple :

fr0gger@crash:~OpenClassroom$ file invoice
invoice.7z: 7-zip archive data, version 0.4
fr0gger@crash:~OpenClassroom$ file forensic
forensic.xlsx: Zip archive data, at least v2.0 to extract
fr0gger@crash:~OpenClassroom$ file Forensic
Forensic.docx: Microsoft Word 2007+
fr0gger@crash:~OpenClassroom$ file calc
calc.exe: PE32+ executable (GUI) x86-64, for MS Windows
fr0gger@crash:~OpenClassroom$ file forensic
forensic.pdf: PDF document, version 1.4

Un attaquant pourra changer l’extension d’un fichier pour tromper un utilisateur. L’outil file vous permettra d’identifier le réel type de fichier que vous analyser.

Extrayez les chaines de caractère avec l'outil strings

Un autre outil natif sous Linux est l’outil  strings il permet d’extraire les chaînes de caractère d’un fichier sans l’ouvrir. Dans certains cas cela vous permettra d’identifier des fonctionnalités du fichier malveillant que vous analysez.

En résumé

Les attaquants ne cessent de rivaliser d’ingéniosité pour infecter des cibles. Dans cette partie nous venons de passer en revue les différents types de vecteurs d'infection comme les pièces jointes de mails, les supports externes, etc.

Nous avons également les outils de base pour commencer l’analyse :

  • VirusTotal pour vérifier que le fichier n'est pas déjà identifié par malveillant ;

  • file  pour déterminer le type du fichier ;

  • strings  pour en extraire les chaines de caractère.

Dans le chapitre suivant nous approfondirons l’analyse d'un de ces vecteurs en analysant un email malveillant. 

Exemple de certificat de réussite
Exemple de certificat de réussite