Précédemment, nous avons obtenu une image du support fourni grâce aux différentes méthodes de copie. De plus, nous nous sommes assurés (autant que l'on puisse le faire) de l'intégrité du process de copie. Il reste maintenant à analyser l'image.
Pour cela, l'utilisation de distrib spécialisées est intéressante, en voici quelques une :
Il en existe bien d'autres, de toutes façons, pour l'analyse d'une image disque, j'ai utilisé les outils de Sleuthkit.
mmls image.dd
Il est possible d'ajouter les options suivantes, bien que mmls soit capable de trouver les types de partition et le type de l'image:
mmls -i split image.*
Si l'image est splittée sous la forme image.001, image.002,etc…
La commande est surtout utilisée pour connaître les secteurs de début des partitions.
fsstat -o <offset> image.dd
L'option -o prendra la valeur du secteur de début donnée par mmls.
Pour une image splittée du type image.001,image.002,image.003,etc… On utilisera:
fsstat -o <offset> image.*
Cette commande permet de lister les fichiers d'une partition et donner l'inode des fichiers.
fls -o <offset> image.dd
Dans le cas d'une image splittée: ou pour une image splittée:
fls -o <offset> image.* <inode>
L'option -i n'est pas obligatoire.
<offset> est toujours la valeur du secteur de démarrage de la partition. Si aucune autre option n'est renseignée, fls listera à partir de la racine.
De plus, cette commande va lister un répertoire virtuel nommé $OrphanFiles. Il renferme les entrées des fichiers dont les métadatas ne correspondent à aucun nom de fichier. Il est alors possible d'y accéder par leur inode.
Pour lister le contenu d'un répertoire, il suffit de renseigner son inode:
fls -o <offset> image.dd <inode_du_repertoire>
fls renvoie ce genre de liste:
r/r * 10517: var/log/fichier1 r/r 10537: var/log/fichier2 d/d 10659 (realloc): var/log/rep1
Pour le détail des explications entre inode et nom de fichiers, voir le support pdf à la page 144.
Il arrive que deux fichiers possèdent le même inode. la commande ffind permet de lister les noms des fichiers associés au même inode:
ffind -o <offset> image.dd 10253
La commande istat donnera les détails du fichier avec lequel l'inode est associé.
istat -o <offset> image.dd 10253
Cette commande donnera les métadatas associées à l'inode et surtout les blocks concernés par ce fichier.
Quant à icat, il permttra d'extraire les blocks de données obtenus via istat:
istat -o <offset> image.dd 10253 > /chemin/nom_fichier
La commande file donnera le type de fichier ainsi obtenu.
Autopsy permet d'automatiser toutes les procédures vues plus haut. Cette application analyse une image disque (ou un disque directement) et liste toutes les informations relatives au système de fichiers ainsi que tous le s fichiers du disque.
Elle fait partie du package Sleuthkit. Dans les distrib, autopsy v2.x est installée. Elle est au format web.
Une version 3 existe, mais elle ne tourne que sous windows.
Les deux ont été testées, elles sont toutes les deux très bien, ce n'est qu'une histoire de goût.
Il faudra au préalable monter une image.
ls -laiRtu > /files.list
find . -type f > files.list
find . -type f -exec file {} \; > filetype.list
la commande file se base sur les signatures contenues dans les fichiers suivants:
Certains fichiers, vidéos notamment, peuvent être considérés pour des fichiers images. Il faudra vérifier les tailles des fichiers.
Certains types de fichiers image n'ont pas le terme “image” dans leur description. Attention lors de la recherche de ce terme dans filetype.list.