Forensic : Extraire des fichiers de la table MFT avec Volatility (Part 2) [FR]

in #security7 years ago

Bonjour les steemiens,

Dans la première partie -> Extraire des fichiers depuis la table MFT avec Volatility (Part 1), nous avons vu ce qu'était la table MFT, comment utiliser Volatility et comment extraitre des fichiers "resident" (dont la taille est inférieur à 1024 octets) directement depuis la table MFT.

Nous allons maintenant voir comment extraitre des fichiers "non-resident" (dont la taille est supérieur à 1024 octets) depuis un dump mémoire. Pour la démonstration j'utilise, comme pour la partie précédente, les fichiers des challenges du site Root-Me, n'hésitez pas à vous inscrire si le hack vous interesse !

1. MFTParser plugin : Trouver un fichier intéressant

Le but étant de trouver des informations pertinentes, pouvant nous permettre de résoudre un problème ou suivre les trâces d'un programme, nous n'allons pas extraire n'importe quel fichier. Dans le cas de notre dump, un grep sur "find" nous permet de repérer un fichier intéressant sur le bureau de l'utilisateur.

MFTParser.png
Chemin du fichier (à droite) : "Users\info\Desktop\findme"

2. Filescan plugin : Rechercher l'adresse physique du fichier

Nous avons donc un fichier intéressant, faisant plus de 1024 octets donc "non-resident", mais celui-ci est peut être stocké en mémoire. Pour vérifier ça et tenter de récupérer l'adresse physique du fichier, nous allons utiliser le plugin "filescan" avec un grep sur "find"

FilescanPlugin.png

Nous voyons bien notre fichier "findme", stocké sur le bureau de l'utilisateur et ayant comme adresse physique "0x000000001ee20110". Ces informations vont nous permettre d'extraitre le fichier directement depuis le dump memory.

3. Dumpfiles plugin : extraire le fichier

Pour extraire le fichier qui nous intéresse nous utilisons le plugin "dumpfiles" en renseignant l'adresse physique que nous venons de récupérer grâce à l'étape précédente.

DumpfilesPlugin.png

Options utilisées :

-Q : utiliser l'offset physique
-D : spécifie le dossier où le fichier sera extrait
-u : utiliser le mode unsafe
-n : inclure de nom du fichier dans le nom du dump
-S : Créer un fichier summary, qui contiendra les informations relatives à l'extraction

Le fichier "file.None.0x84e13338.findme.dat" correspond au fichier extrait depuis le dump ! Prochaine étape, l'analyse de celui-ci pour savoir ce qu'il contient, script, malware, image, etc...

Coin Marketplace

STEEM 0.20
TRX 0.13
JST 0.029
BTC 66552.34
ETH 3451.80
USDT 1.00
SBD 2.65