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 -0800Recherche 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 ?