Mini-TP - découvrir les artefact forensique Windows
Les temps MACB, et le Body file
Téléchargez 01 - mactime.zip et dézippez-le. Votre machine SIFT devrait déjà contenir les outils nécessaires à l’analyse du fichier TXT contenu dans le ZIP.
Afin de formater le fichier au format Body en quelque chose de plus lisible, nous allons utiliser mactime. Lisez sa page de manuel afin de vous familiariser avec.
Répondez aux questions suivantes:
- Quand le fichier suivant a-t-il été créé ? :
C:\Users\Gérard\Documents\emacs-22.3\README.W32(le temps “B”) - D’où provient-il ? (Qu’est-ce qu’il fait ici ?)
- Quelle est la date de dernière modification de son contenu ? (le temps “M”)
- Identifiez-vous un problème dans ces deux dates ? Comment l’expliquer ?
Les journaux d'événements Windows
Téléchargez 02 - evtx.zip et dézippez-le.Nous allons utiliser evtxexport pour transformer le fichier EVTX en un fichier XML lisible par un humain. Lancez la commande suivante afin de procéder à l’export:
$ evtxexport -f xml sysmon.evtx
Répondez aux questions suivantes:
- Quel est le nom de la machine depuis laquelle ce fichier EVTX a été extrait ?
- Observez les différents événements, et le cours. Quel est l’EventID qui correspond à la création d’un processus ?
- Quel fichier est identifié par le hash
29EFD64DD3C7FE1E2B022B7AD73A1BA5? Quelle était la ligne de commande utilisée pour le lancer ?
Extraction d'informations depuis des ruches de registre
Téléchargez 03 - registry.zip et dézippez-le. Installez regripper depuis APT, ou regrippy depuis PyPI.
Lisez la documentation de regripper ou regrippy.
Répondez aux questions suivantes:
- Listez les programmes lancés automatiquement lors de la connexion de Gérard.
- Lequel vous paraît suspect ?
TP - Réponse à incident, analyse d’une machine compromise par un groupe APT
Mise en situation: vous venez de recevoir un mail d’alerte du Security Operations Center.
Les équipes réseaux nous ont informé avoir vu passer du trafic suspect qui semblerait provenir d’un ordinateur portable d’un de nos employés. Les paquets sont à destination de l’IP 63.32.214.139, qui est bien connue, et est associé à Equation Group. Nous avons effectué une capture de la machine en suivant la procédure, vous trouverez les fichiers en pièce jointe.
L’archive contenant les fichiers importants de la machine, un Body file du disque dur, et une capture mémoire, peut se télécharger ici: tp-forensics.zip (2.6 GiB)
Nous utiliserons Volatility afin d’analyser le dump de mémoire: voici une cheatsheet contenant les plugins les plus utilisés. Pour analyser les fichiers extraits depuis la machine, référez-vous aux slides du cours.
L’analyse de cet incident est relativement longue: prenez des notes sur ce que vous observez afin de pouvoir y revenir. Elle est plutôt guidée par rapport à une vraie réponse sur incident: l’idée est de guider votre analyse vers les bons indices afin que vous puissiez arriver au bout aujourd’hui. N’hésitez pas à demander de l’aide !
Etape 1: identification du point d'entrée
- Quel début de piste pouvez-vous identifier dans le message du SOC ?
- Comment pouvez-vous identifier les processus liés à cet IoC ?
- Listez les processus liés à cet IoC. Vous devriez en trouver 2.
- Réponse (surlignez): x86.exe et WINWORD.exe
Etape 2: analyse de maldoc
- Récupérez la ligne de commande complète utilisée pour lancer Word
- Grâce à cette ligne de commande, identifiez le fichier ouvert dans Word
- Identifiez quand il a été créé
- Récupérez-le (depuis la mémoire)
- Analysez-le, en utilisant
olevbapour lister les macros. Lisez ensuite cet article sur le Remote Template Injection, et vérifiez que vous observez bien cette technique dans votre document. - Récupérez le template chargé par Word et analysez ses macros
Etape 2 bis: déterminer la source du fichier
Nous allons étudier le contenu de l’USN Journal de la machine compromise afin de mieux comprendre d’où provient le document Word en question. L’USN Journal est un artefact du système de fichiers NTFS qui liste les changements récents sur un volume, tel que les nouveaux fichiers, les renommages, et les suppressions.
Le fichier contenant ces informations se nomme $UsnJrnl:$J, et est situé dans le dossier caché $Extend à la racine du disque.
Vous pourrez utiliser PoorBillionaire/USN-Journal-Parser afin de parser ce fichier.
pip install git+https://github.com/PoorBillionaire/USN-Journal-Parser
- Identifiez les lignes correspondant au fichier Word dans le Body file donné avec le dump. Quels Alternate Data Streams pouvez-vous identifier ?
- Qu’est-ce que cela signifie ?
- Parsez l’USN Journal avec le script
- Cherchez la ligne correspondant à la création du document. Observez les modifications ayant eu lieu peu avant. Que pouvez-vous en déduire concernant l’origine du document
Etape 3: analyse de malware
- Récupérez le fichier
x86.exe - Cet exécutable est un malware d’une famille bien connue. Laquelle ?
- Grâce à cette information, extrayez sa configuration
- Déterminez son processus parent
- Déterminez comment ce processus en est venu à exécuter ce malware