Open Source im professionellen Einsatz

© Thomas Detert, Fotolia.com

Linux-Tools beschleunigen das Handling von Festplattenabbildern

Werkzeuge fürs Image

Wer wie Forensiker mit Images von ganzen Platten auf seinem Rechner hantiert, schätzt Formate, die die Datenmenge reduzieren, und Werkzeuge, die die Verarbeitung beschleunigen.

Raw Images sind der Standard in der forensischen Analyse, universell und von allen Tools unterstützt. In Zeiten von Terabyte-Festplatten erweist sich ihr Platzhunger jedoch als großer Nachteil. Da sorgen komprimierende Imageformate für Abhilfe, und für die zeitaufwändige Verarbeitung der großen Abbilder gibt es kleine Linux-Tools, die die Arbeit erleichtern.

Oft ist es dabei mit einem Image nicht getan: Forensiker brauchen pro sichergestelltem Rechner mindestens zwei für die Auswertung. Sie müssen die Systeme sowohl innerhalb einer virtuellen Maschine als auch in Spezialsoftware wie X-Ways Forensics (Abbildung 1) oder Encase unter die Lupe nehmen [1].

Abbildung 1: Proprietäres Standardtool für Forensiker: X-Ways Forensics gibt's nur für Windows. Open-Source-Tools steht es im Funktionsumfang nicht nach, aber Forensiker schätzen die größeren Möglichkeiten von Linux.

Abbildung 1: Proprietäres Standardtool für Forensiker: X-Ways Forensics gibt's nur für Windows. Open-Source-Tools steht es im Funktionsumfang nicht nach, aber Forensiker schätzen die größeren Möglichkeiten von Linux.

Diese Auswertungsprogramme nutzen typischerweise das EWF-Format, das sich mit Werkzeugen aus dem Libewf-Paket [2] wie »ewfacquirestream« erstellen und bearbeiten lässt. Für den Einsatz in einer Virtualisierung dagegen bietet sich KVM (Qemu) an, das mit Qcow2 ein Imageformat mit Kompression und vielen anderen interessanten Features mitbringt [3].

Dcfldd und Mdcp

Ausgangspunkt dafür sind Raw Images, wie sie »dd« erstellt. Besser ist es aber, »dcfldd« ([4], [5]) zu verwenden, weil es vor allem gegenüber DD einige sehr interessante Zusatzfunktionen beherrscht, zum Beispiel das parallele Berechnen einer Hashsumme, detaillierte Statusausgaben (inklusive der Menge der bereits eingelesenen Daten) oder das Aufteilen des Image in mehrere Dateien.

Wer zwei oder mehr Images braucht, muss normalerweise doppelten Zeitaufwand einkalkulieren. Ungeduldige greifen daher auf das kleine Tool Mdcp (Multi Device Copy, [6]) zurück. Das Programm liest Daten einmal aus einer Quelle ein und reicht sie sofort an mehrere Ziele weiter. Vor allem zusammen mit Linux-Fifos ergeben sich so angenehme Möglichkeiten, Zeit und Platz zu sparen. Seine Syntax lautet:

mdcp Blockgröße Anzahl_der_zu_kopierenden_Blöcke Quelle Ziel_1 Ziel_n  

Blockgröße 0 bedeutet, dass Mdcp den Standardwert von 32768 verwendet, der Wert 0 für die Anzahl der zu kopierenden Blöcke sorgt dafür, dass es die Quelle bis zum Datei-Ende einliest.

Benannte Röhren

Über Named Pipes übergibt der Admin die Imagedaten direkt an Dcfldd und Ewfacquirestream. Für das Beispiel sind zwei Fifos erforderlich, die »mkfifo ewffifo« und »mkfifo rawfifo« anlegen. Das Erzeugen der Images erledigt der Admin an drei Konsolen. Auf der ersten erstellt folgender Befehl das EWF-Image:

ewfacquirestream -c fast -t EWF_Image < ewffifo 

So entsteht ein komprimiertes Image in der Datei »EWF_Image«. Über weitere Parameter lassen sich zusätzliche Einstellungen vornehmen, etwa Größe der einzelnen Segmente, Name des Ermittlers, Notizen zur Sicherung. Analog dazu landet auf der zweiten Konsole der Befehl zum Erzeugen eines Raw Image:

dcfldd if=rawfifo of=Festplatte.raw

Die dritte Konsole dient Mdcp, das eine existierende - zum Beispiel sichergestellte - Festplatte ausliest und an beide Pipes übergibt:

mdcp 0 0 /dev/sdb ewffifo rawfifo

Wichtig an diesen drei Schritten ist, dass der Admin die Befehle auf Konsole 1 und 2 vor dem Mdcp-Befehl (auf Konsole 3)abgesetzt hat. Nach getaner Arbeit zeigt Mdcp eine Ausgabe wie die folgende an:

Done.
Bytes readed :  1024966656
Bytes written : 1024966656 @ ewffifo
                1024966656 @ rawfifo
                2049933312 TOTAL
Time elapsed :  89.8659secs
Equivalent transfer rate : 22811034b/s

Innerhalb von knapp 90 Sekunden hat Mdcp den 1-GByte-Stick ausgelesen und an die beiden Pipes übergeben, woraus »ewfacquirestream« und »dcfldd« Abbilder gebaut haben. Jetzt kann Qemu-img das Raw Image »Festplatte.raw« mit dem folgenden Befehl in ein Qcow2-Abbild umwandeln:

qemu-img convert Festplatte.raw -O qcow2 UFestplatte.img

Ein großer Vorteil von Raw Images ist das vergleichsweise einfache Mounten als virtuelle Festplatten im System. Das ist auch mit den komprimierten Qemu-Images möglich, aber über den Umweg der Linux Network Block Devices [7].

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook