Qu'est-ce que le forensic mémoire ?
Le forensic mémoire (ou memory forensics) consiste à analyser le contenu de la RAM d'un système pour y trouver des preuves d'activité malveillante ou des informations cachées. Contrairement au disque dur, la mémoire est volatile - elle disparaît à l'extinction. En CTF, on vous fournit un "dump" de cette mémoire, figé à un instant T.
Dans un dump mémoire, on peut trouver : des processus actifs, des connexions réseau ouvertes, des fichiers ouverts, des commandes exécutées dans un terminal, des mots de passe en clair dans le cache, des artefacts de malware, et souvent… le flag.
Volatility : installation et premiers pas
Volatility est l'outil de référence pour l'analyse de mémoire. Volatility 3 est la version actuelle - plus rapide, sans besoin de profil système, installable via pip.
Installation : pip install volatility3. Puis python vol.py -f dump.mem windows.info pour les premières informations sur un dump Windows.
Pour Volatility 2 (encore très présent dans les write-ups), il faut identifier le profil avec volatility -f dump.mem imageinfo, puis utiliser ce profil pour toutes les commandes suivantes.
Les commandes essentielles
Voici les commandes à connaître absolument pour un challenge forensic Windows :
Démarche pour un challenge forensic
Quand on reçoit un dump mémoire en CTF, voici l'ordre d'investigation recommandé :
- Informations système - OS, version, architecture avec
windows.infoouimageinfo - Processus suspects -
pstreepour voir les processus parents/enfants, repérer les orphelins ou noms suspects - Connexions réseau -
netstatpour voir si un processus communique avec l'extérieur - Commandes exécutées -
cmdlineetcmdscanrévèlent souvent directement le flag ou la piste - Fichiers -
filescanpuisdumpfilespour extraire les fichiers intéressants - Strings - en dernier recours,
strings dump.mem | grep -i "CTF{"trouve souvent le flag directement
Astuce : la commande strings sur le dump brut est sous-estimée. Beaucoup de flags CTF sont simplement en clair dans la mémoire et se trouvent en quelques secondes avec strings dump.mem | grep CTF.
FAQ - Forensic et Volatility
Volatility 3 est la version actuelle, plus rapide et sans profil requis. Cependant beaucoup de write-ups CTF utilisent encore V2. L'idéal est d'avoir les deux. V3 est recommandé pour commencer.
Une copie brute du contenu RAM à un instant T. Il contient processus actifs, connexions réseau, mots de passe en cache, clés de chiffrement et bien d'autres artefacts forensiques.
Avec volatility -f dump.mem imageinfo. Volatility analyse et suggère des profils compatibles. On choisit le plus probable puis on valide avec pslist.
Oui. Volatility 3 dispose de plugins pour Linux et macOS. Les commandes diffèrent légèrement (ex : linux.pslist au lieu de windows.pslist) mais la démarche est similaire.
Conclusion
Le forensic mémoire est une compétence clé pour tout analyste SOC. En CTF, les challenges Volatility développent des réflexes d'investigation directement utilisables dans un contexte de réponse à incident réel.
La progression est rapide : après 5 ou 6 challenges, les commandes deviennent des réflexes et l'œil s'entraîne à repérer les processus anormaux, les connexions suspectes et les artefacts malveillants.
Entraînez votre SOC au forensic en conditions réelles
CTFLab propose des challenges forensic progressifs pour former vos équipes à l'analyse de mémoire et d'artefacts.