Mit <kes>+ lesen

Forensische Analysen mit Autopsy (1) : Überblick über Tool und Module

Im Nachgang zu seinem Überblicksbeitrag [1] zu Prozessen und Open-Source-Tools für Incident-Response und Forensik behandelt unser Autor in einer Reihe von Workshop-Beiträgen den konkreten Einsatz entsprechender Softwarewerkzeuge. Als zweites Tool der Reihe wird das grafische Frontend Autopsy vorgestellt.

Jochen Schlichting
Lesezeit 19 Min.

Autopsy ist eine grafische Oberfläche für The Sleuth Kit sowie weitere forensische Softwaretools (https://github.com/sleuthkit/autopsy/ – siehe auch [1]). Autopsy organisiert Daten fallbezogen: Jeder darin angelegte Fall kann eine oder mehrere Datenquellen besitzen (DiskImage, virtuelle Disk, Hauptspeicherabbild, Verzeichnis mit logischen Dateien, eine direkt angeschlossene Festplatte, USB-Sticks usw.).

Die Fälle selbst können sowohl vom Typ eines Einzel- als auch Mehrbenutzerfalls sein. Ein Mehrbenutzerfall ermöglicht es mehreren Analysten, die Daten gleichzeitig parallel zu überprüfen und zusammenzuarbeiten – aber Achtung: Das ist nur dann möglich, wenn Autopsy vor Beginn der Fallerstellung mit Mehrbenutzereinstellungen sowie PostgreSQL, Apache Solr und Apache ActiveMQ konfiguriert wurde.

Zu beachten ist auch, dass immer nur ein Fall geöffnet sein kann und Berichte prinzipiell auf der FallEbene generiert werden. Außerdem kann sich die Anwendung deutlich verlangsamen, wenn es viele große Datenquellen im gleichen Fall gibt.

Abbildung 1 Hauptfenster von Autopsy
Abbildung 1 Hauptfenster von Autopsy

Fälle und Datenquellen

Zum Anlegen eines Falles dient die Option „New Case“ auf dem Begrüßungsbildschirm (oder im Menü „Case“) – ein Klick startet einen Assistenten für neue Fälle. Es ist ein eindeutiger Name und ein Verzeichnis zu spezifizieren, in dem die Fallergebnisse gespeichert werden. Sollte sich später herausstellen, dass das Zielverzeichnis zu klein für den Fall ist, kann man den ganzen Fall an einen anderen Ort mit mehr Speicherplatz umkopieren. Optional können Fallnummern und Namen von Analysten angegeben werden.

Der nächste Schritt besteht darin, eine oder mehrere Datenquellen (Data Source) hinzuzufügen. Der Assistent zum Hinzufügen von Datenquellen startet automatisch, nachdem man einen Fall erstellt hat – manuell kann man ihn über das Menü „Case“ oder die Symbolleiste starten. Anschließend gibt man den Typ der hinzuzufügenden Datenquelle (Disk-Image, lokale Festplatte oder logische Dateien und Ordner, Hauptspeicher) sowie den dazugehörigen Quellpfad an.

Bei einem Disk-Image genügt es, zur ersten Datei im Set zu navigieren – den Rest findet das Tool allein. Autopsy unterstützt derzeit die Formate von Encase (.E01), RAW-Disk-Dumps (dd) und virtuelle Maschinen (*.vmdk, *.vhd).

Mit der Option „Local Disk“ lässt sich eine der erkannten Festplatten auswählen: Autopsy fügt dem Fall dann die aktuelle Ansicht der Festplatte hinzu (z. B. Momentaufnahme der Metadaten) – Inhalte einzelner Dateien (nicht die Metadaten) werden jedoch mit Änderungen auf der Festplatte fortlaufend in einer LiveForensik aktualisiert. Optional lässt sich eine Kopie aller von der lokalen Festplatte gelesenen Daten in Form einer VHD-Datei erzeugen, was für Triage-Situationen überaus nützlich sein kann, da dies einen virtuellen Snapshot des Erstellungszeitpunkts darstellt. Dabei ist zu beachten, dass Autopsy möglicherweise im administrativen Kontext auszuführen ist, um alle angeschlossenen Festplatten zu erkennen. Bei „logischen Dateien“ verwendet man die Schaltfläche „Hinzufügen“, um eine oder mehrere Dateien oder Ordner oder ein Encase-L01-Archiv (Local Evidence) zum Fall hinzuzufügen – Ordner werden gegebenenfalls rekursiv erfasst. Zusätzlich besteht auch die Möglichkeit, Ergebnisse des Autopsy Local Imagers oder ein Volatility-Hauptspeicherabbild zu laden (vgl. [2,3]). Gleich nachdem die zu analysierenden Daten in Autopsy geladen wurden, beginnt das Tool die Datenquellen zu überprüfen und der Falldatenbank minimale Metadaten hinzuzufügen, um Analyseschritte priorisieren zu können. Währenddessen kann man die gewünschten Analysemodule konfigurieren.

 

Abbildung 2 Auswahl und Erstkonfiguration von Ingest-Modulen
Abbildung 2 Auswahl und Erstkonfiguration von Ingest-Modulen

Ingest Modules

Für die Analyse der Inhalte von Datenquellen sind IngestModule verantwortlich, die parallel im Hintergrund ausgeführt werden. Standardmäßig laufen zwei sogenannte Pipelines – je nachdem, wie viele Prozessorkerne und welche Hauptspeicherausstattung die Analysemaschine besitzt, kann man aber weitere hinzufügen.

Über das Auswahlfeld für die Ingest-Module kann man modulspezifisch Dateifilter („File Filter Settings“) definieren, um Module gegebenenfalls nur auf einer Teilmenge der Dateien auszuführen, was wiederum erheblichen Einfluss auf die Analysegeschwindigkeit hat. Jeder Filter enthält eine oder mehrere Regeln für die Auswahl von Dateien, die auf einer Kombination aus Dateiname, Pfad und Datum der letzten Änderung basieren. Damit eine Datei von einem Ingest-Modul durchlaufen wird, muss nur eine Regel passen. Zusätzlich kann man mehrere, per Komma getrennte Dateierweiterungen eingeben.

Ingest-Module analysieren Dateien in einer priorisierten Reihenfolge. Autopsy priorisiert dazu Benutzerinhalte gegenüber anderen Dateitypen und sendet beispielsweise Daten aus den Windows-Ordnern „Dokumente und Einstellungen“ oder „Benutzer“ vor dem SystemOrdner „Windows“ in die Pipelines.

Die standardmäßigen Ingest-Module, die in Autopsy zur Verfügung stehen, werden im Folgenden kurz erläutert. Darüber hinaus können auch Drittanbieter Ingest-Module entwickeln.

Das Modul Recent Activity extrahiert die Benutzeraktivitäten, die von Webbrowsern, installierten Programmen und dem Betriebssystem gespeichert werden. Es führt auch das in Autopsy integrierte Werkzeug Regripper für vorhandene Registry-Hives (Registrierungsdatenbank von Windows) aus. So lässt sich etwa erkennen, welche Aktivitäten in einer fraglichen Zeit (bspw. in den letzten 2 Monaten) der Nutzung stattgefunden haben, welche Websites besucht wurden, was die Maschine gemacht hat und womit sie verbunden war.

Hash Lookup berechnet MD5-Hash-Werte für Dateien und sucht korrespondierende Einträge in Hash-Sets, um bekannte Dateien aus der National Software Reference Library (NSRL) des US-amerikanischen NIST zu ignorieren und bekannte, verdächtige Dateien zu markieren. Man kann die Schaltfläche „Global Settings“ verwenden, um Hash-Sets hinzuzufügen und zu konfigurieren, die während dieses Vorgangs verwendet werden sollen. Der Analyst erhält Updates über jede verdächtige Datei, während die Erstaufnahme durchlaufen wird.

Hash-Sets können auch über das Menü „Tools/ Optionen/Hash-Sets“ in der Hauptbenutzeroberfläche hinzugefügt werden. Ein Index der NIST NSRL ist unter http://sourceforge.net/projects/autopsy/files/NSRL/ verfügbar – für bekannte Schadsoftware ist das Hash-Set von Virusshare empfehlenswert (https://sourceforge.net/ projects/mantarayforensics/files/VirusShare_Hash_Sets/Autopsy/). Darüber hinaus kann man eigene Hash-Sets mit dem Sleuthkit-Befehlhfind-iclient-known-good-md5.fl at-db erstellen, wenn man zuvor beispielsweise mit md5sum eine „Known-Good-Database“ von einem vertrauenswürdigen System erstellt hat.

Das Modul File Type Identification zur Identifizierung von Dateitypen bestimmt diese anhand interner Signaturen und berichtet darüber anhand des MIME-Typs. Es speichert seine Ergebnisse in einer Artefakt-spezifischen Ablage (sog. Blackboard), von der viele weitere IngestModule abhängen. Autopsy verwendet zur primären Datei-ID-Erkennung die Tika-Bibliothek (https://tika. apache.org/). Unter „Tools/Options/File Types“ kann man zusätzlich eigene, benutzerdefinierte Dateitypen definieren. Dieses Modul sollte man eigentlich immer aktivieren, da viele andere Module auf seinen Ergebnissen aufbauen, um zu entscheiden, ob sie eine Datei analysieren sollen oder nicht (bspw. Keywordsearch, Extension Mismatch Detector).

Embedded File Extraction öffnet .zip, .rar und diverse andere Archivformate sowie .doc, .docx, .ppt, .pptx, .xls und .xlsx und sendet aus diesen Dateien abgeleitete Files zur erneuten (rekursiven) Analyse durch andere Module zurück an die Ingest-Pipeline. Dieses Modul entpackt unverschlüsselte Archive und ermöglicht auch die Suche nach Schlüsselwörtern sowie Hash-Lookups, um Dateien innerhalb von Archiven zu analysieren. Bestimmte Medieninhalte, die in .doc, .docx, .ppt, .pptx, .xls und .xlsx eingebettet sind, werden jedoch möglicherweise nicht korrekt extrahiert. Wenn das Modul auf ein verschlüsseltes Archiv trifft, erzeugt es eine Warninformation im IngestLaufzeitfenster. Nach der Erstaufnahme kann man dann versuchen, diese Archive zu entschlüsseln, wenn man das Passwort kennt. Selektiert man das Archiv und wählt die Option „Inhalt mit Passwort entpacken“ kann man nach Eingabe des Passworts auswählen, welche Ingest-Module auf den neu extrahierten Dateien ausgeführt werden sollen.

Das Modul EXIF Parser extrahiert Informationen im Exchangeable Image File Format aus JPEG-Dateien und stellt seine Ergebnisse in der hierarchischen Anzeige der Autopsy-Benutzeroberfläche bereit. Solche Informationen können Geolokalisierungsdaten für ein Bild, Uhrzeit/ Datum, Kameramodell sowie die Einstellungen (Belichtungswerte, Auflösung usw.) und weitere Daten umfassen – gefundene Attribute werden dem Artefakte-Blackboard hinzugefügt.

Keyword Search verwendet Begriffe oder Listen von Schlüsselbegriffen, um Dateien mit bestimmten Wörtern zu identifizieren. Man kann spezifische KeywordListen (IP, Phone, E-Mail, URL, Credit Card Numers) auswählen, nach denen automatisch gesucht werden soll – und über die Schaltfläche „Erweitert“ zusätzliche Listen erstellen oder bestehende exportieren. Listen, die man während der Erstaufnahme auswählt, werden in regelmäßigen Abständen durchsucht und man erhält die Ergebnisse in Echtzeit. Man muss zwar nicht warten, bis alle Dateien indiziert sind, bevor man eine Stichwortsuche durchführt, erhält dann aber nur Ergebnisse von Dateien, die bereits zu dem Zeitpunkt indiziert worden sind, zu dem man die Suche startet.

Die Suche geht dabei mehrstufig vor: Zuerst versucht die Indizierung, Text aus unterstützten Dateiformaten zu extrahieren – zum Beispiel aus reinen Textdateien, MS-Offi ce-Dokumenten, PDFs, E-Mails und vielen anderen. Wird eine Datei nicht vom StandardtextExtraktor unterstützt, greift Autopsy auf einen Zeichenketten-Extraktions-Algorithmus zurück. Dieser kann bei unbekannten (unverschlüsselten) Dateiformaten oder beliebigen Binärdateien (z. B. der Auslagerungsdatei) oder nicht-zugewiesenem Speicherplatz (teils mit Daten gelöschter Dateien) eine beträchtliche Menge an Text extrahieren – oft genug, um Analysten wichtige Hinweise zu geben. Die Extraktion von Strings wird unter anderem auch in Arabisch, Kyrillisch und Han unterstützt.

Eine Optical-Character-Recognition (OCR) für unterstützte Bildtypen rundet die Suche ab, ist allerdings standardmäßig nur für englischsprachigen Text konfiguriert. Mithilfe weiterer Sprachdateien (sog. „trainierte Daten“) kann man Autopsy jedoch auf bis zu 102 OCRSprachen erweitern, indem man passende .traineddataDateien aus dem Tesseract Open-Source-OCR-Projekt im Pfad „AppData\Roaming\autopsy\ocr_language_packs“ ablegt (Download von https://github.com/tesseract-ocr/tesseract/wiki/Data-Files).

Das Modul erleichtert sowohl den Ingest-Teil der Suche als auch die manuelle Textsuche nach Abschluss der Erstaufnahme. Es extrahiert Text aus analysierbaren Dateien, ausgewählten Berichten anderer Module sowie sonstigen Ergebnissen, die andere Module generiert haben. Extrahierter Text wird dann einem Solr-Index hinzugefügt (vgl. https://lucene.apache.org/solr/), den man anschließend schnell nach bestimmten Schlüsselwörtern, regulären Ausdrücken oder Stichwortsuchlisten durchsuchen kann, die eine Mischung aus Schlüsselwörtern und regulären Ausdrücken enthalten können.

Der Email Parser identifiziert Dateien im MBOX-, EML- und PST-Format auf der Grundlage von Dateisignaturen, extrahiert daraus E-Mails und fügt die Ergebnisse zum Artefakte-Blackboard hinzu. Dieses Modul überspringt bekannte Dateien und erstellt für jede Nachricht ein Blackboard-Artefakt – E-Mail-Anhänge werden als abgeleitete Dateien hinzugefügt.

Das Modul Extension Mismatch Detector verwendet die Ergebnisse der Dateityp-Identifikation und kennzeichnet Dateien, deren Erweiterung üblicherweise nicht mit dem erkannten Dateityp verknüpft ist – es ignoriert dabei „bekannte“ Dateien (NSRL). Dadurch kann man beispielsweise Dateien erkennen, die jemand zu tarnen oder zu verstecken versucht. Allerdings kann dieses Modul auch viele False Positives liefern. Unter „Tools/Options/ File Extension Mismatch“ lassen sich MIME-Typen und Dateierweiterungen anpassen und ergänzen.

Data Source Integrity berechnet eine Prüfsumme für Datenquellen, wenn der Datenquelle Hashes zugeordnet sind (entweder vom Analysten eingegeben oder in einer E01-Datei enthalten) und vergleicht diese, um sicherzustellen, dass sie übereinstimmen. Besitzt eine Datenquelle noch keine Hashes, berechnet sie das Modul und speichert sie in der Datenbank. So lässt sich die fortbestehende Integrität der Quelle prüfen. Schlägt eine Überprüfung fehl, erhält man in der Ingest-MessagesInbox eine Eingangsnachricht in Gelb und die gleiche Nachricht als Popup-Warnung – das Modul fügt zudem ein Artefakt „Verification Failed“ zum Fall hinzu.

Mit dem Android Analyzer kann man gängige Elemente von Android-Geräten analysieren – gefundene Artefakte platziert es auf dem Blackboard.

Der Interesting Files Identifier sucht hingegen basierend auf benutzerdefinierten Regeln, die in „Tools/ Options/Interesting Files“ zu erstellen sind, nach Dateien und Verzeichnissen. Es funktioniert als „File-AlertingModule“ und erzeugt Benachrichtigungen in der IngestMessages-Inbox, sofern passende Dateien gefunden werden, und markiert die entsprechend der Regeln. Eine Regel ist eine Reihe von Bedingungen, die alle auf eine Datei zutreffen müssen – beispielsweise „Dateigröße > 1 MB“ und „Dateiendung =.txt“.

Dateien und Verzeichnisse, die einem Regelwerk entsprechen, werden automatisch markiert. Das kann etwa nützlich sein, wenn man häufig überprüfen muss, ob eine Quelle Dateien mit einem bestimmten Namen oder Pfad enthält oder man immer wieder nach Dateien eines bestimmten Typs fahndet.

Das Modul PhotoRec Carver sucht Dateien aus nicht-allokiertem Speicherplatz heraus und sendet sie zur erneuten Bearbeitung durch die Ingest-Pipeline (sog. Carving). Dies kann einem Analysten helfen, mehr Informationen über Dateien zu finden, die sich früher auf einem System befanden und gelöscht, aber noch nicht überschrieben wurden – deren Daten also noch in als „leer“ markierten Bereichen der Datenquelle vorliegen. Dazu muss die Auswahl „Run ingest modules on“ auch die nicht-allokierten Speicherbereiche umfassen. Um benutzerdefinierte Dateisignaturen hinzuzufügen, erstellt man im Verzeichnis der Variablen %USERPROFILE% oder %HOMEPATH% eine Datei photorec.sig. Für die Suche nach gelöschten Videoprojekten von Adobe Premiere Pro benötigt man etwa die Signatur „prproj 0 0x3C3F786D6C2076657273696F6E 3D22312E302220656E636F64696E673D225554462D 38223F3E0A3C5072656D6965726544617461205665 7273696F6E3D22“.

Die Correlation Engine sammelt Dateihashes und andere extrahierte Eigenschaften von Artefakten in einem zentralen Repository, um Korrelationen zu ermöglichen und bereits früher aufgefallene Dateien zu vergleichen und zu markieren. Um das Maximum aus der Correlation-Engine herauszuholen, ist es zielführend, möglichst alle Ingest-Module auszuführen. Ohne „Hash Lookup“ wird das Korrelationsmodul beispielsweise überhaupt keine Dateien in die Datenbank einfügen.

Wenn das Correlation-Engine-Modul in einem bestimmten Fall nicht ausgeführt wird, aber dennoch ein zentrales Repository aktiviert ist, gibt es allerdings immer noch eine begrenzte Funktionalität: Der Content Viewer zeigt dann weiterhin übereinstimmende Eigenschaften aus anderen Fällen beziehungsweise Datenquellen an, in denen die Correlation-Engine ausgeführt wurde.

Es gibt drei wichtige Einstellungen für dieses Ingest-Modul:

  • Save items in central repository sollte nur in den seltenen Fällen deaktiviert werden, in denen man keine Eigenschaften aus der aktuellen Datenquelle zum zentralen Repository hinzufügen, aber dennoch frühere Ereignisse markieren möchte.
  • Flag items previously tagged as notable bewirkt, dass Artefakte für Elemente/Dateien erstellt werden, wenn das Tool Eigenschaften findet, die mit zuvor als „interessant“ markierten übereinstimmen.
  • Flag devices previously seen in other cases erstellt Artefakte mit interessanten Elementen, wenn eine gerätebezogene Eigenschaft (USB, MAC-Adresse, IMSI, IMEI, ICCID) gefunden wird, die sich bereits im zentralen Repository befindet – unabhängig davon, ob sie markiert wurde.

Wenn man eine Datei oder ein Artefakt mit einem „notable“ Tag versieht, wird die zugehörige Eigenschaft im zentralen Repository ebenfalls auf „notable“ geändert. Standardmäßig gibt es ein Tag namens „Notable Item“, das für diesen Zweck verwendet werden kann. Wenn dieses Modul aktiviert ist, verwendet jeder zukünftige Datenquellen-Ingest diese „notable“-Eigenschaften in ähnlicher Weise wie ein Known-BadHash-Set, sodass übereinstimmende Dateien und Artefakte der neuen Aufnahme der Liste interessanter Elemente im derzeit betrachteten Fall hinzugefügt werden.

Das Modul Encryption Detection sucht nach verschlüsselten Dateien – sowohl mit einer allgemeinen Entropieberechnung als auch mit speziellen Tests für bestimmte verschlüsselte Dateitypen. Jeder Treffer erzeugt einen Eintrag in der Ingest-Message-Inbox, der durch ein Warndreieck angezeigt wird. Die minimale erwartete Entropie für Verschlüsselung kann dabei höher oder niedriger eingestellt werden – je nachdem, wie viele falsche Treffer erzeugt werden. Es gibt auch eine Option, den Test nur auf Dateien auszuführen, deren Größe ein Vielfaches von 512 beträgt, was nützlich ist, um bestimmte Verschlüsselungsalgorithmen aufzuspüren.

Das Modul sucht nach den folgenden Arten von eingesetzter Verschlüsselung mit folgenden Kriterien:

  • jede Datei, deren Entropie gleich oder größer als der Schwellenwert in den Moduleinstellungen ist und die den Einschränkungen der Dateigröße entspricht
  • passwortgeschützte Officeund PDF-Dateien sowie AccessDatenbanken
  • BitLocker-Volumes
  • SQLCipher (verwendet die minimale Entropie aus den Moduleinstellungen
  • VeraCrypt (verwendet die minimale Entropie aus den Moduleinstellungen).

Das Modul Virtual Machine Extractor extrahiert Daten aus Dateien virtueller Maschinen. Es fügt dabei alle virtuellen Maschinen, die es in einer Datenquelle findet, dem Fall als neue Datenquellen hinzu – dazu gehören sowohl Festplattendateien für virtuelle Maschinen (.vmdk) als auch Dateien für virtuelle Festplatten (.vhd). Man beachte, dass jede virtuelle Festplatte auch in den Fallordner extrahiert wird.

Abbildung 3 Beispiel einer Zusammenfassung aller Datenquellen nach dem „Ingest“
Abbildung 3 Beispiel einer Zusammenfassung aller Datenquellen nach dem „Ingest“

Einfache Arbeiten mit Ingest-Modulen

Wenn man ein Modul selektiert, besteht die Möglichkeit, seine Einstellungen zu ändern (vgl. Abb. 2). So kann man beispielsweise konfigurieren, welche KeywordSuchlisten bei der Erstaufnahme und welche Hash-Sets verwendet werden sollen.

Zusätzlich besteht die Möglichkeit, verschiedene Ingest-Moule zu kombinieren und für wiederkehrende Untersuchungen in einem Ingest-Profil für ein spezifisches Untersuchungsszenario zu speichern. Hat man bereits ein oder mehrere Ingest-Profile gespeichert, erscheint beim Hinzufügen von Datenquellen eine Abfrage, ob man ein gespeichertes Profil verwenden oder ein benutzerdefiniertes Setup ausführen möchte. Jedes Profil kann für jedes Ingest-Modul unterschiedliche Einstellungen pro Durchgang festlegen und dabei entweder einen vordefinierten oder benutzerdefinierten Dateifilter verwenden.

Während die Ingest-Module im Hintergrund laufen, zeigt die Bedienoberfläche unten rechts einen Fortschrittsbalken der laufenden Aktivitäten. Ergänzend lässt sich über das Tool „Help/Ingest Progress Snapshot“ einsehen, welche Aktivitäten gerade ausgeführt werden, um in zeitkritischen Fällen die Analysedauer besser einschätzen zu können. Parallel dazu kann man bereits die ersten eingehenden Ergebnisse überprüfen und zusätzliche Aufgaben (bspw. Dateiexporte) ausführen.

Eine Zusammenfassung der Datenquellen kann man anzeigen lassen, indem man im Menü „Cases“ die Option „Data Sources Summary“ selektiert: Die ausgegebene Tabelle zeigt oben allgemeine Informationen zu jeder Datenquelle im Fall an – in der unteren Hälfte zeigt die erste Registerkarte „Details“ Informationen über die ausgewählte Datenquelle. Die zweite Registerkarte „Counts“ zeigt die Anzahl der gefundenen Dateien verschiedener Typen und die Anzahl der extrahierten Ergebnisse an (vgl. Abb. 3). Und drittens zeigt „Ingest History“ für jeden Ingest-Job die Zeit, zu der er abgeschlossen wurde, und welche Module als Teil dieses Jobs ausgeführt wurden.

Arbeit im Hauptfenster

Nachdem die Ingest-Module mit der Erstaufnahme und Analyse der Datenquellen begonnen haben, kann man in der Bedienoberfläche nach bestimmten Artefakten oder Ordnern suchen oder die Ergebnisse der Ingest-Module überprüfen. Alle Analyseabläufe werden aus der Analysehierarchie auf der linken Seite der Fallübersicht heraus gestartet (Abb. 4).

Abbildung 4 Analysehierarchie mit „Extracted Content“ nach dem Ingest-Lauf
Abbildung 4 Analysehierarchie mit „Extracted Content“ nach dem Ingest-Lauf

Der Einstiegspunkt Data Sources (Datenquellen) zeigt alle Daten des Falles an – die Einträge der einzelnen Datenquellen listen darunter die Dateisystemstruktur des jeweiligen Disk-Images oder der lokalen Festplatte auf. Unter dem Einstiegspunkt Views findet man die gleichen Daten aus anderen Perspektiven betrachtet, beispielsweise organisiert nach Dateityp. Results sammelt die Ausgaben der einzelnen Ingest-Module.

Wählt man einen Einstiegspunkt aus, wird oben rechts im Hauptfenster eine Liste der entsprechenden Dateien angezeigt (vgl. Abb. 5) – gefundene Bilder werden als Miniaturansicht dargestellt. Wenn man oben rechts eine Datei auswählt, wird ihr Inhalt unten rechts detailliert angezeigt: Verschiedene Registerkarten dienen dort dazu, um etwa enthaltene Texte, Bilder oder Metadaten anzuzeigen oder Inhalte nach Art eines Hex-Editors darzustellen.

Abbildung 5 Ergebnisse für „Recent Documents“ mit Details zu Metadaten
Abbildung 5 Ergebnisse für „Recent Documents“ mit Details zu Metadaten

Wenn man Dateien aus den Einstiegspunkt „Views“ und „Results“ anzeigt, kann man über das Kontextmenü zu ihrem Ablageort im Dateisystem gelangen. Das ist nützlich, um zu sehen, was sonst noch im gleichen Ordner gespeichert ist. Eine Funktion zum Entpacken von Dateien in das lokale System ist ebenfalls über die rechte Maustaste verfügbar.

Zur Suche nach einzelnen Keywords kann man das Suchfeld oben rechts in Autopsy verwenden – Ergebnisse werden in Tabellenform zurückgeliefert. Auch die Analysehierarchie auf der linken Seite sowie Tabellen auf der rechten Seite verfügen über eine Schnellsuche, mit der man einen sichtbaren Einstiegspunkt schnell finden kann. Man kann außerdem beliebige Dateien markieren (Bookmark), um sie später schneller wiederzufinden oder gezielt in einen Bericht aufzunehmen.

Weitere Ansichten

Neben der dreiteiligen Analysehierarchie auf der linken Seite des Hauptfensters gibt es noch weitere Schnittstellen, die stärker spezialisiert sind – dazu gehören:

  • Timeline (Zeitachse): Diese Funktion kann man über das Menü „Tools“ oder die Symbolleiste ansprechen. Ihre Ausgabe zeigt das Dateisystem und andere Ereignisse, die nach Zeitstempeln geordnet sind, in verschiedenen Darstellungsformen (Anzahl / Details / Liste – vgl. Abb. 5).
  • Image-Gallery-Module (Bildergalerie): Diese Schnittstelle konzentriert sich ganz auf die Darstellung von Bildern und Videos aus den Datenquellen – organisiert nach Ordnern. Sie zeigt Dateien automatisch an, sobald diese gehasht und ihre EXIF-Daten extrahiert wurden. Man kann die Bildergalerie zusätzlich über das Menü „Tools“ öffnen.
  • Communications (Kommunikation): Die Kommunikationsschnittstelle zeigt, über welche Konten am meisten kommuniziert und welche Nachrichten gesendet wurden. Sie ermöglicht es, sich auf bestimmte Beziehungen oder Kommunikationen innerhalb einer bestimmten Zeitspanne zu konzentrieren. Auch diese Ansicht lässt sich über das Menü „Tools“ öffnen.
Abbildung 6 „Timeline“-Schnittstelle von Autopsy
Abbildung 6 „Timeline“-Schnittstelle von Autopsy

Anwendungs-Beispiele

In diesem Abschnitt werden kurz einige Beispiele skizziert, wie man gängige Analyseaufgaben mit Autopsy durchführen kann.

Web-Artefakte

Wenn man die letzten Webaktivitäten eines Benutzers anzeigen möchte, sollte man sich vergewissern, dass das Ingest-Modul „Recent Activity“ aktiviert und durchlaufen worden ist. Über den Einstiegspunkt „Results“ in der Hierarchie auf der linken Seite und den Unterpunkt „Extracted Content“ findet man dann Lesezeichen, Cookies, Downloads und den Browser-Verlauf.

Verdächtige Hash-Dateien

Will man prüfen, ob Datenquellen eines Falls verdächtige Dateien enthalten, nutzt man das Ingest-Modul „Hash Lookup“ beispielsweise mit den oben genannten Hash-Sets. Die Ergebnisse findet man unter „Hashset Hits“ im Bereich „Results“ der Analysehierarchie. Dabei ist zu berücksichtigen, dass der Durchlauf der Hash-LookupFunktion lange dauern kann – die Ergebnisse in diesem Bereich werden fortlaufend aktualisiert, solange der Ingest-Prozess noch läuft.

Über die Ingest-MessagesInbox lässt sich verfolgen, welche bekannten, verdächtigen Dateien bereits gefunden wurden. Stößt man auf eine verdächtige Datei, kann man ihren Eintrag anwählen, um auch ihren ursprünglichen Speicherort anzuzeigen – möglicherweise findet man dort weitere relevante Spuren.

Bilder und Videos

Alle Bilder und Videos aus den Datenquellen lassen sich betrachten, indem man zum Abschnitt „Views“ in der Analysehierarchie und dann zu „File Types\By Extensions“ navigiert – dort wählt man entweder die Sortierung „Images“ oder „Videos“ aus. Man kann auch die Ansichtsoption „Thumbnails“ im Fenster oben rechts verwenden, um Miniaturansichten aller Bilder anzuzeigen oder ein Bild/Video auswählen und unten rechts darstellen lassen.

Reporting (Berichterstattung)

Über die Schnittstelle „Generate Report“ lässt sich ein Abschlussbericht erstellen, der alle Analyseergebnisse enthält. Berichte können in HTML, XLS, KML, TSK, CASE-UCO, STIX oder als „Portable Case“ sowie in weiteren Formaten erstellt werden. Besonders hilfreich ist dabei die Unterstützung für das Datenformat „Structured Threat Information eXpression“ (STIX) aus dem MITRE Cyber Threat Intelligence Repository (https://github.com/mitre/cti). Bereits generierte Berichte kann man später unterhalb der Analysehierarchie im Einstiegspunkt „Reports“ erneut öffnen.

Abbildung 7 „Image Gallery“ von Autopsy
Abbildung 7 „Image Gallery“ von Autopsy

Ausblick

Mit den hier vorgestellten Analysemöglichkeiten von Autopsy wird in der Fortsetzung dieses Beitrags in der kommenden das Szenario „Lone Wolf 2018“ (https://digitalcorpora.org/corpora/scenarios/2018-lone-wolf-scenario) analysiert und die Analyse mit zusätzlichen Ingest-Modulen sowie Python-Plugins verfeinert.

Jochen Schlichting (CISA, CISM, Auditteamleiter auf Basis von IT-Grundschutz) arbeitet als Consultant, Forensic Lead und Incident Responder bei der Secorvo Security Consulting in Karlsruhe (jochen.schlichting@secorvo.de – auch auf XING und LinkedIn).

Literatur

[1] Jochen Schlichting, Für alle (Vor-)Fälle, Prozesse und Open-Source-Tools für Incident-Response und Forensik, <kes> 2019#2, S. 27
[2] Jochen Schlichting, Volatility-Workshop (1), Der Weg in den Hauptspeicher und zu den Prozessen, <kes> 2019#4, S. 18
[3] Jochen Schlichting, Volatility-Workshop (2), Der Weg von Prozessen zu Spuren und Artefakten von Malware, <kes> 2019#5, S. 22

Diesen Beitrag teilen: