Datenträgerforensik mit „The Sleuth Kit“

In diesem Artikel geht es um die forensische Analyse des im Artikel “Sicherung eines Rechners mit Live USB-Stick (CAINE)” gesicherten Festplattenabbilds “dell.img”. Ich kann in einem Artikel natürlich keine komplette forensische Analyse machen.

Es geht mir eigentlich viel mehr darum euch Grundlagen des wirklich sinnvollen “The Sleuth Kit” zu zeigen und sie näher zu beschreiben. Ein Deep-Dive in die Datenträgerforensik bekommt ihr mit Brian Carriers Buch “File System Forensic Analysis” (einfach mal in Google suchen). 

Was ist “The Sleuth Kit” überhaupt?

“The Sleuth Kit” (TSK) sind von Brian Carrier entwickelte Kommandozeilen-Tools, die im Bereich der Datenträgerforensik sehr häufig zum Einsatz kommen. Eine passende Benutzeroberfläche hierzu bietet die kostenfreie Forensik-Suite “Autopsy”. Beide Tools sind kostenlos und hier erhältlich. TSK ermöglicht die schnelle und effiziente Analyse der Partitionstabelle (bzw. des Master Boot Records) einer Platte, der einzelnen Partitionen und auch die Suche nach gelöschten Daten auf der Platte. 
Bevor wir aber mit der Analyse beginnen möchte ich euch das “Forensic-Cheat-Sheet for Linux and TSK” nicht vorenthalten, da es die Befehle wirklich übersichtlich darstellt (und zu einem großen Teil auch unter Windows anwendbar ist, was TSK betrifft).

Also beginnen wir mit der beispielhaften Analyse:

Um mir also einen Überblick über das Image oder einen Datenträger zu verschaffen nutze ich das Kommando “mmls” von TSK. “mmls” zeigt euch eine übersichtliche Statistik des Volumen bzw. stellt den Master Boot Record des Datenträgers übersichtlich dar (siehe Bild 1).

Der Befehl dazu ist folgendermaßen:

mmls <Pfad zum Image>
Bild 1: mmls – Master Boot Record von dell.img

Die Partitionstabelle zeigt drei Partitionen unter 002 = Dell Utilities FAT, 004 = NTFS und 005 = NTFS. Von diesen zeigt es den Start- und Endsektor sowie die Länge. Für uns Forensiker sind natürlich die unallozierten Bereiche sehr wertvoll, da dort noch Daten von früheren Nutzeraktionen enthalten könnten oder ein besonders affiner IT-Nerd dort auch Daten verstecken könnte.

Würde man die Partitionen einzeln in eine externe Datei ausgeben wollen müsste man beispielweise für die NTFS-Partition mit Index 005 folgenden Befehl eingeben:

mmcat -i raw -b 512 dell.img 005 > "D:\NTFS-Partition.raw"

### i = Imagetyp
### b = Blockgröße (siehe Bild 1)
### 005 = Index der Partition
### Ausgabe erfolgt in Datei "NTFS-Partition.raw" auf D:

Das Dateisystem von der NTFS-Partition am Index 5 wollte ich nun weiter untersuchen. Ihr könnte die folgenden Kommandos aber auch ähnlich an den anderen Dateisystemen betrachten. Hierzu habe ich den Befehl “fsstat” von TSK verwendet:

fsstat -i raw -b 512 -o 21180416 "Case1\dell.img"
###fsstat -i <Imagetyp> -b <Blockgröße> -o <Offset zur Partition> <Pfad zum Image>

Die meisten Infos hierfür bekommt man aus dem Ergebnis von “mmls” (Bild 1). Das Ergebnis könnt ihr in Bild 2 sehen.

Bild 2: fsstat – NTFS-Partition

In dem Ergebis könnt ihr erst einmal einige Infos zum Dateisystem sehen. Neben dem Typ gibt das Tool auch die Seriennummer des Volumen und das Betriebssystem aus. In der Sektion “METADATA INFORMATION” bekommen wir Infos wo die “Master File Table” startet, was für eine weitere Analyse natürlich nützlich werden kann. In “CONTENT INFORMATION” werden zudem auch die einzelnen Attribute und deren “Offsets”, Größe und Flags aufgezeigt. Kleine Nebeninfo: Interessant bei NTFS ist, dass das Flag “Resident / Non-Resident” anzeigt, ob das Attribut in der MFT selbst gespeichert ist oder die Daten ausgelagert wurden(=Non-Resident). Kleine Dateien bis ca. 700 kB sind in der MFT gespeichert und werden nicht ausgelagert.

Möchtet ihr nun die Inhalte der Partition betrachten, könnt ihr mit dem Kommando “fls” arbeiten. Ich habe dazu folgenden Befehl ausgeführt:

fls -i raw -b 512 -o 21180416 "Case\dell.img"
### fls -i <Imagetyp> -b <Blockgröße> -o <Offset zur Partition> <Pfad zum Image>

Das Ergebnis habe ich jetzt nicht separat in einem Bild hier aufgeführt. Die Ausgabe ist eigentlich selbsterklärend. Es werden dabei Verzeichnisse und Dateien aufgeführt. Außerdem können damit auch gelöschte Dateien angezeigt werden. Wollt ihr auch die Inhalte der Unterverzeichnisse sehen, gebt ihr die Option “-r” ein (rekursives Vorgehen). Ein Ausschnitt könnt ihr in Bild 3 sehen.

IT-Forensik mit TSK - fls-Kommando
Bild 3: Ausschnitt des rekursiven fls-Kommandos

In Bild 4 habe ich vom obigen fls-Kommando die letzte Datei (CIMG4064.JPG in Cluster 101527) ausgewählt und möchte mit dem Kommando “blkstat” erfahren, ob der jeweilige Block dieser Datei alloziert ist. Als Info wurde die Nummer des Clusters und der Status “allocated” ausgegeben. Aber wartet mal…auf Bild 4 ist vor der Datei ein “*” (Asterisk), was bedeutet, dass die Datei gelöscht wurde.

Bild 4: blkstat von Inode 101527

Um diesen Block also näher zu untersuchen habe ich in das Kommando “istat” von TSK und wie in Bild 5 die Nummer des Clusters (101527) mit angegeben. Dies führte natürlich zu einem falschen Ergebnis. Man muss also wirklich aufpassen, dass man die Infos nicht missinterpretiert. In dem Block wurde also schon eine neue Datei alloziert….

Trotzdem kann ich euch an Bild 5 die grundlegende Struktur einer Datei in NTFS erklären. In den farbigen Kästen habe ich die verschiedene Attribute von einer Datei markiert. Rot zeigt das Metadata-File $STANDARD_INFORMATION, welches insbesondere die Zeitstempel der Datei (also Metadaten beinhaltet). $FILE_NAME (grüne Kästen) ist standardmäßig zweimal vorhanden. Daran sieht man nun auch, dass der Dateiname “WPFT63~1.CNV” nicht mit dem in Bild 4 übereinstimmt. Im gelben Kasten könnt ihr das Metadata-File $DATA sehen, welches das Flag “Non-Resident” hat. Darunter sind viele Blöcke aufgeführt, die aufzeigen, wo die Daten der Datei liegen. Da die Datei zu groß für eine Speicherung in der MFT waren wurde sie ausgelagert.

The Sleuth Kit - istat - Forensik
Bild 5: Ausgabe von istat (The Sleuth Kit)

Das solls über “The Sleuth Kit” und Datenträgerforensik nun mal gewesen sein. Ihr konntet in der obigen Untersuchung nun sehr gut sehen, dass man sehr schnell Daten fehlinterpretieren kann. Also immer vorsichtig sein und die Ausgaben der Tools hinterfragen. Dies lässt sich vereinfacht mit anderen Tools machen. Beispielsweise könnt ihr das mit der Forensik-Suite “Autopsy” sehr gut, da ihr dort durch die Dateien, wie normal an einem Computer, navigieren könnt. Also viel Spaß mit The Sleuth Kit, Autopsy und der Analyse!

Bei Fragen könnt ihr euch gerne hier an mich wenden.