Nous venons de voir le fonctionnement du système de fichiers NTFS, ainsi que l’extraction de la MFT pour générer une timeline des fichiers créés sur le disque.
Dans ce chapitre, nous verrons quels sont les éléments d'intérêt pour l’analyse forensic.
Découvrez les principaux artefacts d’intérêt sous Windows
Le principe d’échange de Locard, appliqué aux sciences forensic dans la police scientifique, indique que lorsque deux corps entrent en contact l'un avec l'autre, il y a nécessairement un transfert entre ceux-ci, et donc une trace. Ce principe s’applique également à l’investigation numérique, et c’est ce qui va nous permettre d’identifier les éléments passés sur la machine compromise.
Windows est un système complexe qui est composé de plusieurs éléments permettant de comprendre les événements passés. Si vous savez où chercher, vous pourrez retrouver toutes les informations dont vous avez besoin pour réaliser votre investigation. ;)
Windows event logs
Les event logs Windows sont des journaux qui répertorient chaque action de chaque application sur le système, tels que les messages d’erreur, d’information et de warning. Il est possible d’y accéder en utilisant l’outil natif Event Viewer.
Les catégories de logs se trouvent sur le panneau de gauche et vous donnent l’accès aux événements liés à cette catégorie.
Pour extraire les event logs, il est possible d’utiliser FTK Imager. Sous Windows 7, les logs se situent dans le répertoire %SystemRoot%\System32\Winevt\Logs
.
Enfin, il sera possible de les analyser sur un autre système avec le logiciel Event Log Explorer. Il est payant, mais la démo est utilisable 30 jours.
Les services
Les services Windows sont des applications qui démarrent généralement au démarrage de l'ordinateur et s'exécutent silencieusement en arrière-plan jusqu'à son arrêt. À proprement parler, un service est une application Windows implémentée avec l'API de services et gérant des tâches de bas niveau, ne requérant que peu ou pas d'interaction de l'utilisateur. Les malwares peuvent utiliser cette fonctionnalité de Windows pour rester persistants.
Les techniques de persistance permettent à un malware de se réexécuter même après que le système ait rebooté. Les techniques de persistance utilisées par les malwares sont nombreuses.
Il est possible d’y accéder avec l’interface native services.msc.
Dans notre cas, aucun service malveillant n'a été créé.
Les Prefetch
Les Prefetch sont des fichiers créés par le système lorsqu’une application s’exécute sur le système. Les fichiers Prefetch sont d'excellents artefacts pour analyser les applications exécutées sur un système.
Windows crée un fichier Prefetch (.pf) lorsqu'une application est exécutée pour la première fois à partir d'un emplacement particulier. Cela permet d’accélérer le chargement des applications. La fonctionnalité «Prefetch» de Windows est généralement activée par défaut.
Le répertoire Prefetch contiendra un enregistrement historique des 128 derniers programmes "uniques" exécutés sur le système. Les Prefetch se trouvent dans le répertoire C:\Windows\Prefetch
. En les classant par ordre chronologique, il sera possible d’identifier les programmes qui se sont exécutés sur le système.
Le registre
Le registre Windows est une base de données hiérarchique qui stocke les paramètres de bas niveau pour le système d'exploitation Microsoft Windows et pour les applications qui choisissent d'utiliser le registre.
Le noyau, les pilotes de périphérique, les services, le gestionnaire de comptes de sécurité (SAM) et l'interface utilisateur peuvent tous utiliser le registre.
Le registre contient des informations auxquelles Windows fait constamment référence pendant son fonctionnement, telles que les profils de chaque utilisateur, les applications installées sur l'ordinateur et les types de documents que chacun peut créer, les propriétés des dossiers et des icônes d'application, le matériel existant sur le système, et les ports utilisés.
Les ruches du registre sont stockées dans le répertoire %SystemRoot%\System32\config
.
Une ruche est un groupe logique de clés, de sous-clés et de valeurs dans le registre, qui contient un ensemble de fichiers de prise en charge contenant des sauvegardes de ses données.
Chaque fois qu'un nouvel utilisateur ouvre une session sur un ordinateur, un nouveau répertoire est créé pour cet utilisateur avec un fichier distinct pour le profil utilisateur. Ceci s'appelle la ruche de profil d'utilisateur.
La ruche d'un utilisateur contient des informations de registre spécifiques concernant ses paramètres d'application, son bureau, son environnement, ses connexions réseau et ses imprimantes. Les ruches de profil utilisateur se trouvent sous la clé HKEY_USERS.
Les ruches spécifiques à l’utilisateur (NTUSER.DAT) sont stockées dans le répertoire C:\Users\<username>
.
Ruches | Fichier |
---|---|
HKEY_CURRENT_CONFIG | System, System.alt, System.log, System.sav |
HKEY_CURRENT_USER | Ntuser.dat, Ntuser.dat.log |
HKEY_LOCAL_MACHINE\SAM | Sam, Sam.log, Sam.sav |
HKEY_LOCAL_MACHINE\Security | Security, Security.log, Security.sav |
HKEY_LOCAL_MACHINE\Software | Software, Software.log, Software.sav |
HKEY_LOCAL_MACHINE\System | System, System.alt, System.log, System.sav |
HKEY_USERS\.DEFAULT | Default, Default.log, Default.sav |
Voici à quoi correspond chaque ruche :
SAM (gestionnaire de compte de sécurité) : contient toutes les informations de comptes utilisateurs et de droits d'accès ;
Sécurité : le noyau y accédera pour lire et appliquer la politique de sécurité applicable à l'utilisateur actuel et à toutes les applications ou opérations exécutées par cet utilisateur ;
Défaut : ruche utilisée par le compte système local. Utilisée par les programmes et services exécutés en tant que système local ;
Système : contient des informations sur la configuration du système Windows, la liste des périphériques montés contenant un système de fichiers, ainsi que plusieurs "HKLM \ SYSTEM \ Control Sets" numérotés, contenant d'autres configurations de pilotes de système et de services exécutés sur le système local ;
Logiciel : contient le logiciel et les paramètres Windows, principalement modifiés par les installateurs d'applications et de systèmes ;
Ntuser.dat : contient les paramètres spécifiques à chaque utilisateur (les profils itinérants l'utilisent).
Il est possible de dumper les fichiers de registre avec FTK Imager.
Les fichiers extraits seront ensuite stockés dans votre répertoire pour analyse.
Pour explorer ces fichiers, il est possible d'utiliser l'outil RegRipper. Pour cela, il faudra sélectionner le fichier NTUSER.DAT du profil de la victime, ici JohnOC. Puis sélectionner le nom du rapport à générer et le profil a utiliser ; ici nous choisissons le profil "ntuser".
Une fois cela terminé, un rapport sera généré. Si nous recherchons dans les clés RUN que nous avons précédemment identifiées avec Volatility, nous retrouvons rapidement notre clé de registre malveillante.
Utilisez Autopsy pour analyser la copie du disque
Ici, nous allons utiliser le framework Autopsy téléchargeable à cette adresse. Autopsy est une interface graphique de l’outil open source The Sleuth Kit.
Créez une enquête
La première étape est de créer notre enquête, ou case dans Autopsy. Pour cela, ouvrez Autopsy et cliquez sur New Case.
Nous nommons ici notre case "IR_001".
Remplissez ensuite les informations de base : le numéro de l'enquête ainsi que votre nom.
Maintenant que notre cas est créé dans Autopsy, nous allons pouvoir ajouter notre image disque.
Ajouter les images à analyser
Ensuite, il faudra ajouter l’image du disque dur précédemment collectée, en cliquant sur Add Data Source.
Il est ensuite possible de spécifier les modules.
Enfin, les données seront analysées et parsées par Autopsy. Vous devriez avoir un écran comme ci-dessous. Le processing peut durer un certain temps en fonction de la taille de votre image.
Analyse des données
Lorsque les données ont fini d’être parsées par Autopsy, il est possible d’explorer notre image.
Par exemple, il est possible de voir les différents types de fichiers sur le système. Ici nous affichons par exemple les exécutables sur le système, et nous retrouvons nos exécutables suspects.
Nous récupérons ici les différent fichiers précédemment identifiés en faisant un clic droit, puis Extract File.
Les différents fichiers exécutables récupérés sont les suivants :
rad5163B.tmp.exe
;RGoEsDNcZhEnl.exe
;rfhyMVOQxfc.exe
;bVwHCYX.exe
.
En faisant une recherche par type de fichier ou par fichiers récents, nous trouvons des fichiers suspects ouverts juste avant l'incident : invoice.pdf
, invoice.zip
et invoice.docm
.
Nous pouvons ajouter ça à nos indices pour l'investigation !
Il est également possible d’afficher les fichiers avec l’utilisation de chiffrement. Ci-dessous, nous pouvons voir que le fichier invoice.zip
utilise du chiffrement.
Il est possible de générer une timeline directement avec Autopsy. Une fois les fichiers analysés, vous pourrez explorer les différents événements et filtrer sur les dates de l’incident. Ici nous filtrons sur la date d'infection correspondant au 31 juillet 2019.
Enfin, il sera possible de générer un rapport en cliquant sur Generate Report.
Le rapport généré sera au format HTML et vous y retrouverez de nombreuses informations analysées par Autopsy.
En résumé
Dans ce chapitre, nous avons exploré les éléments d’intérêt pour notre analyse sur la copie du disque dur. Nous avons vu comment analyser et collecter la base de registre, les event logs ou encore les services. Finalement, nous avons vu comment utiliser le framework Autopsy pour analyser notre image disque.
Nous avons pu confirmer que l'attaquant a utilisé un moyen de persistance en créant une clé run avec le nom YPDKhVAXzZSU
qui démarre le script VBS C:\Users\johnoc\AppData\Local\Temp\krtYMkVgyjNdd.vbs
.
Nous avons également récupéré les logiciels malveillants identifiés, ainsi qu'un fichier invoice.pdf
, un fichier invoice.docm
et un fichier invoice.zip
.
Dans le prochain chapitre, nous identifierons ces différent fichiers, ainsi que le vecteur d'infection utilisé pour compromettre la machine.