Des deux côtés 1/2

Contexte

Catégorie : Forensic

Points : 500

Auteur : https://twitter.com/_worty

Voir les deux côtés de quelque chose, c'est toujours bon non?

Vous êtes une APT et un de vos collègues a volé une machine chez une entreprise du CAC40, malheureusement, celle-ci ne veut plus démarrer.. Votre collègue étant un hacker en herbe, il a pensé à faire un dump mémoire avant que la machine rende l'âme !

Retrouvez le fichier qui contient des données confidentielles dans ce dump mémoire !

Début de l'analyse

  • On a un dump mémoire "memory.dmp" de 1.1Go (=volatility)

  • On cherche un fichier avec des données confidentielles

  • La machine volée est une Windows et plus précisément une Win7SP1x86_23418 :

file memory.dmp
memory.dmp: MS Windows 32bit crash dump, PAE, full dump, 262144 pages

python volatility/vol.py -f memory.dmp imageinfo
Volatility Foundation Volatility Framework 2.6.1
INFO    : volatility.debug    : Determining profile based on KDBG search...
Suggested Profile(s) : Win7SP1x86_23418, Win7SP0x86, Win7SP1x86_24000, Win7SP1x86 (Instantiated with WinXPSP2x86)
 AS Layer1 : IA32PagedMemoryPae (Kernel AS)
 AS Layer2 : WindowsCrashDumpSpace32 (Unnamed AS)
 AS Layer3 : FileAddressSpace (/mnt/v/BZHCTF/FOFO/memory.dmp)
 PAE type : PAE
 DTB : 0x185000L
 KUSER_SHARED_DATA : 0xffdf0000L
 Image date and time : 2022-02-23 19:29:05 UTC+0000
 Image local date and time : 2022-02-23 11:29:05 -0800

Recherche du fichier secret

Maintenant que nous avons notre profil volatility, nous pouvons pousser nos recherches et lister l'ensemble des fichiers connus de la mémoire via le plugin filescan.

Je pars de l'hypothèse que le fichier confidentiel en question se trouve dans l'espace perso de la victime, et effectivement, on en trouve 2 :

  • Employe Secret.txt

  • Resultat Entretien 2021.txt

Extraction des fichiers

Après avoir trouvé les fichiers, on imagine qu'il ne reste plus qu'a les extraire... mais malheureusement, le contenu des fichiers n'est pas récupérable.

Recherche d'un processus

Seul moyen pour retrouver le contenu des fichiers, chercher un processus qui les utilisent. Le plugin pslist nous aide à identifier les différents processus en fonctionnement sur le système.

notepad.exe semble être intéressant à vérifier car il est souvent utilisé pour ouvrir les fichiers .txt

  • PID 3232

  • PID 3732

Le plugin cmdline permet de confirmer cette hypothèse :

Dump des processus

Je dump le premier process (pid=3232) associé à notepad.exe :

Flag !

Après un gros strings/grep sur 'BZHCTF', on ne récupère rien... j'essaye BZHCTF en base64 soit : QlpIQ1RG

On récupère un message indiquant l'arrivée d'un employé ainsi que sa signature, qui est en réalité notre flag : BZHCTF{fr33_cr3d3nti4ls}

Bonus 🏎️

Il était possible de flag juste via strings/grep :

Mis à jour

Ce contenu vous a-t-il été utile ?