Zum Inhalt springen Zur Navigation springen
IT-Forensik: Programmausführungen als digitale Beweismittel

IT-Forensik: Programmausführungen als digitale Beweismittel

Programmausführungen unter Windows bieten interessante Wege zur Gewinnung wertvoller Informationen in Bezug auf IT-forensische Untersuchungen. Egal, ob man auf der Suche nach Malware ist, vertragswidrige Benutzeraktivitäten im Fokus stehen oder man einen Datendiebstahl nachweisen möchte. In diesem Artikel werfen wir einen genaueren Blick auf einzelnen Artefakte, in denen Programmausführungen gespeichert werden und zeigen auf wie diese Informationen forensisch genutzt werden können.

An welchen Orten werden Programmausführungen gespeichert?

Viele Windows Artefakte speichern Aktivitäten von Programmausführungen. Hierbei ist jedoch darauf zu achten, nach was gesucht wird. Wenn man sich die Master File Table ($MFT) eines Systems betrachtet, wird man darin auch einige Interaktionen mit .exe Dateien finden. Diese Interaktionen müssen jedoch nicht bedeuten, dass diese Datei explizit ausgeführt wurde.

Im Folgenden wird auf verschiedene Artefakte eingegangen, welche Interaktionen mit ausführbaren Dateien speichern und Informationen dokumentieren, wie zum Beispiel:

  • Letzte Ausführung
  • Ort der Ausführung
  • Dauer der Ausführung und vieles mehr.

Wichtig zu beachten ist, dass manche dieser Artefakte (wie beispielsweise Prefetch Dateien) nur benutzerbezogen sind und daher bei einer Serveranalyse nicht vorhanden sind. Bei einer aktiven, forensischen Analyse wird dann von Fall zu Fall individuell betrachtet, bei welchen Artefakten es Sinn macht, sie zu analysieren und welche eine geringere Priorität haben.

Background Activity Monitor (BAM)

Pfad: C:\Windows\System32\Config\SYSTEM
Key: SYSTEM\<CurrentControlSet>\Services\bam\State\UserSettings\{SID}

Der Background Activity Monitor zeichnet auf wann eine ausführbare Datei/Programm das letzte Mal gestartet (executed) wurde und den Pfad der Ausführung. Nach sieben Tagen der Inaktivität werden die Einträge gelöscht. Ausgenommen hiervon sind Windows eigene Programmausführungen. Man findet den Background Activity Monitor, wie viele andere Windows Artefakte, im SYSTEM Hive von Windows. Dieser kann mit verschiedenen Tools ausgelesen werden. Der BAM speichert die Programmausführungen jeweils für die einzelnen Benutzer, die auf dem System angemeldet sind und ordnet diese nach ihrem User Security Identifier (SID).

RunMRU

Pfad: C:\Users\<User>\NTUSER.DAT
Key: NTUSER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU

Dieses Artefakt ist benutzerbezogen und zeichnet alle Programmausführungen auf, die über das Shortcut WIN + R ausgeführt wurden. Dieses Artefakt gibt jedoch nur den Zeitstempel des zuletzt ausgeführten Programmes an. Da diese Liste meist nicht viele Inhalte aufweist, kann hierüber jedoch schnell entdeckt werden, ob ein Angreifer über diesen Shortcut ein Programm ausgeführt hat.

User Assist

Pfad: C:\Users\<User>\NTUSER.DAT
Key: NTUSER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count

Dokumentation vieler Informationen ist durch UserAssist kein Problem, denn dieser Key protokolliert detailliert Folgendes:

  • Letzte Laufzeit
  • Anzahl der Läufe
  • Programmname
  • In Millisekunden: Gesamtzeit, in der ein Anwendungsfenster das aktive Fenster war, Gesamtzahl, in denen eine Anwendung das aktive Fenster auf dem GUI-Desktop war.

Hiermit kann sehr genau betrachtet werden, auf welches Programm man bei der IT Forensischen Analyse seinen Fokus legt, falls dieser nicht bekannt ist. Wenn ein Programm zum Datentransfer lange auf dem System gelaufen ist, aber dieses Programm gar nicht Bestandteil des Systems sein sollte, könnte das z.B. ein Indiz für einen Datenabfluss sein.

Wie der Name es verrät, ist dieses Artefakt ebenfalls benutzerbezogen und liegt in dessen NTUSER.DAT und kann mit verschiedenen Tools geladen und dann analysiert werden. Der folgende Screenshot zeigt eine vereinfachte und übersichtliche Darstellung der User Assist eines Benutzers. Ein Plugin des Tools, welches hier zur Analyse benutzt wurde, stellt die Daten übersichtlich dar. Wenn man jedoch noch mehr Details sehen möchte, muss man sich einen Überblick über die Rohdaten verschaffen. Diese sind ROT-13 Encoded.

Windows Prefetch Dateien

Pfad: C:\Windows\Prefetch

Prefetching ist ein Prozess, bei dem das Betriebssystem wichtige Daten und Codes von der Festplatte in den Arbeitsspeicher lädt, bevor sie benötigt werden. Es wird eine .pf Datei erstellt, nachdem ein Programm das erste Mal gestartet wurde. Dies soll die Performance auf Windows Systemen erhöhen. Diese Art von Dateien sind nur auf Windows Arbeitsplatzrechnern verfügbar, nicht jedoch auf Windows Servern.

Mit diesen Dateien kann forensisch nachgewiesen werden, dass eine Applikation auf dem System ausgeführt wurde, da der Name der Prefetch Datei den Namen der Applikation und den Hashwert dieser Applikation in hexadezimal enthält. In jeder Prefetch-Datei sind die Gesamtzahl der Ausführungsvorgänge einer Anwendung, der ursprüngliche Ausführungspfad, der letzte Ausführungszeitpunkt und weitere Informationen enthalten.

Diese Dateien können durchaus auch auf mehrere Ausführungen von Programmen deuten, die von unterschiedlichen Pfaden aus gestartet wurden. Ein Beispiel wäre hier die Ausführung von cmd.exe außerhalb des Pfades „C:\Windows\System32“. Wenn eine Ausführung außerhalb dieses Pfades stattgefunden hat, ist dies ein Zeichen dafür, dass explizit im angegebenen Pfad die Windows-Eingabeaufforderung geöffnet wurde, um dort möglicherweise ein anderes Programm über die Kommandozeile zu starten.

AmCache.hve

C:\Windows\appcompat\Programs\Amcache.hve

Der AmCache Key dient dazu, für alle ausführbaren Dateien auf dem System Informationen zur Verfügung zu stellen. Hierbei liegt der Fokus nicht auf der Anzahl, die er geöffnet oder gestartet wurde, sondern eher auf Informationen wie dem SHA1 Hashwert, Speicherorte der ausführbaren Datei, dem Last Write Timestamp, also der letzten Modifizierung oder auch der Produktname, der sich hinter der Datei versteckt.

Aus diesem Key können trotz dessen viele Informationen entnommen werden, die für eine weitere forensische Analyse von großer Bedeutung sein können. Es lohnt sich immer diesen Key unter die Lupe zu nehmen. Mit verschiedenen Tools kann der Amcache Hive geladen und analysiert werden.

Welche Erkenntnisse liefern Programmausführungen für die Untersuchung?

Programmausführungen sollten in einer IT-forensischen Untersuchung immer einen hohen Stellenwert zugeschrieben werden. Fast egal in welchem Szenario, hinterlassen Angreifer Spuren, die sich über die Programmausführungen nachweisen lassen können.

Die Informationen, die durch die Auswertung von Programmausführungen gewonnen werden, bieten wertvolle Einblicke in die Aktivitäten von Benutzer und Anwendungen auf einem System. Nicht nur auf einem Arbeitsplatzrechner, der Windows als Betriebssystem betreibt, können solche Programmausführungen ausgewertet werden. Auch auf Windows Servern ist dies möglich und ebenso nützlich.

Die Rekonstruktion eines schädlichen Befalls auf einem System, wäre ohne die angesprochene Auswertung nicht wirklich möglich. Durch die Analyse von Programmabläufen können verdächtige oder bösartige Aktivitäten identifiziert und die zeitliche Abfolge von Aktionen meist sehr gut rekonstruiert werden.

Durch die Nachverfolgung der gespeicherten Pfade in manchen Artefakten und Keys, kann der Weg der Malware oft nachverfolgt werden und es kann sich nach und nach in Richtung Einfallstor bewegt werden. Somit kann der Ursprung und die Verbreitung der Schadsoftware auf dem Windows-System aufgedeckt werden.

Ebenso bei Einwirkung oder auch Sabotage von innen durch Mitarbeitende, können Programmausführungen dabei helfen, Szenarien aufzuklären, in denen diese einem Unternehmen Schaden zufügen wollten oder zugefügt haben. Dabei kann oft sogar bis zum Täter zurückverfolgt werden, wie dieser vorgegangen ist. Bei Einwirkung  von außerhalb eines Netzwerkes durch Dritte, steht bei der Identifizierung der Täter oft eine größere Hürde im Weg, das Internet.

Aber auch bei Systemproblemen oder der Optimierung der Systemleistung kann die forensische Untersuchung von Programmausführungen helfen. Durch verschiedene Keys kann betrachtet werden, inwiefern eine Anwendung möglicherweise mehr CPU-Auslastung produziert, als diese eigentlich sollte.

Durch die zahlreichen Zeitstempel, die man durch Programmausführungen zur Verfügung gestellt bekommt, ist es oft möglich, eine übersichtliche Timeline zu erstellen, mit der das Szenario nachvollzogen werden kann können.

Neue Chancen und Herausforderungen in Programmausführungen

Da sich Software stetig weiterentwickelt, stehen IT-Forensiker zukünftig auch immer wieder vor neuen Herausforderungen, was die Analyse von Programmausführungen unter Windows betrifft. Mit der Einführung von Windows 11 haben sich zuletzt  wieder kleine Änderungen an den Speicherorten mancher Artefakte ergeben. Hinzu kommt die steigende Komplexität von Anwendungen und Betriebssystemen. Diese erfordert innovative Ansätze in der IT-Forensik, um die forensische Nutzung von Programmausführungen optimieren zu können.

Forensische Experten, Sicherheitsfirmen und auch Softwareentwickler sind jedoch stets bestrebt, sich diesem Thema zu stellen und zusammen an einem Strang zu ziehen, damit man auch zukünftig Artefakte gut analysieren und sich den angesprochenen Herausforderungen stellen kann.

Informieren Sie sich über unsere praxisnahen Webinare
  • »Microsoft 365 sicher gestalten«
  • »Informationspflichten nach DSGVO«
  • »Auftragsverarbeitung in der Praxis«
  • »DSGVO-konformes Löschen«
  • »IT-Notfall Ransomware«
  • »Bewerber- und Beschäftigtendatenschutz«
Webinare entdecken
Mit dem Code „Webinar2024B“ erhalten Sie 10% Rabatt, gültig bis zum 30.06.2024.
Beitrag kommentieren
Fehler entdeckt oder Themenvorschlag? Kontaktieren Sie uns anonym hier.
Die von Ihnen verfassten Kommentare erscheinen nicht sofort, sondern erst nach Prüfung und Freigabe durch unseren Administrator. Bitte beachten Sie auch unsere Nutzungsbedingungen und unsere Datenschutzerklärung.