You are on page 1of 20

Studienbrief 7 RAM Sicherung und Analyse Seite 113

Studienbrief 7 RAM Sicherung und Analyse

7.1 Lernergebnisse
Nach Durcharbeitung dieses Studienbriefes besitzen Sie theoretische und prakti-
sche Kenntnisse, um eine Sicherung und Analyse des Arbeitsspeichers durchzufh-
ren. Sie sind vertraut mit den technischen Grundlagen chtiger Speichermedien.
Ebenfalls knnen Sie die Notwendigkeit dieses Vorgangs beurteilen und knnen
Vor- und Nachteile, Einschrnkungen sowie die Anforderungen an die hierfr
speziellen forensischen Werkzeuge einschtzen.

7.2 Advance Organizer


Die forensische Analyse von Datentrgern ist heute meistens nicht mehr ausrei-
chend, um weiterentwickelte Angrie oder kriminelles Verhalten eines Anwenders
nachzuweisen. Im Speziellen zieht eine ausschlielich durchgefhrte Post-Mortem
Analyse der Datentrger einen groen Verlust von Informationen und somit auch
von mglichen Indizien oder Beweisen nach sich. Neben persistent verschlssel-
ten und damit im Rahmen einer Post-Mortem Analyse unzugnglichen Spuren
sind dies beispielsweise Passwrter, aktuell laufende Prozesse, Schadsoftware
oder Netzwerkverbindungen. Aus diesem Grund ist von einem zu untersuchen-
den IT-System die Sicherung des Arbeitsspeichers von enormer Bedeutung. Die
grundlegende Literatur fr dieses Kapitel bildet das Buch von Ligh et al. [16].

7.3 Einleitung
In einer kurzen Einfhrung soll zunchst auf die technischen Unterschiede zu
den persistenten Speichermedien eingegangen werden. Auch der Unterschied zwi-
schen Post-Mortem- und Live-Analyse wird noch einmal hervorgehoben. Vor allem
werden wir uns die Frage stellen, welchen Vorteil die Analyse des Arbeitsspeichers
mit sich bringt.

Der Arbeitsspeicher oder auch Hauptspeicher wird meist mit dem Akronym RAM Random Access Memory
fr seine englische Bezeichnung Random Access Memory bezeichnet. Im Gegensatz
zu einem persistenten Speichermedium (also einem Datentrger, der die Daten
dauerhaft speichert) wie einer herkmmlichen Festplatte, einem USB-Stick oder
einer Speicherkarte fr das Smartphone bzw. die Digitalkamera handelt es sich
beim RAM um einen sogenannten chtigen sowie volatilen Speicher. Das bedeutet
folgendes:

1. Flchtigkeit: die Informationen knnen nicht dauerhaft persistent gespei- Flchtiger Speicher
chert werden, sondern bleiben lediglich bei vorhandener Betriebsspannung
erhalten. Eine Unterbrechung der Spannungsversorgung fhrt innerhalb
einer kurzen Zeitspanne zu einem Verlust aller gespeicherter Daten.
2. Volatilitt: der Hauptspeicher unterliegt einer sehr starken Fluktuation, da Volatilitt
stndig Daten geschrieben, gelesen, verschoben oder berschrieben werden.

Soll das RAM gesichert werden, so muss dies gem dem forensischen Paradig- Sicherung vs. Vernde-
ma der Unverndertheit von Spuren mit groer Sorgfalt vorgenommen werden, da rung
hier die Sicherung ohne nderung des RAM meist nicht mglich ist. Dies ist ein
zentraler Unterschied zur Datensicherung bei herkmmlichen Datentrgern im
Rahmen einer Post-Mortem Datenakquise. Als IT-Forensiker mssen Sie daher
bei der Sicherung besonders auf die Wahl der forensischen Werkzeuge sowie auf
geeignete Dokumentation achten, um die Vernderungen im RAM nachvollziehen
Seite 114 Studienbrief 7 RAM Sicherung und Analyse

zu knnen, da Spuren auf Grund der RAM-Sicherung Ihnen als IT-Forensiker


zuzuordnen sind.

Informationen im RAM Der Arbeitsspeicher bietet dem IT-Forensiker eine Flle von Informationen, die
wichtige Spuren, Indizien und Beweise fr die anstehende Ermittlung liefern kn-
nen. Wie Sie in den kommenden Abschnitten sehen, nden sich beispielsweise
Hinweise auf ausgefhrte beziehungsweise aktuell laufende Prozesse und Dienste
sowie genete Netzwerkverbindungen. Des Weiteren lassen sich dort mglicher-
weise entschlsselte Chiretexte oder zugehrige Entschlsselungs-Passwrter
aunden (z.B. von einer Festplattenverschlsselung mittels Truecrypt). Der Ar-
beitsspeicher kann ebenso Auskunft ber mgliche Schadsoftware geben oder
solche Daten beinhalten, die der Anwender niemals abspeichern wollte, wie zum
Beispiel E-Mails im Entwurf, Chatnachrichten oder kinderpornographische Schrif-
ten, die nur im Browser angesehen wurden. Auch im Bezug auf Malware ist eine
Analyse des Arbeitsspeicher unabdingbar, so lsst sich beispielsweise erkennen, in
welchen Prozess sich das Schadprogramm eingehngt hat. Weitere Beispiele nden
Sie in [1]. Zusammenfassend knnen im RAM folgende Informationen vorliegen:

Laufende Prozesse und Dienste


Genete Netzwerkverbindungen
Entschlsselte Chiretexte
Entschlsselungspasswrter
Informationen zu angemeldeten Benutzern
Ausgefhrte Schadsoftware samt Aussage ber deren Aktivitten
Flchtige Dokumente wie Entwurfsdokumente oder online betrachtete Do-
kumente.

Einschrnkungen Die Informationen im Arbeitsspeicher sind somit essentiell, um wertvolle Spuren


auswerten zu knnen. Allerdings existieren die oben genannten Einschrnkungen
der Flchtigkeit sowie Volatilitt, die auf der Seite des IT-Forensikers zu beachten
sind. Da es sich um chtige Daten handelt und diese somit einer hohen Fluktua-
tion unterliegen, knnen wichtige Informationen lediglich fragmentiert vorliegen
(weil diese nicht mehr im RAM alloziert sind) oder im ungnstigsten Fall bereits
gnzlich berschrieben sein. Aus diesem Grund sind die Informationen im Ar-
beitsspeicher lediglich fr eine Analyse der jngeren Vergangenheit ntzlich [1].
Zusammenfassend unterliegt das RAM folgenden Einschrnkungen:

Flchtige Daten (gehen ohne Spannungsversorgung verloren)


Informationen knnen bereits berschrieben sein (Volatilitt)
Bietet daher lediglich Informationen aus jngerer Vergangenheit

In den folgenden Abschnitten wird Ihnen die Sicherung und die Analyse des
Speicherabbildes schrittweise an einem durchgngigen Beispiel veranschaulicht.

Kontrollaufgabe 7.1
K
Erlutern Sie den Begri der Volatilitt und die damit verbundenen Nach-
teile bei der forensischen Untersuchung.
7.4 Sicherung des Arbeitsspeichers Seite 115

Kontrollaufgabe 7.2
K
Welche Informationen erhlt der IT-Forensiker durch die Analyse des Ar-
beitsspeichers?

7.4 Sicherung des Arbeitsspeichers


Die klassische Unterteilung in Sicherungsmechanismen des Hauptspeichers unter- Anforderungen
scheidet Hardware- sowie Software-basierte Verfahren. Heute wird diese strenge
Unterscheidung nicht mehr getroen, stattdessen versucht man die Verfahren
nach wesentlichen Anforderungen an den Sicherungsprozess einzustufen. Vmel
und Freiling [31] nennen Verfgbarkeit (engl. availability) sowie Atomaritt (engl.
atomicity). Unter Verfgbarkeit verstehen Vmel und Freiling die Eigenschaft, dass
keine besonderen Vorkehrungen am System vorab getroen werden mssen (z.B.
im Rahmen der strategischen Vorbereitung gem BSI-Modell) und dass eine Si-
cherung auch ohne dezidierte Kenntnis ber das zu sicherende Gert gelingt eine
Sicherung also einfach technisch mglich ist. Mit Atomaritt beschreiben Vmel
und Freiling das Kriterium, dass whrend der Sicherung das System nicht gestrt
wird, also die Sicherung in einer atomaren Leseoperation ohne Unterbrechung
durchgefhrt wird. In 2013 haben Vmel und Stttgen [32] dann die folgenden drei
Anforderungen fr eine forensisch einwandfreie (engl. criteria for sound memory
acquisition) genannt:

1. Korrektheit: das forensische Abbild stimmt mit dem physikalischen Haupt- Korrektheit
speicher soweit wie mglich berein. Mit diesem Kriterium haben die Au-
toren vor allem die Manipulation durch Malware im Auge. Der Grad der
Korrektheit ergibt sich aus dem prozentualen Anteil der Gre der korrekt
gesicherten Speicherseiten in Relation zur gesamten Speichergre.
2. Atomaritt: die Sicherung geschieht in einer atomaren Leseoperation ohne Atomaritt
Unterbrechung (s.o.).
3. Integritt: dieses Kriterium vergleicht den Zustand des RAM (bzw. seines Integritt
Snapshots) mit dem Zustand zu einem festen Zeitpunkt (der in der Pra-
xis typischerweise ein Zeitpunkt ist, wenn der IT-Forensiker das System
bergeben bekommt und noch keine eigenen Spuren hinterlassen hat). Der
Grad der Integritt ist dann der prozentuale Anteil der seit dem Zeitpunkt
unvernderten Speicherseiten in Relation zu allen Speicherseiten.

Vmel und Freiling nennen in [31] eine Reihe von Sicherungsmglichkeiten des Sicherungsmglichkeiten
Arbeitsspeichers und setzen diese in Relation zu ihren beiden Anforderungen Ver-
fgbarkeit und Atomaritt (siehe Abbildung 7.1). Das ideale Sicherungsverfahren
besitzt eine hohe Verfgbarkeit und eine hohe Atomaritt, bendet sich also rechts
oben in Abbildung 7.1. Bei den tatschlichen Verfahren mssen wir allerdings Ab-
striche hinnehmen. Wir werden im Folgenden einige Sicherungsstrategien nennen
und spter fr eine Auswahl davon weitere Details nennen:

1. Die erste Sicherungsstrategie verwendet das Betriebssystem des Hosts Kernel Level Applications
im Kernel Modus (Kernel Level Applications). Wir werden darauf in Ab-
schnitt 7.4.1 genauer eingehen. Nach Abbildung 7.1 ist die Verfgbarkeit sehr
hoch, allerdings ist die Atomaritt eher durchschnittlich, weil wir mit dem
laufenden System arbeiten und daher mit anderen Prozessen konkurrieren.
Auerdem verndern wir bei der Sicherung das RAM.
2. Die zweite Sicherungsstrategie nutzt nicht das Betriebssystem des Hosts, Hardware Bus-Based
sondern greift direkt auf den Hauptspeicher zu (Hardware Bus-Based Tech- Technique
nique). Dazu steht zum Beispiel ein Direct Memory Access (DMA) ber die
Seite 116 Studienbrief 7 RAM Sicherung und Analyse

Abb. 7.1: Sicherungs-


techniken in Relation
zu den Anforderungen
Verfgbarkeit und Ato-
maritt, Quelle [31]

FireWire-Schnittstelle zur Verfgung, was wir in Abschnitt 7.4.2 vorstellen.


Da der FireWire-Zugri sich als teilweise unzuverlssig erwiesen hat (im
Hinblick auf Abstrze whrend der Sicherung und im Hinblick auf die
Korrektheit, siehe [31]) und da zur Sicherung eine IEEE 1394-Schnittstelle
verfgbar sein muss, wird dieses Verfahren im Koordinatenursprung von
Abbildung 7.1 dargestellt.
Cold Booting 3. Bei der dritten Sicherungsstrategie greifen wir ohne das Host-Betriebssytem
auf den Hauptspeicher zu, nachdem wir ein eigenes Betriebssystem gestartet
haben, wie es zum Beispiel durch einen Cold Boot Zugri mglich ist (Cold
Booting in Abbildung 7.1). Wir werden das Cold Booting in Abschnitt 7.4.3
darstellen. Insgesamt schneidet es sehr gut im Hinblick auf Verfgbarkeit
und Atomaritt ab.
Hibernation Datei 4. Gngige Betriebssysteme speichern den Hauptspeicherinhalt in einer Hi-
bernation Datei, bevor das System in den Ruhezustand (Suspend to Disc)
wechselt. Unter Windows schreibt das Betriebssystem Teile des Hauptspei-
chers in die Datei hiberfil.sys. Weiterhin legt Windows die RAM-Inhalte
komprimiert ab und nutzt ein proprietres Dateiformat. Daher kann die Aus-
sagekraft der Hibernation Datei eingeschrnkt sein. Weil viele Betriebssyste-
me einen vergleichbaren Ansatz wie Windows nutzen, wird die Hibernation
Sicherungsstrategie als eher verfgbar in Abbildung 7.1 dargestellt. Da
das Betriebssystem vor dem Ruhezustand ausschlielich den RAM-Speicher
sichern will, ist die Atomaritt sehr hoch.
Virtualisierung 5. Eine weitere Sicherungsstrategie ist Virtualisierung, wie sie zum Beispiel im
Umfeld von Hostern oder Cloud-Anbietern vorkommt. Gngige Virtualisie-
rungslsungen bieten entweder einen Snapshot des gesamten Gastsystems
an oder einen Export des Gast-RAM (z.B. VMware als .vmem-Datei auf dem
Host). Die Atomaritt dieses Ansatzes ist sehr hoch, weil das Gastsystem
vom Host aus eingefroren werden kann, die Verfgbarkeit ist allerdings eher
gering, weil eben Virtualisierung fr das zu sicherende System vorausgesetzt
wird.

Akzeptanz, Inte- Gehen wir noch kurz darauf ein, welche Konsequenzen der Einsatz eines Werk-
gritt der Spuren zeugs zur Sicherung des Arbeitsspeichers nach sich ziehen kann. Wie Sie aus
den vorherigen Kapiteln bereits wissen, gelten die gleichen Anforderungen wie
7.4 Sicherung des Arbeitsspeichers Seite 117

bei allen anderen forensischen Werkzeugen, also zum einen die Akzeptanz des
Werkzeugs im forensischen und juristischen Umfeld, zum anderen sollen keine
Daten des Systems verndert werden bzw. die nderungen zwingend notwendig
und deren Ursache ausfhrlich dokumentiert sein.

Da wir bei der Sicherung des Arbeitsspeichers in das laufende System eingreifen RAM wird typischerweise
insbesondere bei Nutzung des Host-Betriebssystems ist eine Vernderung der verndert
zu sicherenden Daten die Regel und nicht die Ausnahme. Denn die ausfhrbare
Sicherungsapplikation wird auf dem zu sicherenden System ausgefhrt und daher
in den Hauptspeicher geladen. In der Konsequenz mssen diese nderungen am
Zielsystem so gering wie nur mglich gehalten werden. Auch die Dokumentation
der durchgefhrten Schritte und Methoden sollte besonders genau erfolgen.

Als IT-Forensiker mssen Sie im Rahmen der Ermittlungen die Vor- und Nachteile Abwgung
einer Sicherung des Arbeitsspeichers gegeneinander abwgen, wenn mglich in
Rcksprache mit dem Auftraggeber oder beteiligten Juristen. Dazu sollten Sie sich
genaustens berlegen, welche Spuren/Indizien die sptere RAM-Analyse fr das
Ziel der IT-forensischen Untersuchung liefern kann. Sie mssen dann die Frage
beantworten, ob der Eingri in das laufende System aus forensischer Sichtweise
berhaupt lohnenswert ist.

7.4.1 Sicherung mit Kernel Level Applications


Eine verbreitete Sicherungsstrategie ist die Nutzung spezieller Applikationen, Kernel Mode
die das Host-Betriebssystem im Kernel-Modus verwenden. Daher verwenden
Vmel und Freiling in Abbildung 7.1 die Bezeichnung Kernel Level Applications
fr diese Sicherungsstrategie. Im Unterschied zu User-Land-Anwendungen (User
Level Applications in Abbildung 7.1) ist der Zugri auf Hardware und Speicher-
bereiche nicht eingeschrnkt. Das Sicherungswerkzeug kann im Kernel-Mode alle
verfgbaren Speicherbereiche referenzieren. Ein weiterer Vorteil ist, dass Mal-
ware Verschleierungsmechanismen einsetzt, die das Auslesen der verwendeten
Speicherbereiche unterbindet bzw. erschwert. Bei Sicherung im Kernel-Mode ist
diese Verschleierung aus Sicht der Malware schwieriger und damit ihr Auftreten
aus Sicht des IT-Forensikers unwahrscheinlicher.

Fr die Sicherung des Arbeitsspeichers existiert eine groe Auswahl an forensi- Tools
schen Werkzeugen1 . Die konkrete Auswahl hngt davon ab, welches Betriebssys-
tem zu sichern ist sowie welche Prferenzen im Hinblick auf kommerzielle Tools
der IT-Forensiker hat. In der Liste auf dem Forensics Wiki nden sich die Klassiker
von Moonsols, ManTech, Mandiant, EnCase sowie FTK.

Da Windows das am meisten verbreitete Betriebssystem ist, stellen wir in Bei- DumpIt
spiel 7.1 eine Sicherungssoftware vor, die als Kernel Level Application das RAM
sichert. Ein hug verwendetes und kostenfreies Tool ist DumpIt, das von dem
bekannten IT-Sicherheitsexperten Matthieu Suiche entwickelt wurde und ber
dessen Firma MoonSols bezogen werden kann2 .

Beispiel 7.1: Sicherung des RAM mittels DumpIt unter Windows


B
Die Nutzung von DumpIt ist sehr einfach. Nach dem Herunterladen des
ca. 100 KiB groen zip-Archivs von der o.a. Downloadseite von MoonSols
entpacken Sie das Archiv. Es enthlt neben der ca. 200 KiB groen exe-Datei

1 http://forensicswiki.org/wiki/Tools:Memory_Imaging
2 http://www.moonsols.com/wp-content/plugins/download-monitor/download.php?id=7
Seite 118 Studienbrief 7 RAM Sicherung und Analyse

auch eine Datei README.txt, die noch einmal explizit auf Folgendes hinweist:
Reverse engineering is prohibited.

Die Datei DumpIt.exe kopieren Sie auf einen externen Datentrger (z.B.
einen USB-Stick), den Sie mit dem zu sichernden System verbinden. Das
Speicherabbild wird per Default in das gleiche Verzeichnis kopiert. Die
Readme-Datei sagt dazu: The raw memory dump is generated in the current
directory, only a conrmation question is prompted before starting.

Im obigen Screenshot sehen wir, dass die Datei DumpIt.exe vom Wechsel-
datentrger gestartet wurde, der als Laufwerk G: in das Dateisystem des
Hosts eingehngt ist. DumpIt zeigt dann an, dass der Hauptspeicher die
Gre 1511 MiB hat und auf dem USB-Stick noch ber 4000 MiB Speicher-
platz zur Verfgung stehen. Wichtig bei groen Speicherabbildern von mehr
als 4 GiB ist die Formatierung des USB-Sticks, die fr solche Dateien kein
FAT-Dateisystem sein darf. DumpIt schlgt als Speicherort fr das Speicher-
abbild den USB-Stick vor, die zugehrige Datei enthlt neben dem String
HACKERSPACE auch den aktuellen Zeitstempel im Dateinamen. Eine Bestti-
gung mit yes initiiert die Sicherung des RAM auf dem USB-Stick.

Linux Auch fr Linux gibt es Kernel Level Applications, die den Arbeitsspeicher unter
Nutzung des Host-Betriebssytems sichern. Sie knnen z.B. den Linux Memory
Extractor LiME3 verwenden. LiME kann auch fr die RAM-Sicherung von Android-
Gerten genutzt werden. Bitte beachten Sie, dass aktuelle Linux-Kernel den Zugri
auf das RAM mittels des Gerts /dev/mem nicht ermglichen, so dass der Befehl

# dd if=/dev/mem of=ram.dd

keine RAM-Sicherung durchfhrt. Weitere Tools nden Sie z.B. im Forensicswiki.

3 https://github.com/504ensicslabs/lime
7.4 Sicherung des Arbeitsspeichers Seite 119

Die Sicherung des Arbeitsspeichers unter Mac OS erfolgt zum Beispiel unter Zuhil- Mac OS
fenahme des Werkzeugs Mac Memory Reader4 im Mach-O Format5 . Mit folgendem
Befehl lsst sich hier der Arbeitsspeicher sichern:

sudo ./MacMemoryReader /Volumes/STORAGE/ram_dump.mach-o

7.4.2 Hardware Bus-basierte Techniken


In diesem Abschnitt betrachten wir an Hand des Beispiels IEEE 1394 eine Mglich- FireWire
keit zur Sicherung des Arbeitsspeichers, ohne eine Anwendung auf dem System
auszufhren. Somit werden nderungen am System gering gehalten. Der Zugri
wird allgemein ber einen Hardwarebus durchgefhrt, in unserem konkreten
Beispiel ber die FireWire Schnittstelle des Rechners vorausgesetzt der Rechner
besitzt eine solche Schnittstelle [1].

Diese Methode funktioniert selbst dann, wenn beispielsweise der Bildschirm des
Rechners gesperrt und mit einem Passwort geschtzt ist. Ist der Besitzer des Rech-
ners nicht in der Lage, das Passwort zu nennen (z.B. weil er abwesend ist) oder
verweigert er die Herausgabe, so lsst sich die Sicherung des Arbeitsspeichers mit
Hilfe dieses speziellen Zugris ber den IEEE 1394 Bus dennoch realisieren.

ber FireWire ist ein direkter Zugri auf den Arbeitsspeicher des Rechners mg- Direct Memory Access
lich, indem der Direct Memory Access (DMA) des FireWire Bussystems aus-
genutzt wird. Der Direct Memory Access dient dazu, die Geschwindigkeit bei
einer Datenbertragung zu erhhen. Dies wird erreicht, in dem die Daten ber den
DMA-Controller direkt in den Arbeitsspeicher geladen werden. Das Betriebssystem
mit einer vorhanden Passwortsicherung des Bildschirms kann somit umgangen
werden [15].

Verfgt das zu untersuchende System ber keine FireWire Schnittstelle, so kann PCMCIA-Karte
dieses optional z.B. ber eine PCMCIA Karte nachgerstet werden. Die Installation
der bentigten Treiber erfolgt im Hintergrund auch bei einem gesperrten Rechner
[15].

Da der FireWire-Zugri sich als teilweise unzuverlssig erwiesen hat (im Hinblick Korrektheit
auf Abstrze whrend der Sicherung und im Hinblick auf die Korrektheit, siehe
[31]) und da zur Sicherung eine IEEE 1394-Schnittstelle verfgbar sein muss, wird
dieses Verfahren im Koordinatenursprung von Abbildung 7.1 dargestellt.

7.4.3 Cold Booting


Bei den bisherigen Sicherungsstrategien des RAM setzen wir voraus, dass sich das Cold Booting
System des Verdchtigen im laufenden Zustand bendet. Der Verdchtige knnte
jedoch beim Eintreen der Ermittler versehentlich oder beabsichtigt das System
ausschalten bzw. die Stromzufuhr des Rechners unterbrechen. In diesem Szenario
bleibt dem IT-Forensiker jedoch eine kurze Zeitspanne, um mittels Cold Booting
die Informationen im Arbeitsspeicher zu erhalten und anschlieend zu sichern.

Cold Booting nutzt aus, dass die in den Speicherbausteinen des Arbeitsspeichers Datenremanenz
gespeicherten Daten zwischen mehreren Sekunden bis Minuten lang verbleiben,
bis sie nach Ablauf dieser Zeitspanne6 unwiederbringlich verloren sind. Dies wird

4 http://www.cybermarshal.com/index.php/cyber-marshal-utilities/mac-memory-reader
5 https://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/

MachORuntime/Reference/reference.html
6 Die Zeitspanne unterliegt Fertigungstoleranzen.
Seite 120 Studienbrief 7 RAM Sicherung und Analyse

als Datenremanenz bezeichnet. Durch eine zustzliche Khlung der Speicherbaustei-


ne mittels Kltespray kann die Remanenzzeit erheblich verlngert werden. Cold
Booting macht sich dies zu Nutze. Natrlich kann Cold Booting auch vom IT-
Forensiker selber eingesetzt werden, z.B. weil andere Sicherungsstrategien versagt
haben. Dann wird er vor dem Hard-Reset die Speicherbausteine khlen.

Minimalen Kernel booten Beim Cold Booting wird nach Khlung der Speicherriegel ein minimaler spezieller
Kernel gebootet, der nur die Aufgabe hat, das RAM zu sichern oder nach Ver-
schlsselungsschlsseln zu suchen. Der bootende Kernel bendet sich auf einem
bootfhigen Datentrger, oft wird das ein USB-Stick sein, auf den auch direkt das
Speicherabbild gesichert werden kann. Konzeptionell knnten die Speicherriegel
auch in dezidierte Lesegerte gesteckt werden, allerdings wird dieser Ansatz nicht
genutzt.

Fallstricke Cold Booting erscheint noch eher eine akademische denn eine operative Technik zu
sein. Mgliche Fallstricke von Cold Booting sind eine untypische Bootreihenfolge
(z.B. die interne Festplatte steht an hchster Stelle), so dass der externe bootfhige
Kernel nicht gestartet wird. Sicherheitsane Nutzer knnten auch das BIOS im
POST (power-on self-test) dazu veranlassen, den Arbeitsspeicher zu berschreiben,
falls ein unsauberes Beenden des Betriebssystems erkannt wurde.

Kontrollaufgabe 7.3
K
Nennen Sie die Anforderungen an Sicherungsstrategien des RAM.

Kontrollaufgabe 7.4
K
Begrnden Sie fr die Kernel Level Applications sowie die Virtualsierungs-
Sicherungsstrategie die jeweilige Lage im Koordinatensystem in Abbil-
dung 7.1.

Kontrollaufgabe 7.5
K
Welchen Vorteil bietet der FireWire Zugri gegenber einer herkmmlichen
Sicherung des Arbeitsspeichers?

7.5 Analyse des Arbeitsspeichers


In diesem Abschnitt wird Ihnen die Analyse des Arbeitsspeichers anhand eines
Fallbeispiels detailliert veranschaulicht. Hierzu werden wir Ihnen die technischen
Grundlagen und den Umgang mit dem verbreiteten Analysewerkzeug Volatility
ausfhrlich darstellen, um Ihnen die Bearbeitung der bungen zu erleichtern.
Weiterfhrende Literatur und Informationen nden Sie im Buch The Art of Memory
Forensics : Detecting Malware and Threats in Windows, Linux, and Mac Memory [16]
sowie im Wiki des Analysewerkzeugs Volatility [11].

7.5.1 Fallbeispiel: Szenario


Vorwurf Drogenhandel Als IT-forensischer Ermittler sollen Sie im Rahmen einer Hausdurchsuchung die
Polizei begleiten, um eine Beschlagnahmung und Sicherung der IT-Gerte des Ver-
dchtigen durchzufhren. Die Person wird verdchtigt, sich an Drogengeschften
7.5 Analyse des Arbeitsspeichers Seite 121

zu beteiligen und lebt alleinstehend, so dass (in diesem Beispiel) davon ausge-
gangen werden kann, dass alle IT-Gerte nicht von einer dritten Person benutzt
werden. Die Zuordnung digitaler Spuren zu einer natrlichen Person (nmlich des
Verdchtigen) wird daher vorausgesetzt.

Als IT-Forensiker sollen Sie im Rahmen der Hausdurchsuchung Spuren sichern, Volatility
um den Verdacht zu widerlegen oder besttigen. Bei Ihrem Eintreen bendet sich
der Windows7-Rechner im laufenden Betrieb und ist nicht durch ein Administra-
torkennwort geschtzt. Sie knnen daher wie in Abschnitt 7.4.1 eine Sicherung des
Arbeitsspeichers mittels des Host-Betriebssystems sowie des auf einem USB-Stick
mitgebrachten Tools DumpIt durchfhren. Nach Beschlagnahmung des Rechners
und weiteren Gerten beginnen Sie in Ihrem forensischen Labor mit der Untersu-
chung des Arbeitsspeichers. Hierzu verwenden Sie das Open Source Werkzeug
Volatility7 (siehe Abschnitt 7.5.2).

7.5.2 Eine kurze Einfhrung in Volatility


Volatility ist ein Framework der Volatility Foundation, mit dessen Hilfe die Analyse
des Arbeitsspeichers performant und mit sehr guten Ergebnissen durchgefhrt
werden kann. Die aktuelle Version 2.4 ist unter der GNU General Public License
fr Linux, Windows und MAC erhltlich. Volatility ist in Python implementiert.

Funktionalitt von Volatility wird in Form von Plugins zur Verfgung gestellt. Plugins
Volatility wird mit einer Reihe von Standardplugins ausgeliefert, die ein breites
Gebiet abdecken. Weitere Plugins knnen je nach Bedarf manuell nachinstalliert
werden. Da Volatility auf Python basiert, mssen die entsprechenden Bibliotheken
in das System eingebunden sein.

Die Installationsanleitung des Frameworks sowie eine ausfhrliche Dokumenta- Syntax


tion der integrierten Plugins nden Sie in der Readme-Datei8 und im Wiki9 . Je
nach Installation wird Volatility mittels des Befehls python vol.py (bei manueller
Installation) oder volatility (z.B. bei Installation in Kali) aufgerufen. Wir nutzen
im Folgenden Letztere. Die Syntax ist wie folgt:

$ volatility [plugin] -f [image] --profile=[profile]

Hierin ist plugin das verwendete Plugin (also der gewnschte Befehl von Volati-
lity, vgl. z.B. mmls im Sleuthkit), image das verwendete RAM-Image (in unserem
Fall also die Arbeitskopie dump_copy.raw, siehe unten) und profile der Name
des in Volatility verwendeten Prols des gesicherten RAM-Betriebssystems (in
unserem Beispiel unten Win7SP1x86 fr Windows 7 mit Service Pack 1 auf einer
x86-Architektur).

Hilfe zu Volatility erhalten Sie auf der Kommandozeile mit dem Flag -h, mit Hilfefunktion
dem Flag --info gibt Volatility zahlreiche Informationen zu hinterlegten Prolen,
verfgbaren Plugins usw. aus. Auszge aus der Ausgabe zu --info nden Sie in
Quelltext 7.1.

7 http://www.volatilityfoundation.org/
8 https://github.com/volatilityfoundation/volatility/blob/master/README.txt
9 https://github.com/volatilityfoundation/volatility/wiki/Command-Reference
Seite 122 Studienbrief 7 RAM Sicherung und Analyse

Quelltext 7.1: Plugin Hilfefunktion


Q
# volatility --info

Profiles
--------
VistaSP0x64 - A Profile for Windows Vista SP0 x64
[REMOVED]
Win7SP1x86 - A Profile for Windows 7 SP1 x86
WinXPSP1x64 - A Profile for Windows XP SP1 x64
[REMOVED]

Scanner Checks
--------------
[REMOVED]

Plugins
-------
apihooks - Detect API hooks in process and kernel memory
[REMOVED]
imageinfo - Identify information for the image
[REMOVED]

7.5.3 Analyse mittels Volatility


Wir zeigen im Folgenden mittels beispielhafter Volatility-Plugins, wie die Analyse
des Arbeitsspeichers durchgefhrt wird. Wir arbeiten unter Kali Linux auf der
Kommandozeile. Hierbei werden wir Schritt fr Schritt vorgehen, um eine Aussage
treen zu knnen, ob sich der Tatverdacht besttigen oder widerlegen lsst.

Integritt der Zur forensischen Untersuchung liegt als Mastercopy das von DumpIt erzeugte
Arbeitskopie Speicherabbild dump.raw sowie dessen Arbeitskopie dump_copy.raw vor. Zur ab-
schlieenden berprfung der Beweiskette werden die Prfsummen der Abbilder
mittels SHA-256 erstellt und verglichen.

$ sha256sum dump.raw dump_copy.raw


f13c3f8fd644caff6e1d17995ad32b732322bf0aa9a30e79f72f258c87fe507c dump.raw
f13c3f8fd644caff6e1d17995ad32b732322bf0aa9a30e79f72f258c87fe507c dump_copy.raw

Prol des Speicherabbilds


Plugin imageinfo Bevor wir innerhalb des Speicherabbilds gezielt nach Spuren suchen, bestimmen
wir dessen Prol. Unter dem Prol versteht man Details zu dem Betriebssystem, das
auf dem gesichterten IT-Systems gelaufen ist, sowie Informationen zur Hardware
7.5 Analyse des Arbeitsspeichers Seite 123

Architektur. Volatility bietet hierfr das Plugin imageinfo an. Die Aufrufsyntax
von Volatility haben wir in Abschnitt 7.5.2 beschrieben.

Quelltext 7.2: Plugin imageinfo


Q
# volatility imageinfo -f dump_copy.raw

Volatility Foundation Volatility Framework 2.4


Determining profile based on KDBG search...

Suggested Profile(s) : Win7SP0x86, Win7SP1x86


AS Layer1 : IA32PagedMemory (Kernel AS)
AS Layer2 : FileAddressSpace (/forensic/dump_copy.raw)
PAE type : No PAE
DTB : 0x185000L
KDBG : 0x8294ac28
Number of Processors : 1
Image Type (Service Pack) : 1
KPCR for CPU 0 : 0x8294bc00
KUSER_SHARED_DATA : 0xffdf0000
Image date and time : 2015-01-07 09:31:17 UTC+0000
Image local date and time : 2015-01-07 10:31:17 +0100

Volatility hat einige Prole hinterlegt und sucht nach typischen Mustern, um das KDBG
konkrete Prol zu bestimmen. Dazu nutzt es den Kernel Debugger Block, KDBG,
dessen Adresse imageinfo zurckgibt. Die Suche nach dem Prol dauert eine ge-
wisse Zeit. In unserem Beispiel sehen wir anhand von Quelltext 7.2, dass Volatility
zwei Prole vorschlgt (siehe Suggested Profile(s)).

Das ist nicht ungewhnlich, wenn Prole sehr hnlich zueinander sind. Allerdings Service Pack 1
entnehmen wir dem Feld Image Type, dass es sich bei unserem Speicherabbild
vermutlich um ein Windows 7 Service Pack 1 Betriebssystem handelt andernfalls
wre das Feld Image Type leer (d.h. im Falle des Service Pack 0). Im weiteren
Verlauf der Untersuchung nutzen wir dieses Prol. Wie in Abschnitt 7.5.2 erlutert,
rufen wir daher im Folgenden Volatility stets mit dem Flag --profile=Win7SP1x86
auf, um Probleme bzw. eine falsche Interpretation des Abbilds auszuschlieen.

Dem Address Space Layer1 Feld AS Layer1 entnehmen wir, dass der RAM von Weitere Informationen
einer 32 Bit Architektur stammt. Zustzlich sehen Sie als von imageinfo ausgege-
bene Informationen die Anzahl der Prozessoren (in unserem Beispiel gibt es einen
Prozessor), die Systemzeit zum Zeitpunkt der Sicherung (als Weltzeit sowie lokale
Zeit) und weitere Angaben, die wir nicht nher im Detail betrachten werden.

Prozessliste
Im nchsten Schritt verschaen wir uns eine bersicht ber die zum Zeitpunkt der Plugin pslist
Sicherung laufenden Prozesse. Hierzu verwenden wir das Plugin pslist. Dieses
Plugin gibt alle Prozesse mit dem aufrufenden Programmnamen, der Prozess-ID
(PID), der Elternprozess-ID (Parent Process ID, PPID), der Anzahl der Threads
(Thds), dem zugehrigen virtuellen Oset im Arbeitsspeicher sowie weiterer In-
formationen wie Anzahl der Handles sowie Beginn- und ggs. Endzeitpunkt des
Prozesses an. In Quelltext 7.3 sehen Sie die gekrzte Ausgabe (durch ... gekenn-
Seite 124 Studienbrief 7 RAM Sicherung und Analyse

zeichnet) des Aufrufs des Plugins pslist. Mit dem Switch -P gibt Volatility die
physikalischen Adressen aus.

Quelltext 7.3: Plugin pslist


Q
# volatility pslist -f dump_copy.raw --profile=Win7SP1x86
Volatility Foundation Volatility Framework 2.4

Offset(V) Name PID PPID Thds


---------- ----------------- ------ ------ ------ ...
[REMOVED]
0x85e164b8 dwm.exe 1072 800 3 ...
0x8623bd40 explorer.exe 1136 912 22 ...
0x86282d40 SearchIndexer. 1996 448 15 ...
0x85db23f8 SearchProtocol 536 1996 8 ...
0x86310bd0 svchost.exe 2056 448 9 ...
0x845aed40 TrueCrypt.exe 3120 2940 4 ...
0x862fbb38 mscorsvw.exe 3376 448 7 ...
0x862a66d0 sppsvc.exe 3420 448 4 ...
0x84637d40 svchost.exe 3456 448 21 ...
0x846e1ab8 dllhost.exe 2428 592 12 ...
0x846e1430 iexplore.exe 2440 1136 12 ...
0x84706550 iexplore.exe 3028 2440 20 ...
0x848e0998 TrustedInstall 792 448 11 ...
0x849bbd40 iexplore.exe 4052 2440 21 ...
0x8485bb78 wuauclt.exe 2616 848 4 ...
0x84964518 IE11-Windows6. 1700 2616 8 ...
0x84ae0d40 DumpIt.exe 3360 1136 2 ...
0x84c43d40 conhost.exe 3300 376 2 ...
[REMOVED]

Standardprozesse Die Prozessliste aus Quelltext 7.3 zeigt uns wohlbekannte Prozesse wie den Datei-
manager Explorer (explorer.exe, PID 1136) oder mehrere Instanzen des Internet
Explorers (ieexplore.exe, PID 2240 oder PID 3028 mit Elternprozess 2240).

Interessante Prozesse Daneben sehen wir aber auch, dass zur Zeit der Sicherung eine Instanz des Ver-
schlsselungsprogramms Truecrypt (TrueCrypt.exe, PID 3120) ausgefhrt wur-
de, so dass darauf geschlossen werden kann, einen oder mehrere verschlsselte
Truecrypt-Container auf einem persistenten Datentrger (z.B. der internen Fest-
platte, einem beschlagnahmten USB-Stick) vorzunden. Des Weiteren ist zu be-
obachten, dass whrend der Sicherung das Sicherungsprogramm DumpIt lief
(DumpIt.exe, PID 3360). Zumindest dieser Prozess ist eine Vernderung am RAM,
die von uns im Rahmen der Sicherung des Hauptspeichers verursacht wurde.
Bevor wir der Spur von verschlsselten Truecrypt-Containern nachgehen, legen
wir zunchst das Augenmerk auf Netzwerkverbindungen.

Plugin pstree Alternativ stellt das Plugin pstree alle zum Zeitpunkt der Sicherung laufenden
Prozesse in einer Baumstruktur dar, wobei Kindprozesse jeweils durch Einrcken
dargestellt werden. Die sonst dargestellten Informationen sind die gleichen wie
bei dem Plugin pslist.

Plugin psscan Das Plugin psscan wird genutzt, um auch krzlich beendete Prozesse zu nden.
Weiterhin ndet psscan auch versteckte (hidden) sowie ausgehngte (unlinked)
Prozesse, wie sie vor allem von Keyloggern, Rootkits oder anderer verschleiernder
Malware genutzt werden.
7.5 Analyse des Arbeitsspeichers Seite 125

Netzwerkverbindungen
Zur Ausgabe der Netzwerkverbindungen gibt es je nach Betriebssystem bzw. Be- Plugin netscan
triebssystemversion unterschiedliche Volatility Plugins. Fr Windwos Vista, Win-
dows 2008 Server sowie Windows 7 Speicherabbilder ist das Plugin netscan zu
verwenden, fr die etwas lteren Windows XP Versionen sowie Windows 2003
Server wird das Plugin connscan eingesetzt. Da unser Snapshot das Betriebssystem
Windows 7 beinhaltet, nutzen wir in Quelltext 7.4 das Plugin netscan.

Quelltext 7.4: Plugin netscan


Q
# volatility netscan -f dump_copy.raw --profile=Win7SP1x86
Volatility Foundation Volatility Framework 2.4

Offset(P) Proto Local Address Foreign Address ...


[REMOVED]
0x5e1263b8 TCPv4 10.0.2.15:49271 62.154.232.97:80 ...
0x5e12da08 TCPv4 10.0.2.15:49270 62.154.232.83:80 ...
0x5e147df8 TCPv4 10.0.2.15:49322 62.138.116.3:80 ...
0x5e14bdf8 TCPv4 10.0.2.15:49332 54.231.0.153:443 ...
0x5e152b08 TCPv4 10.0.2.15:49298 62.138.116.15:80 ...
0x5e159bb0 TCPv4 10.0.2.15:49277 62.154.232.83:80 ...
[REMOVED]
0x5e234830 TCPv4 10.0.2.15:49299 62.138.116.15:80 ...
0x5e235890 TCPv4 10.0.2.15:49302 46.4.85.238:80 ...
0x5e23b2f0 TCPv4 10.0.2.15:49296 62.138.116.15:80 ...
0x5e283528 TCPv4 10.0.2.15:49303 46.4.85.238:80 ...
0x5e3745f8 TCPv4 10.0.2.15:49432 224.0.0.252:80 ...
0x5e39e5d8 TCPv4 10.0.2.15:49428 224.0.0.252:80 ...
0x5e39f008 TCPv4 10.0.2.15:49441 65.55.252.71:443 ...
[REMOVED]

netscan liefert wie in Quelltext 7.4 dargestellt Informationen zu lokalen und ent- Informationen
fernten Layer3- und Layer4-Adressen bzw. -Ports, das Layer4-Protokoll sowie
das Oset im physikalischen Hauptspeicher. Weiterhin gibt netscan die PID und
den Namen des zugehrigen Prozesses aus samt Zeitstempel der Erzeugung des
Sockets sowie den Status der Verbindung (diese Informationen sind in Quelltext 7.4
nicht dargestellt und durch '...' ersetzt).

In unserem Beispiel-Snapshot sind mehrere Verbindungen vom lokalen System zu Reverse DNS-Lookup
Webservern ber das Standardprotokoll HTTP (Port 80) bzw. ber das Sicherheits-
protokoll TLS (Port 443) genet. Zur Ausung der IP-Adressen der angefragten
Server zu ihren menschenlesbaren URLs knnen wir Reverse DNS-Lookup-Dienste
oder -Programme wie nslookup oder dnswatch10 nutzen. Beispielsweise gehrt die
IP-Adresse des HTTP-Servers 62.138.116.3, der lokal mit dem Port 49322 kommu-
niziert, zum Webserver der Domain www.spiegel.de. Wir werden gleich mittels
der Registry sehen, welche Domains zu den anderen IP-Adressen gehren, d.h.
der Reverse DNS-Lookup gelingt mit Informationen aus unserem Snapshot selber.
Interessant ist noch die Abfrage nach dem Standort des unter einer IP-Adresse
erreichbaren Dienstes, wie Sie es beispielsweise mit utrace11 recherchieren kn-
nen.

10 www.dnswatch.info
11 www.utrace.de
Seite 126 Studienbrief 7 RAM Sicherung und Analyse

Registry
Windows Registry Im Arbeitsspeicher des Rechners bendet sich ebenfalls die Windows Registrie-
rungsdatenbank (Windows Registry). Bei dieser Datenbank handelt es sich um eine
hierarchische Datenbank, um zentrale Kongurationseinstellungen des Windows
Betriebssystems, seiner Anwendungen und seiner Nutzer zu hinterlegen. Da die
darin gespeicherten Informationen whrend des Betriebs abgefragt werden, wird
die Windows Registry beim Start in den Arbeitsspeicher geladen und dort vorge-
halten. Mittels Volatility nden wir dort also Informationen ber das Benutzer- und
Hardwareprol sowie die installierten Anwendungen und weitere systemrelevante
Einstellungen.

Hintergrund zur Registry Die Windows Registry ersetzt seit Windows 3.x die meisten INI-Dateien und wird
nach Microsoft [19] deniert als eine

zentrale hierarchische Datenbank, in der wichtige Informationen ber System-


konguration, Benutzer, Anwendungen und Hardwaregerte abgelegt sind.

Die Registry besteht aus einer Gruppe von Schlsseln (keys), Unterschlsseln
(subkeys) und jeweiligen Werten (values).

Hive Bei der Registry-Datenbank handelt es sich nicht nur um eine einzelne Da-
tei, sondern sie setzt sich aus mehreren diskreten Dateien zusammen, den
sogenannten Hives. Die Hives benden sich mit Ausnahme des Schlssels
HKEY_CURRENT_USER im Ordner SystemRoot/System32/Cong. Eben genannter
Schlssel ist je nach Benutzer im Verzeichnis SystemRoot/Proles/<Benutzername>
abgelegt [20, 21]. Informationen zu den Wurzelschlsseln, die jeweils einen Zweig
der Registry festlegen, nden Sie in Tabelle 7.1.

Tabelle 7.1: Wurzelschls- Schlssel Beschreibung


sel der Windows Registry HKEY_CURRENT_USER Informationen ber den derzeit angemel-
(HKCU) deten Benutzer und dessen prolgebun-
denen Kongurationen.
HKEY_USERS (HKU) Enthlt Informationen ber alle angeleg-
ten Benutzerprole auf dem Rechner.
HKEY_LOCAL_MACHINE Enthlt spezische Kongurationsin-
(HKLM) formationen fr den Rechner. Diese
Kongurationen gelten fr alle Benutzer
des Computers.
HKEY_CLASSES_ROOT Dieser Schlssel bietet eine Sicht aller
(HKCR) Anwendungskongurationen, d.h. benut-
zerspezische (HKEY_CURRENT_USER)
und systemweite Einstellungen
(HKEY_LOCAL_MACHINE).
HKEY_CURRENT_CONFIG Dieser Schlssel enthlt das Hardware-
(HKCC) prol des Rechners.

Plugin hivelist Zum Einstieg in die Untersuchung der Windows Registrierungsdatenbank nut-
zen wir das Plugin hivelist. Dieses sucht im Snapshot die virtuellen Adressen
7.5 Analyse des Arbeitsspeichers Seite 127

der Hive Dateien und gibt zustzlich den Verzeichnispfad zum Speicherort der
zugehrigen Datei auf der Festplatte aus (siehe Quelltext 7.5).

Quelltext 7.5: Plugin hivelist


Q
# volatility hivelist -f dump_copy.raw --profile=Win7SP1x86
Volatility Foundation Volatility Framework 2.4
Virtual Physical Name
---------- ---------- ----
0x898429c8 0x0f56e9c8 \REGISTRY\MACHINE\HARDWARE
0x8b980008 0x045f4008 \Device\HarddiskVolume1\Boot\BCD
0x8b9809c8 0x045f49c8 \SystemRoot\System32\Config\SOFTWARE
0x918b69c8 0x02fe09c8 \SystemRoot\System32\Config\DEFAULT
0x919d79c8 0x04ef39c8 \??\C:\Users\eve\ntuser.dat
0x919fe448 0x02642448
\??\C:\Windows\ServiceProfiles\LocalService\NTUSER.DAT
0x91a0f1f8 0x04da21f8 \SystemRoot\System32\Config\SECURITY
0x91a73870 0x08a8f870
\??\C:\Windows\ServiceProfiles\NetworkService\NTUSER.DAT
0x91ab2950 0x53df0950 \SystemRoot\System32\Config\SAM
0x95ea4410 0x55106410 \??\C:\System Volume Information\Syscache.hve
0x97e5e008 0x51316008
\??\C:\Users\eve\AppData\Local\Microsoft\Windows\UsrClass.dat
0x97f989c8 0x1a7699c8 \??\C:\Windows\System32\config\COMPONENTS
0x8980c5f0 0x025ec5f0 [no name]
0x8981a218 0x0f58c218 \REGISTRY\MACHINE\SYSTEM

Aus Quelltext 7.5 entnehmen wir, dass zum Zeitpunkt der Sicherung vermut- Beispielinformationen
lich nur der Benutzer eve angemeldet war. Dessen Prol, das dem Schlssel
HKEY_CURRENT_USER (HKCU) entspricht, wird in seiner ntuser.dat Datei in
seinem Benutzerverzeichnis gespeichert. Weiterhin sehen wir zum Beispiel, dass
die SAM (Security Accounts Manager) in den Hauptspeicher geladen ist; in ihr n-
den wir unter Anderem die hinterlegten Passworthashes zur Nutzeranmeldung.

Unter den Netzwerkverbindungen haben wir gesehen, dass der Rechner des Ver- Plugin hivedump
dchtigen mit mehreren Webservern verbunden war. Auerdem wissen wir aus
der Prozessliste, dass mehrere Instanzen des Internet Explorers liefen. Wir wollen
daher mit Hilfe der Registry weitere Informationen zu aufgerufenen Webseiten er-
halten. Dazu mssen wir aber den richtigen Schlssel (also Registry-Key) kennen,
der diese Informationen speichert. Um alle Schlssel innerhalb eines Registry-
Zweigs zu sehen, knnen wir das Plugin hivedump verwenden. Es bentigt die
virtuelle Adresse der zugehrigen Hive. Da wir uns fr das Surfverhalten des
Verdchtigen und damit fr nutzerbezogene Prolinformationen interessieren,
verwenden wir das Oset von HKEY_CURRENT_USER aus Quelltext 7.5, das
in der Datei C:\Users\eve\ntuser.dat gespeichert wird. Beispielhafte Ausgaben
Seite 128 Studienbrief 7 RAM Sicherung und Analyse

von hivedump fr den Zweig von HKCU und darin fr den Internet Explorer stellen
wir in Quelltext 7.6 dar.

Quelltext 7.6: Plugin hivedump


Q
# volatility hivedump -f dump_copy.raw --profile=Win7SP1x86 -o 0x919d79c8
Volatility Foundation Volatility Framework 2.4
----------------------------
[REMOVED]
2014-12-10 12:03:49 \Software\Microsoft\Internet Explorer\Suggested Sites
2014-12-15 08:17:23 \Software\Microsoft\Internet Explorer\TabbedBrowsing
2015-01-07 09:30:45 \Software\Microsoft\Internet Explorer\TypedUrls
2014-12-10 12:02:28 \Software\Microsoft\Internet Explorer\URLSearchHooks
2014-12-10 12:03:55 \Software\Microsoft\Internet Explorer\User Preferences
[REMOVED]

Unter den zahlreichen Ausgaben des Plugin hivedump stellen wir in Quelltext 7.6
exemplarisch 5 Registry-Keys von HKCU dar, die Informationen ber die nutzer-
bezogenen Informationen des Verdchtigen zum Internet Explorer vorhalten. Von
besonderem Interesse fr uns ist dabei der Registry-Schlssel TypedUrls, denn
dieser speichert die manuell eingegebenen URLs des Nutzers.

Plugin printkey Wenn wir den Bezeichner sowie den Pfad eines Registry-Schlssels kennen, so gibt
uns das Plugin printkey den zugehrigen Wert des Schlssels aus. Die Aufruf-
syntax sowie die Ausgabe fr den Schlssel TypedUrls stellen wir in Quelltext 7.7
dar. Dem Switch -K bergeben wir den Pfad des Registry-Keys, fr den wir uns
interessieren.

Quelltext 7.7: Plugin printkey


Q
# volatility printkey -f dump_copy.raw --profile=Win7SP1x86 \
-K "Software\Microsoft\Internet Explorer\TypedUrls"
Volatility Foundation Volatility Framework 2.4
Legend: (S) = Stable (V) = Volatile
----------------------------
Registry: \??\C:\Users\eve\ntuser.dat
Key name: TypedURLs (S)
Last updated: 2015-01-07 09:30:45 UTC+0000

Subkeys:

Values:
REG_SZ url1 : (S) http://spiegel.de/
REG_SZ url2 : (S) http://shiny-flakes.com/
REG_SZ url3 : (S) http://google.de/
REG_SZ url4 : (S) http://go.microsoft.com/fwlink/?LinkId=69157

Key TypedUrls Aus Quelltext 7.7 sehen wir, dass vier URLs im Registry-Schlssel TypedUrls
dauerhaft (also Stable) gespeichert sind also vermutlich vom Verdchtigen
manuell eingegeben wurden. Dieser Registry-Schlssel hat keine Subkeys, zuletzt
wurde er am 07. Januar 2015 um 09:30 Uhr Weltzeit gespeichert. Unter den vier
manuell eingegeben URLs sind drei vermutlich unverdchtige URLs, wir entdecken
aber auch die URL http://shiny-akes.com, die uns bei der Ermittlung interessiert.
Der Screenshot der Webseite ist in Abbildung 7.2 dargestellt. Vermutlich hat diese
Seite mit Drogen zu tun.
7.5 Analyse des Arbeitsspeichers Seite 129

Abb. 7.2: berprfung


der Webseite shiny-
akes.com.

Internet Explorer
Nachdem wir nun Informationen mittels der Registry aus dem RAM-Dump ex- Plugin iehistory
trahiert haben, sehen wir uns Applikationsdaten an. Wir vermuten, dass der Ver-
dchtige mittels des Internet Explorer die Drogenseite Shiny-Flakes betrachtet
hat. Das Volatility Plugin iehistory gibt uns die vollstndige Chronik des Inter-
net Explorers aus falls diese noch nicht gelscht wurde. Dies hat zum einen
den Vorteil, dass hierbei nicht nur die manuell eingegebenen URLs rekonstruiert
werden, sondern ebenfalls die Navigation innerhalb der Webseiten inklusive der
Seite 130 Studienbrief 7 RAM Sicherung und Analyse

Zugriszeiten. Weiterhin speichert die Chronik auch Zugrie auf lokale Dateien.
Der Aufruf sowie die Ausgabe des Plugins iehistory nden Sie in Quelltext 7.8.

Quelltext 7.8: Plugin iehistory


Q
# volatility iehistory -f dump_copy.raw --profile=Win7SP1x86
Volatility Foundation Volatility Framework 2.4
[REMOVED]
**************************************************
Process: 1136 explorer.exe
Cache type "URL " at 0x2ff5400
Record length: 0x100
Location: :2015010720150108: eve@file:///H:/a1-250x250.jpg
Last modified: 2015-01-07 10:29:40 UTC+0000
Last accessed: 2015-01-07 09:29:40 UTC+0000
File Offset: 0x100, Data Offset: 0x0, Data Length: 0x0
**************************************************
[REMOVED]
**************************************************
Process: 1136 explorer.exe
Cache type "URL " at 0x2ff5800
Record length: 0x100
Location: :2015010720150108: eve@https://www.shiny-flakes.com
Last modified: 2015-01-07 10:30:02 UTC+0000
Last accessed: 2015-01-07 09:30:02 UTC+0000
File Offset: 0x100, Data Offset: 0x0, Data Length: 0x0
**************************************************
[REMOVED]
**************************************************
Process: 1136 explorer.exe
Cache type "URL " at 0x2ff5a00
Record length: 0x100
Location: :2015010720150108:
eve@https://www.shiny-flakes.com/?post_type=product
Last modified: 2015-01-07 10:30:12 UTC+0000
Last accessed: 2015-01-07 09:30:12 UTC+0000
File Offset: 0x100, Data Offset: 0x0, Data Length: 0x0
**************************************************
[REMOVED]

In Quelltext 7.8 stellen wir von den zahlreichen Ausgaben von iehistory drei
Eintrge (Records) dar, die jeweils 256 Byte (also 0x100 Byte) belegen. Alle Eintrge
gehren zur Internet Explorer Instanz, die als PID 1136 luft. Wir sehen, dass
der Verdchtige vor dem Aufruf der Webseite shiny-flakes.com die lokale Datei
a1-250x250.jpg betrachtet hat vermutlich eine Bilddatei. Danach betrachtete
der Verdchtige die wohlbekannte Hauptseite der Domain shiny-flakes.com und
navigierte zehn Sekunden spter zur Produktsuche.

Truecrypt
Passphrase im Cache? Im letzten Schritt unserer Untersuchung gehen wir dem Hinweis aus Quelltext 7.3
nach, dass auf dem System ein Truecrypt-Container lief. Wenn mglich, wollen
wir die Passphrase des Containers aus dem Snapshot extrahieren. Dies ist davon
abhngig, ob der Verdchtige beim Einhngen des verschlsselten Containers
die Passphrase gecached hat. Eine gecachede Passphrase erlaubt zum Beispiel
7.5 Analyse des Arbeitsspeichers Seite 131

das automatische Einhngen eines Truecrypt-Containers beim Booten des Rech-


ners oder das mehrmalige Mounten whrend einer Sitzung ohne erneute Eingabe
der Passphrase. Aus Sicherheitsgrnden ist eine gecachede Passphrase nicht zu
empfehlen, wir hoen aber, dass der Verdchtige Usability hher priorisiert als Si-
cherheit. Andernfalls gewinnen wir zunchst nur die Information, dass vermutlich
ein Truecrypt-Container genutzt wurde.

Volatility bietet fr die Analyse von Truecrypt entsprechende Plugins. Ab Plugin truecryptpassphra-
Version 2.4 stehen die Plugins truecryptsummary, truecryptmaster sowie se
truecryptpassphrase standardmig zur Verfgung.

Quelltext 7.9: Plugin truecryptpassphrase


Q
# volatility truecryptpassphrase -f dump_copy.raw --profile=Win7SP1x86
Volatility Foundation Volatility Framework 2.4
Found at 0x94ae2064 length 12: antiforensik

Wie anhand Quelltext 7.9 zu sehen ist, enthlt das Speicherabbild die Passphra-
se antiforensik zum Entschlsseln des Truecrypt Containers, den wir z.B. im
Rahmen der Post-Mortem-Analyse vom Datentrger sichern. Um weitere Infor-
mationen aus dem Speicherabbild ber den Container zu erhalten (beispielswei-
se den Einhngepunkt, die Gre des Datentrgers, das im Container genutzte
Dateisystem oder den verwendeten Verschlsselungsalgorithmus samt Modus)
knnen wir die bereits angesprochenen Volatility Plugins truecryptmaster oder
truecryptsummary verwenden.

Abschluss des Fallbeispiels


Abschlieend wird erneut die Prfsumme der analysierten Arbeitskopie des Spei- Integrittsprfung
cherabbilds berechnet, um die Integritt der Arbeitskopie sicherzustellen. Quell-
text 7.10 entnehmen wir, dass die Arbeitskopie unverndert ist.

Quelltext 7.10: Abschlieende SHA-256 Hashwertberechnung


Q
# sha256sum dump_copy.raw
f13c3f8fd644caff6e1d17995ad32b732322bf0aa9a30e79f72f258c87fe507c
dump_copy.raw

Whrend der RAM-Analyse kamen mehrere Spuren ans Tageslicht, die den vor- Ergebnisprotokoll
geworfenen Verdacht des Drogenhandels besttigen knnen. Im Snapshot des
Hauptspeichers konnten wir Indizien nden, dass sich der Verdchtige auf einer
einschlgigen Drogen-Webseite aufhielt, deren URL er manuell also vermutlich
bewusst eingegeben hat. Wir haben ebenfalls einen verschlsselten Truecrypt
Container entdeckt, dessen Entschlsselungspassphrase im RAM vorgehalten wur-
de. Mit Hilfe dieser Passphrase knnen wir den Truecrypt Container im Rahmen
einer Post-Mortem Analyse untersuchen.

Insgesamt haben wir nur wesentliche Schritte vorgefhrt, so dass weitere Fra- bungen
gen ungeklrt bleiben. Diese sollen Sie in den bungen dieses Kapitels selbst
beantworten.
Seite 132 Studienbrief 7 RAM Sicherung und Analyse

7.6 Zusammenfassung
In diesem Studienbrief haben Sie sich das Wissen eines wesentlichen Aspekts der
Live Forensik angeeignet der Sicherung und Analyse des Arbeitsspeichers. Sie
sind sich der Vorteile sowie der Einschrnkungen der RAM-Analyse bewusst. Es ist
spezisch von Fall zu Fall eine Abwgung ber die Sinnhaftigkeit einer Sicherung
und Analyse des Arbeitsspeichers durchzufhren.

Vorteile Der Arbeitsspeicher bietet uns als IT-Forensiker zustzliche Informationen, die
nicht whrend der Post-Mortem Analyse des Datentrgers rekonstruiert werden
knnen, beispielsweise detaillierte Informationen ber laufende Prozesse, Dienste
oder Netzwerkverbindungen, ber den angemeldeten Benutzer sowie Passwrter
bzw. Passphrases im Klartext. Solche Informationen sind typischerweise bei IT-
forensischen Ermittlungen sehr hilfreich.

Nachteile Allerdings unterliegt der RAM einer stndigen Fluktuation. Die Informationen
sind also zeitlich kurz verfgbar. Des Weiteren ist bei dem Eingreifen in das System
eine Vernderung unvermeidbar. Daher muss zum einen sichergestellt werden,
dass diese nderungen so gering wie mglich ausfallen, zum anderen sollten die
Dokumentationsschritte besonders detailliert durchgefhrt werden. Das eingesetz-
te Sicherungswerkzeug sollte daher also nur geringst mgliche nderungen am
System durchfhren.

bung 7.1

Innerhalb der ersten bung sollen detaillierter Aussagen ber den angemel-
deten Benutzer des Systems gemacht werden. In der Windows Registrie-
rungsdatenbank existieren Werte eines Schlssel, welche einen berblick
ber die prolbezogenen Benutzerinformationen bieten. Finden und extra-
hieren Sie sowohl diesen Registrierungsschlssel als auch die dazugehrigen
Werte mittels Volatility.

Hinweis: Verwenden Sie das Plugin printkey.

bung 7.2

Die Windows Registrierungsdatenbank besitzt einen Schlssel, der die Be-
nutzernamen und dazugehrigen Passworthashes enthlt. Recherchieren
Sie den Namen des Schlssels und extrahieren Sie deren Inhalt. Mit wel-
cher kryptographischen Hashfunktion wurden die Passwrter der Nutzer
abgebildet, knnen die Klartextpasswrter wiederhergestellt werden?

Hinweis: Verwenden sie dazu die Volatility Plugins hivelist und hivedump

You might also like