Forensische Analyse auf dem PC

Mit DEFT-Linux Hacker-Angriffe erkennen und analysieren

02.06.2015 von Thomas Drilling
DEFT Linux gehört für sicherheitsbewusste Admins zum Standard-Open-Source-Werkzeug, wenn es um forensische Analyse bei Hacker-Angriffen geht. Wir haben die aktuelle Version der Forensik-Distribution von DEFT unter die Lupe genommen.

In Zeiten, in denen Domains und Netzwerke großer Unternehmen und Institute fast ununterbrochen Angriffsversuchen durch Bot-Netze unterliegen, ist es für jeden verantwortungsbewussten Admin Pflicht, sein Netzwerk täglich auf Sicherheitsschwachstellen abzuklopfen, den ein- und ausgehenden Datenverkehr zu überwachen oder im Anschluss an einen erkannten Einbruchsversuch eine forensische Analyse durchzuführen. Letztere kommt auch dann zum Einsatz, wenn ein im Zusammenhang mit einer Straftat beschlagnahmter PC als Beweismittel dient und dazu forensisch analysiert werden muss. Selbstverständlich gehört auch das profane Wiederherstellen verloren gegangener oder versehentlich gelöschter Daten - sei es aus Unachtsamkeit oder als Folge eines Hardwaredefekts - in den Aufgabenbereich der Forensik.

Da nicht nur die Angriffswerkzeuge der Hacker, sondern auch die meisten Tools zum Überwachen und Analysieren von IP-Netzwerken oder zum Analysieren und Reparieren von Dateisystemen Open-Source-Software sind - oft handelt es sich sogar um die gleichen Werkzeuge -, basieren Sicherheitstest- und Reparaturlösungen häufig auf Linux wie zum Beispiel DEFT.

DEFT Linux
DEFT-Linux in der Praxis
DEFT gibt es derzeit als bootfähige DVD und als Ligth-Version DEFT Zero. Während DEFT Zero als Leichtgewicht konzipiert ist und als spezielle Startoption zum Beispiel auch direkt ins RAM booten kann.
DEFT-Linux in der Praxis
Das DEFT-Auswahlmenü.
DEFT-Linux in der Praxis
Die DVD-Variante offeriert auch eine Boot-Option zum direkten Installieren.
DEFT-Linux in der Praxis
Bei Deft 8.2 ist die Softwareausstattung im Menü DEFT naturgemäß umfangreicher, allerdings gibt hier viele thematische Überschneidungen zum Beispiel zu Kali Linux. So finden sich bei DEFT 8.2 in den Menüs OSINT und Network Forensics auch viele bekannte Penetrationstest-Tools wie Matego. Aber auch Kali Linux liefert zahlreiche Forensic-Tools mit. DEFT Zero dagegen beschränkt sich auf die wichtigsten Forerensic-Tools.
DEFT-Linux in der Praxis
DEFT mountet vorhandene Partitionen nie automatisch, sondern nur bei Bedarf, was etwa mithilfe des Dateimanagers erfolgen kann.
DEFT-Linux in der Praxis
Die DEFT-Linux-Sprachauswahl.
DEFT-Linux in der Praxis
Mit dem grafischen Mount-Manager gelingt das Einbinden von Windows-Partitionen auch wenig Linux-erfahren Nutzern sehr komfortabel.
DEFT-Linux in der Praxis
Grafische Tools wie Guymager erlauben in DEFT das komfortable, bitgenaue Kopieren von Datenträger, ein jeder forensischen Untersuchung vorausgehender Vorgang.
DEFT-Linux in der Praxis
Die Data-Recovery-Tools von DEFT.
DEFT-Linux in der Praxis
Den DEFT SQLite-Browser-starten.
DEFT-Linux in der Praxis
Das Durchforsten der Browser-Daten mit einem SQLite-Browser.

DEFT Zero und DEFT 8.2

Die mit Abstand populärste Linux-basierte Live-Distribution für forensische Analyse ist das aus Italien stammende DEFT-Linux. Die Abkürzung steht für "Digital Evidence & Forensics Toolkit" und ist aktuell in der Version 8.2 erhältlich. Darüber hinaus gibt es einen Release Candidate der DEFT-Light-Variante DEFT Zero. DEFT ist eine bootfähige Live-CD- (DEFT Zero), beziehungsweise DVD und als ISO-Datei für 64-Bit-Intel/AMD-Architekturen zum Download verfügbar. DEFT basiert auf einem 64-Bit-Ubuntu-System - DEFT Zero beispielsweise auf Lubuntu 14.04.02 LTS. DEFT Zero ist für einen minimalistischen Ressourcenbedarf konzipiert, kommt mit 400 MByte Arbeitsspeicher aus und kann sogar komplett ins RAM booten. DEFT Zero soll künftig parallel zur Fullsize-Versionen entwickelt werden. DEFT 8.2 und insbesondere DEFT Zero laufen mit aktuellster Hardware und funktionieren mit 32- und 64-Bit-Plattformen, einschließlich UEFI mit Secure Boot, also auch auf Macbooks und Windows-8-Systemen.

Die Einsatzmöglichkeiten von DEFT

DEFT richtet sich gezielt an Nutzer, die einen Rechner oder speziell dessen Festplatten, vorzugsweise mit einer oder mehreren Windows-Partitionen, forensisch analysieren möchten. Bei der forensischen Analyse geht es darum, so viele der auf der Festplatte gespeicherten persönlichen Informationen des Nutzers oder gelöschte Daten wie möglich ans Tageslicht zu befördern. So lassen sich beispielsweise aus einer Analyse des Surfverhaltens, den zuletzt geöffneten Apps oder Dokumenten oder dem Rekonstruieren gelöschter Dateien Rückschlüsse auf die "Vorlieben" des Anwenders ziehen. Ferner dient die Forensik dem Sichern der Beweislage. Mit ihr lassen sich etwa Fragen beantworten wie: Hat der Nutzer illegales Material heruntergeladen oder seinen Rechner für kriminelle Aktivitäten wie Cyber-Angriffe verwendet?

Deft starten

Um aussagekräftige Daten zu gewinnen, sollte man Deft-Linux von einem USB-Stick, von CD (Deft Zero) oder DVD auf dem eigenen physischen Rechner starten statt in einer virtuellen Umgebung, es sei denn, man betreibt Windows ohnehin auf Basis einer VM. Als Systemsprache lässt sich beim Booten (via F2) zwar nur Italienisch, Spanisch oder Englisch einstellen, man kann (und sollte) aber mit F3 auf eine deutsche Tastaturbelegung umstellen. Mit F6 sind weitere Optionen zugänglich, etwa dass das System nur freie Software anbietet. Speziell Deft Zero kennt drei Boot-Modi, "DEFT-Zero Linux Live (GUI mode im RAM preload)", "DEFT-Zero Linux Live (GUI mode)" und "DEFT-Zero Linux Live (Text mode). Bei der DVD-Version gibt es außerdem die Option, DEFT direkt von der DVD auf Festplatte zu installieren.

DEFT gibt es derzeit als boot-fähige DVD und als Ligth-Version DEFT Zero, während DEFT Zero als Leichtgewicht konzipiert ist und als spezielle Startoption zum Beispiel auch direkt ins RAM booten kann.

DEFT bootet dann mit einem aufgeräumten und leichtgewichtigen Lubuntu-Desktop (LXDE). Die Bildschirmauflösung lässt sich im Menü "d / Preferences / Monitor Settings" ("d" steht hier für das Startmenü) an die eigenen Wünsche anpassen. Wer das Tastaturlayout noch nicht beim Booten eingestellt hat, kann das jetzt unter "d / Preferences > Lxkeymap" nachholen. Alle Tools, die speziell der forensischen Analyse dienen, finden sich im Menü "d /DEFT", bei der umfangreicheren DVD-Version gruppiert in zahlreiche Untermenüs.

Kleiner Schönheitsfehler: Das Desktop-Hintergrundbild bei DEFT 8.2 liegt nur in einer Version 800x600 vor, weshalb das Vergrößern der Standardauflösung mit "d / Preferences / Monitor Settings" optisch nicht ideal ist. Bei DEFT Zero besteht das Problem nicht.

Bei DEFT 8.2 ist die Softwareausstattung im Menü DEFT naturgemäß umfangreicher, allerdings gibt es hier viele thematische Überschneidungen zum Beispiel zu Kali Linux. So finden sich bei DEFT 8.2 in den Menüs OSINT und Network Forensics auch viele bekannte Penetrationstest-Tools wie Matego. Aber auch Kali Linux liefert zahlreiche Forensic-Tools; mit. DEFT Zero dagegen beschränkt sich auf die wichtigsten Forerensic-Tools.

Während sich das DEFT-Menü bei DEFT Zero auf die wichtigsten Forensic-Tools beschränkt und auch LXDE bei DEFT Zero nur das Nötigste mitbringt, punktet DEFT 8.2 mit einer prallen Softwareausstattung. So bietet DEFT neben den Forensikwerkzeugen unter "Hashing" und "Imaging" auch viele Tools und Funktionen aus dem Bereich Penetrationstests, wie zum Beispiel Passwort-Cracker, Antimalware, Mobil Forensics oder Data Recovery. Darüber hinaus bringt DEFT auch als gewöhnliche Linux-Distribution deutlich mehr Werkzeuge mit als DEFT-Zero, darunter LibreOffice, Wine und eine Reihe von Multimedia-Tools, sowie Programmier-Tools. Man könnte also DEFT durchaus auch als Alltags-Distribution nutzen, zumal das Paketmanagement auf Debin/Ubuntu basiert. Sogar der Paketmanager Synaptic und der Gdebi Package Installer sind vorinstalliert.

Windows-Partitionen mounten

Um Datenverluste durch die Nutzung von Forensik-Tools muss sich der Anwender im Umgang mit DEFT - einen gewissen Sachverstand vorausgesetzt - keine Sorgen machen, denn DEFT hängt zum Beispiel per Default keine der von der Hardwareerkennung identifizierten Partitionen automatisch ein. Wer außerdem darauf achtet, keine temporären Daten auf den zu untersuchenden Datenträgern zu speichern, kann daher nichts falsch machen.

Eine Benutzeranmeldung ist bei der Live-CD/DVD nicht notwendig, was schlichtweg bedeutet, dass der Nutzer nach dem Booten automatisch "root" und auch in der Lage ist, die Partitionen des zu untersuchenden Systems einzubinden. Zum Einhängen der zu analysierenden Windows-Partitionen stellt DEFT Linux-unerfahrenen Nutzern wahlweise das grafische "Tool MountManager" (nur in der DVD-Version) oder den grafischen Dateimanager "PCManFM", wahlweise über das Panel, das Desktop-Icon oder im Menü unter "d / Accessories" zur Verfügung. PCManFM führt alle durch die Hardwareerkennung identifizierten Laufwerke (zum Beispiel 100 GByte Volume) links bei "Places" auf. Zum Einhängen der gewünschten Partition genügt ein Rechtsklick darauf, und der Nutzer kann das Laufwerk wahlweise mit "Mount Volume" oder "Mount in protected mode (read only)" einhängen. Letzteres gewährleistet, dass DEFT unter keinen Umständen Daten an den bestehenden Volumes verändert.

DEFT mountet vorhandene Partitionen nie automatisch, sondern nur bei Bedarf, was etwa mithilfe des Dateimanagers erfolgen kann.

Der Dateimanager mountet Laufwerke per Default nach "/media/root/<Dev-ID>". Erfahrene Linux-Anwender können die betreffenden Partitionen auch manuell mounten. Praktischerweise hat DEFT dazu passende Mount-Punkte c, d, e, raw1, raw2, raw3 und smb im Linux-Datesystem unter /mnt vorbereitet, die sich zum Einhängen der betreffenden Windows-Partitionen besser eignen als ein temporäres Verzeichnis mit der Dev-UID, um nicht die Orientierung zu verlieren und nachher die falsche Partition zu bearbeiten.

Mount Manager und GParted

Beim nur in der DEFT-Fullsize-Version in DEFT 8.2 enthaltenen MountManager (zu finden unter "d / DEFT") kann der Nutzer die zu verwendenden Mountpunkte bequem in einer grafischen Oberfläche zuweisen und dazu ebenfalls die vorbereiteten Mountpoints unter /mnt benutzen. Leider fehlt MountManager in DEFT Zero.

Mit dem grafischen Mount-Manager gelingt das Einbinden von Windows-Partitionen auch wenig Linux-erfahrenen Nutzern ganz leicht.

Selbstverständlich stellt DEFT im Menü "d / System Tools" mit Gparted auch ein grafisches Partitionierwerkzeug zur Verfügung, das wahlweise im Menü "d / DEFT /Gparted" oder über ein Symbol im Panel erreichbar ist. GParted warnt beim Start, dass durch die Verwendung möglicherweise Daten auf den Datenträgern verändern werden könnten. Hat man das bestätigt, was übrigens nicht unbedingt im Sinne des Forensikers ist, identifiziert Gparted die Partitionsliste und aktualisiert sie dynamisch.

Guymager und dd

In der Forensik ist es allerdings üblich, nicht mit originalen Datenträgern (auch nicht readonly) zu arbeiten, sondern von diesen zunächst eine bit-genaue Kopie auf ein Imagefile herzustellen. "Bit-genau" heißt in diesem Zusammenhang, dass der Datenträger Bit-für-Bit beziehungsweise Byte-für-Byte ausgelesen und beschrieben wird, unabhängig vom Inhalt oder Dateisystem. Unter Linux kann dazu beispielsweise das Tool "dd" (dump device) verwendet werden.

DEFT erleichtert Forensikern auch diesen Vorgang mithilfe eines grafischen Tools namens Guymager, ebenfalls über das Panel, das Desktop-Icon oder Menü "d / DEFT / Imaging" erreichbar. Hier finden sich aber auch eine ganze Reihe weiterer Imaging-Tools für die Kommandozeile, darunter das auch von Guymager verwendete "dd". Bei diesem Tool markiert man die betreffende Partition und wählt im Kontextmenü den Eintrag "Aquiere Image", mit der Optionsschaltfläche bei "File format" das gewünschte Image-Format (zum Beispiel "Linux/dd" oder "Guymager") und schließlich bei "Destination" mit einem Klick auf "Image directory" das gewünschte Zielverzeichnis. Dies darf nicht auf der zu untersuchenden Partition liegen.

Grafische Tools wie Guymager erlauben in DEFT das komfortable, bit-genaue Kopieren von Datenträger - ein Vorgang, der jeder forensischen Untersuchung vorausgeht.

Empfehlenswert ist ein externer Datenträger (USB) oder ein Netzwerklaufwerk. Hierzu wählt man in Dateimanager den Menüeintrag "Go / Connect to Server" oder "Go / Network" beziehungsweise "Go / Go to location". Für die Nutzung der Funktion mit PCManFM ist allerdings das gvfs-Backend erforderlich. Das Paket ist unter DEFT vorinstalliert und erlaubt zum Beispiel das Adressieren einer Windows-Freigabe via "sbm:\\<Server>\<Freigabe>". Im ersten Fall lässt sich mithilfe eines grafischen Dialoges eine Serververbindung via WebDAV, SSH oder FTP einrichten. Im zweiten Fall gibt man den Pfad zum Beispiel zu einer SMB-/CIFS-Freigabe an. Ist das Image erstellt, ist DEFT einsatzbereit, und der Fahnder kann auf Spurensuche gehen.

The Sleuth Kit

DEFT ist in erster Linie für forensische Analysen konzipiert und liefert dazu die CLI-Tool-Sammlung The Sleuth Kit mit. Mit den Sleuth Kit-Tools lassen sich unterschiedlichste Informationen über PC-Systeme zusammenstellen oder im Rahmen einer manuellen forensischen Analyse Speicherabbilder erstellen. Ferner können einzelne Analyseschritte mit Skripten automatisiert werden, was die Analyse im Bedarfsfall beschleunigt. Auch die grafische Benutzeroberfläche "Autopsy Forensic Browser" greift auf die Skripting-Funktionen zurück. Sleuth Kit unterstützt die Dateisysteme NTFS, FAT, Ext2, Ext3, UFS 1, UFS 2, HFS und ISO 9660. Die Tool-Sammlung gliedert sich in Tools zur Analyse von Dateisystemen, Dateisystem-Journalen, Dateinamen, Metadaten und Dateneinheiten.

So findet beispielsweise "ffstat" Details des zu analysierenden Dateisystems. Mit "ffind" untersucht der Forensiker Dateistrukturen und kann allozierte und un-allozierte Dateinamen, die auf Metadaten-Strukturen verweisen, identifizieren, während "fls" allozierte und gelöschte Dateinamen im angegebenen Verzeichnis anzeigt. Tools zur Analyse der Metadaten-Ebene sind am vorangestellten "i" zu erkennen. So listet etwa "ils" die Metadaten-Strukturen und den zugehörigen Inhalt auf. "Icat" dagegen extrahiert Dateneinheiten einer Datei anhand ihrer Metadaten-Adressen, während "ifind" zu einem gegebenen Dateinamen die passenden Metadaten findet, ebenso wie die Metadaten, die auf eine bestimmte Dateneinheit verweisen. Statistiken und Details zu einer gegebenen Metadaten-Struktur lassen sich mit "istat" ermitteln. Eine Beschreibung aller Sleuth-Kit-Tools findet sich auf der Projektseite.

Gelöschte Dateien auffinden

Zu einer forensischen Analyse gehört auch das Auffinden gelöschter Dateien. Entsprechende Tools wie Photorec, in DEFT 8.2 im Menü "d / DEFT / Data Recovery" zu finden, basieren faktisch alle auf der Tatsache, dass Dateisysteme beim Löschen einer Datei aus Geschwindigkeitsgründen darauf verzichten, den von der Datei belegten Speicherbereich tatsächlich mit Nullen oder zufälligen Werten zu überschreiben.

Die Data-Recovery-Tools von DEFT.

Stattdessen wird nur der zugehörige Verweis in der Dateibelegungstabelle oder iNode-Liste (bei unixoiden Dateisystemen) entfernt. Daher ist der noch ungenutzte Speicherbereich jeder Festplatte eine wahre Fundgrube für Forensiker. Das Open-Source-Tool "Photorec" (Photo Recovery) wirkt zwar aufgrund der einfachen ncurses-basierten Benutzerführung auf dem ersten Blick ein wenig altbacken, ist aber hinsichtlich der unterstützten Formate hoch aktuell und sehr leistungsfähig, weil es nach dem Carving-Prinzip arbeitet. Hierbei durchforstet eine Carving-Engine ohne Kenntnis und ohne Zuhilfenahme des Dateisystems den Rohdatenstrom nach Signaturen bekannter Dateiformate und kann daher auch auf beschädigten und formatierten Datenträgern noch fündig werden.

Photorec greift dazu auf Erkennungsmuster von über 180 Dateiformaten zurück und unterstützt schon lange nicht mehr ausschließlich Bildformate. Photorec wurde nämlich ursprünglich für Digitalkameras entwickelt. Photorec erzeugt einen Ordner auf einer vom Anwender angegebenen Partition, die tunlichst nicht identisch mit der analysierten Partition sein sollte, weshalb sich auch hier die Zusammenarbeit mit einem Imaging-Tool empfiehlt, schon um nicht noch weiteren Schaden anzurichten. Im Zielordner sammeln sich dann die Fundstücke in Form hunderter bis tausender nummerierter Unterordner mit den rekonstruierten Dateien.

Die ursprüngliche Verzeichnisstruktur sowie die ursprünglichen Dateinamen gehen dabei zwar verloren, weil Photorec das vorhandene Dateisystem ignoriert und daher nicht auf den Index des Datenträgers zugreifen kann, dies ist aber das kleinere Übel, wenn man auf diesem Weg an versehentlich gelöschte beziehungsweise durch Beschädigung verloren gegangene sensible Daten gelangt oder der Forensiker einem "Übeltäter" den "Besitz" belastenden Materials nachweisen kann.

Browser-Daten untersuchen

In der Forensik geht es auch um das Erstellen eines "Nutzerprofils". Dabei ist es oft noch nicht einmal nötig, bereits gelöschte Dateien auszugraben. Viele Informationen lassen sich auch aus einer Analyse des Surfverhaltens gewinnen, wobei die gängigen Browser in der Regel recht bereitwillig mithelfen.

So kann sich der Forensiker anhand einer einfachen Browser-Verlaufs-Analyse schnell einen Überblick verschaffen, wo die verborgenen oder offensichtlichen Interessen des Benutzers liegen. Aktuelle Browser wie Chrome oder Firefox machen es dem Forensiker dabei recht einfach. Wichtige Anlaufstellen sind der Browserverlauf, Lesezeichen oder heruntergeladene Dateien.

Firefox etwa speichert diese Informationen in einer SQLite-Datenbank unter "c:\Users\%benutzername%\AppData\Roaming\Mozilla\Firefox\Profiles\%profilname%\", die sich mithilfe eines SQLite-Browsers sehr einfach auslesen lässt. Um hierbei selbst keine Spuren der Analyse zu hinterlassen, empfiehlt es sich, die Datei "places.sqlite" zuvor auf ein spezielles Analysemedium zu kopieren. Der passende SQLite Database Browser findet sich bei DEFT 8.2 im DEFT-Menü "d / DEFT / Analysis". Am Originalort lässt sich die Datei ohnehin nicht öffnen, wenn das Dateisystem readonly eingebunden ist. Der Inhalt der History steht zum Beispiel in der Tabelle "moz_places". Hierzu markiert man Erstere im Reiter "Database Structure" und wechselt dann rechts davon zum Reiter "Browse Data".

Browser-Daten mit einem SQLite-Browser durchforsten.

Mithilfe des bei DEFT mitgelieferten SQLite-Browsers lassen sich die meisten Verlaufsdaten einer Firefox- oder Chrome-Session auf einfache Weise sichtbar machen. Wer über SQL-Kenntnisse verfügt, kann zudem durch Verknüpfen von Abfragen mehrerer Tabellen erstaunliche Erkenntnisse gewinnen.

Auch Google Chrome speichert seine Verlaufsdaten in einer SQLite-Datenbank unter "c:\Users\%benutzername%\AppData\Local\ Google\Chrome\User Data\Default\". Hier muss man nur nach einer Datei vom Dateityp "SQLite3 database" suchen. Die Erweiterung ist nicht Teil des Dateinamens. Die Datenbank ist ein wenig anders strukturiert als die von Firefox: Man findet zum Beispiel die vom jeweiligen Anwender via Chrome heruntergeladenen Downloads in der gleichnamigen Tabelle "Downloads".

E-Mail-Daten aufspüren

DEFT bietet noch viele weitere Ansatzpunkte zur Analyse. Die zugehörigen Tools finden sich allesamt im Menü "d / DEFT / Analysis". So lassen sich etwa mit dem Tool "Readpst" die Inhalte der pst-Dateien von Outlook - per Default zu finden unter "/…./<Anwendungsdaten>/Local/Microsoft/Outlook/Outlook.pst" - konvertieren und lesbar machen, wie etwa E-Mails, Adressen oder Termine. Die Daten speichert DEFT in einer Verzeichnisstruktur unterhalb der aktuellen Position im Dateisystem.

Zum effizienten Durchsuchen der Daten liefert DEFT auch gleich die passenden Tools mit, wie etwa die Volltextsuchmachine "d / DEFT / Analysis / Recoll". Noch einfacher gelingt die Analyse des E-Mail-Verkehrs, wenn der Nutzer Thunderbird verwendet, der E-Mails in Form einer einfach durchsuchbaren SQ-Lite-Datenbank im zugehörigen Profilordner speichert.

Zuletzt verwendete Dokumente und Programme

Eine weitere Quelle forensischer Erkenntnisse ist die Analyse der vom Nutzer zuletzt verwendeten Dokumente. Diese "Jumplist" wird von Windows seit einiger Zeit nicht mehr global, sondern je Anwendung verwaltet. Ebenfalls nützliche Erkenntnisse verspricht eine Analyse, welche Programme der Nutzer zuletzt verwendet hat. Diese lassen sich ermitteln, indem man nach den Prefetch-Dateien sucht, die Windows bei jedem gestarteten Programm im Prefetch-Ordner anlegt. Welches Programm zuletzt gestartet wurde, verrät das Datum der betreffenden Prefetch-Datei.

Fazit

Dieser kleine Einstieg zeigt die Fähigkeiten von DEFT nur oberflächlich. Wer sich anhand der guten Dokumentation näher mit DEFT befasst, wird noch auf zahlreiche weitere Möglichkeiten stoßen. (hal)