Speicheranalyse

Persistenz der Speicherinhalte

In ihrem Buch Forensic Discover sprechen Dan Farmer und Wietse Venema über die Persistenz von Inhalten des Hauptspeichers. Ich hatte derartiges noch nicht beobachten können - bis ich mir die Speicherabbilder der DFRWS Memory Analysis Challenge genauer angesehen habe.

Im Kapitel 8.16 ihres Buchs Forensic Discovery schreiben Dan Farmer und Wietse Venema zur Persistenz von Hauptseicherinhalten über einen Neustart hinweg:

Although most computers automatically zero main memory upon rebooting - many do not. This is generally independent of the operating system; for instance, motherboards fueled by Intel CPUs tend to have BIOS settings that clear main memory upon restart, but there is no requirement for this to happen.

Ich hatte bislang noch keine Speicherinhalte einen Neustart überstehen sehen. Wahrscheinlich habe ich immer die falsche Hardware verwendet. Glücklicherweise ist nun ein derartiger (seltener?) Fall dokumentiert worden, nämlich in den öffentlich verfügbaren Speicherabbildern der DFRWS Memory Analysis Challenge. Den im Abbild konservierten BIOS-Daten nach handelt es sich um ein Sony Vaio Notebook des Typs PCG-R505TLK. Eine Auflistung seiner Komponenten gibt es bei Sonys Online-Support. Die Hauptbestandteile sind ein Intel Celeron Prozessor und ein Chipsatz der 815er Reihe. Das BIOS von Phoenix Technologies ist die Version R0202U1 vom 26.06.2001.

Beide Speicherabbilder habe ich mit ptfinder --nothreads bearbeitet. Hier sind die Ergebnisse für die Abbilder Nr. 1 und 2.

Kntlist, eines der beiden in der Memory Analysis Challenge siegreichen Programme, berechnet die Startzeit aus der Kernel-Variablen KeBootTime für das erste Speicherabbild zu 2005-06-05 00:32:27Z.

Vergleichen Sie diese Zeit bitte mit den Ergebnissen von PTfinder. Es gibt etliche Prozesse, die etwa zu dieser Zeit gestartet wurden. Allerdings gibt es auch Spuren dreier Prozesse, die bedeutend früher gestartet wurden:

  1. 2005-06-03 01:25:53Z csrss.exe, PID 168
  2. 2005-06-03 01:25:54Z winlogon.exe, PID 164
  3. 2005-06-04 23:36:31Z winlogon.exe, PID 176

Obwohl keine Endzeit verzeichnet ist, halte ich es für nahezu ausgeschlossen, dass diese Prozesse noch aktiv sind. Kntlist konnte keinen dieser Prozesse nachweisen, obwohl es kernel-interne Listen von Prozessen, Threads und Handles abgleicht. Außerdem ist eine weitere Instanz von winlogon.exe mit der PID 176 erkennbar (Beachten Sie bitte die doppelte PID!) die am 2005-06-05 00:32:44Z gestartet wurde, was der mutmaßlichen Startzeit des Computers entspricht.

Leider ist nicht dokumentiert, was mit dem Computer bis zur ersten Sicherung des Speicherinhaltes geschah. Für das weitere Vorgehen ist aber auf der Webseite des DFRWS zu lesen:

In addition, while he was attempting to create forensic duplicate of the drive, the system rebooted unexpectedly. When the system came back up, Daniels acquired the physical memory again [...].

Betrachten wir deshalb das nach dem Neustart erstellte zweite Abbild. Kntlist ermittelt den Startzeitpunkt auf 2005-06-05 15:00:56Z. Abermals gibt es Spuren dreier Prozesse, die vor diesem Zeitpunkt gestartet wurden:

  1. 2005-06-05 00:32:43Z csrss.exe, PID 180
  2. 2005-06-03 01:25:53Z csrss.exe, PID 168
  3. 2005-06-05 00:32:40Z smss.exe, PID 156

Der erste und dritte Prozess waren noch aktiv, als das System wie berichtet abstürzte und neu startete. Zu diesem Zeitpunkt existierte bereits das Artefakt des zweiten Prozesses; es ist auch bereits im ersten Abbild zu erkennen. Dies zeigt, dass zumindest Teile des Hauptspeicherinhalts einen Neustart unverändert überstehen können.

English

International edition

Rubriken

Abonnieren

Impressum

Dieses Blog ist ein Projekt von:
Andreas Schuster
Im Äuelchen 45
D-53177 Bonn
impressum@forensikblog.de

Copyright © 2005-2010 by
Andreas Schuster
Alle Rechte vorbehalten.