Hackropole - Analyse Mémoire - Pour commencer 2/2

Hackropole - Analyse Mémoire - Pour commencer 2/2

Introduction :

URL : https://hackropole.fr/fr/challenges/forensics/fcsc2025-forensics-analyse-memoire-2/
Nom du challenge : Analyse Mémoire - Pour commencer (2/2)
Difficulté : Intro
Contexte : À la suite de l’analyse effectuée dans la première partie, on apprend qu’un utilisateur travaillait sur un document hautement sensible. Si la machine est compromise, ce document pourrait être exfiltré. Nous devons extraire deux informations : le nom de l’exécutable de l’éditeur et le nom du document en cours d’édition.
Format du flag : FCSC{"nom du logiciel":"nom du document"}

Déroulé / Résolution :

  1. Extraction du dump

On commence par extraire le dump contenu dans l’archive :

caelinceptus@2600:~/Hackropole/memory_analysis_intro$ tar xvf analyse-memoire.tar.xz
# -> analyse-memoire.dmp
  1. Lister les processus (Identifier le logiciel d'édition) :

Nous utilisons Volatility 3 et le plugin windows.pslist pour lister les processus présents lors de la capture mémoire. Ici j’exécute Volatility via Docker (adaptez le chemin si nécessaire) :

caelinceptus@2600:~/Hackropole/memory_analysis_intro_part1$ docker run --rm -v $(pwd):/mnt sk4la/volatility3:latest -f /mnt/analyse-memoire.dmp windows.pslist

Extrait pertinent de la sortie :

4	0	System	0xa50a1f85d080	178	-	N/A	False	2025-04-01 22:10:38.000000 UTC	N/A	Disabled
124	4	Registry	0xa50a1f8e1080	4	-	N/A	False	2025-04-01 22:10:34.000000 UTC	N/A	Disabled
452	4	smss.exe	0xa50a20adc040	2	-	N/A	False	2025-04-01 22:10:38.000000 UTC	N/A	Disabled
556	544	csrss.exe	0xa50a20adf080	11	-	0	False	2025-04-01 22:10:43.000000 UTC	N/A	Disabled
656	544	wininit.exe	0xa50a26073080	1	-	0	False	2025-04-01 22:10:43.000000 UTC	N/A	Disabled
...
5036	4824	explorer.exe	0xa50a27f20080	48	-	1	False	2025-04-01 22:10:53.000000 UTC	N/A	Disabled
...
8968	5036	soffice.exe	0xa50a29831300	3	-	1	False	2025-04-01 22:11:34.000000 UTC	N/A	Disabled
8976	800	svchost.exe	0xa50a299f62c0	11	-	0	False	2025-04-01 22:11:34.000000 UTC	N/A	Disabled
9048	8968	soffice.bin	0xa50a297e7240	13	-	1	False	2025-04-01 22:11:34.000000 UTC	N/A	Disabled
...

L’analyse montre que soffice.exe (processus associé à LibreOffice / suite bureautique) est lancé avec explorer.exe comme parent, ce qui indique que le document a été ouvert localement via l’explorateur de fichiers plutôt que depuis un navigateur.

  1. Extraire le nom du document (commande / arguments du processus)

Pour récupérer la ligne de commande associée au processus, on utilise windows.cmdline en ciblant le PID identifié (ici 8968) :

caelinceptus@2600:~/Hackropole/memory_analysis_intro_part1$ docker run --rm -v $(pwd):/mnt sk4la/volatility3:latest -f /mnt/analyse-memoire.dmp windows.cmdline --pid 8968

En sortie :

PID	    Process	    Args

8968	soffice.exe	"C:\Program Files\LibreOffice\program\soffice.exe" -o "C:\Users\userfcsc-10\Desktop\[SECRET-SF][TLP-RED]Plan FCSC 2026.odt"

Le nom du document en cours d’édition est donc :
[SECRET-SF][TLP-RED]Plan FCSC 2026.odt

Remarque : l’étiquette TLP-RED indique une classification très restrictive (accès limité aux personnes autorisées) — cela renforce l’importance de la confidentialité du fichier.
  1. Construction du flag

En agrégeant les informations trouvées :

  • nom du logiciel : soffice.exe
  • nom du document : [SECRET-SF][TLP-RED]Plan FCSC 2026.odt

Le flag final est :

FCSC{soffice.exe:[SECRET-SF][TLP-RED]Plan FCSC 2026.odt}

Conclusion :

Ce challenge est une excellente mise en pratique des compétences de base en analyse mémoire Windows. Les deux plugins utilisés ici se révèlent particulièrement utiles :

  • windows.pslist :
    permet d’obtenir l’inventaire des processus actifs au moment de la capture mémoire. C’est un bon point de départ pour repérer rapidement les exécutables pertinents (logiciels bureautiques, navigateurs, services suspects, etc..) et pour établir des relations parent/enfant entre processus (par exemple explorer.exesoffice.exe).
  • windows.cmdline :
    extrait la ligne de commande (arguments) d’un processus donné. Cela permet de retrouver des chemins de fichiers ouverts, des paramètres passés aux exécutables, et donc souvent le nom exact d’un document ou d’un fichier sensible qui était en cours d’utilisation.

En résumé, la combinaison pslist + cmdline fournit une méthode simple et efficace pour :

  • localiser un processus d’édition (qui indique quel logiciel était utilisé),
  • récupérer la ligne de commande associée pour extraire le nom du document ouvert,
  • et, plus généralement, reconstituer le contexte d’utilisation (qui a ouvert quoi, comment et quand).

Read more