Countering Anti-Forensics with Virtualization Technology

Files
18165_RalphPalutkeDissertation.pdf (3.7 MB)
Hinweis: Tag der mündlichen Prüfung ist der 22.12.2021! Gemäß den Richtlinien des Repositories kann diese Angabe in der PDF-Datei leider nicht mehr korrigiert werden.

Language
en
Document Type
Doctoral Thesis
Issue Date
2022-01-31
Issue Year
2022
Authors
Palutke, Ralph
Editor
Abstract

This thesis investigates novel anti-forensic techniques for hiding malicious activity and proposes counter strategies for conducting robust digital analysis through virtualization technology. We begin by surveying the current landscape of memory acquisition, a technique extensively used during forensic investigations. In order to evade analysis, malware nowadays incorporates sophisticated anti-forensics, which hinder the analysis process. We present advances in anti-forensics by introducing new methods for hiding memory from analysis tools to expand existing knowledge. The final part demonstrates analysis techniques that provide resilience against anti-forensics.

First, we define a universal taxonomy of different methods for acquiring a system’s memory, many of which have proven to be vital against modern malware threats. Then, based on this taxonomy, we comprehensively survey the field of modern memory acquisition, abstracting from both Operating Systems (OSs) and specific hardware architectures. Finally, we unveil the limitations of today’s acquisition techniques and conclude that most approaches are prone to anti-forensics, enabling malware to subvert the analysis process and escape the investigation.

In the second part, we introduce new approaches that hide memory from forensic applications, preventing analysts from accessing the content of specific regions. On the one hand, we manipulate the memory management subsystem of different OSs to alter the memory view of live forensic tools. In addition, we demonstrate different strategies to detect these subversion techniques, providing a possibility to improve respective tools. With Styx, on the other hand, we present a powerful rootkit technique that leverages hardware-based virtualization to counter even robust acquisition methods. Styx subverts the highly privileged hypervisor layer to take complete control over a system without introducing detectable modifications. Furthermore, to prevent acquisition software from noticing the rootkit’s memory footprint, Styx locates in particular memory regions reserved for device mappings. As these regions are not always entirely consumed by devices, the resulting offcuts serve our rootkit as a perfect hiding spot. Furthermore, by simulating invalid address ranges which are not accessible to a processor, Styx deceives forensic tools with a tampered view on these leftovers.

Finally, we demonstrate the design of anti-forensic resilient systems which enable a forensically robust analysis through virtualization. We first present SEVGuard which protects (forensic) applications from malicious threats operating at the highest privilege levels. Based on virtualization and encryption features of modern processor architectures, SEVGuard provides a secure execution environment that enforces confidentiality and integrity of existing applications by encrypting their memory and processor state. Instead of protecting an application, StealthProbes hides the analysis component from the examined target, giving analysts the chance to inspect its functionality without risking the sample to notice the investigation. Our system stealthily instruments an application’s memory and hides these modifications, leveraging the latest virtualization features and exploiting cache incoherencies that arise from memory address translations. Furthermore, StealthProbes integrates a transparent function-level tracer for enabling deep insight into an application’s runtime behavior. As a result, even programs that thwart the analysis by enforcing code integrity are stealthily dissectable. For achieving a forensically sound investigation, the actual deployment or execution of a forensic method must not alter the state of an analyzed system. With HyperLeech, we present a minimally invasive approach which uses Direct Memory Access (DMA) to stealthily deploy a forensic hypervisor through external Peripheral Component Interconnect Express (PCIe) hardware. The hypervisor transparently virtualizes the running target system, serving analysts as a stealthy and privileged execution layer for all kinds of forensic tasks. Without causing a notable impact on the target’s state, HyperLeech enables forensic methods to execute without the risk of destroying evidence or alerting malware.

Abstract

In dieser Arbeit untersuchen wir neuartige, anti-forensische Techniken zum Verbergen maliziöser Aktivitäten und schlagen robuste Gegenstrategien zur Durchführung digitaler Analysen mithilfe von Virtualisierungstechnologie vor. Wir beginnen mit einem Überblick aktueller Methoden der Speicherakquise, einer Technik, die bei forensischen Untersuchungen häufig Einsatz findet. Zur Verhinderung solcher Analysen nutzt Schadsoftware heutzutage ausgefeilte, anti-forensische Methoden. Zur Erweiterung bestehenden Wissens präsentieren wir neue, anti-forensische Ansätze, welche es ermöglichen, Speicher vor forensischen Werkzeugen zu verbergen. Abschließend zeigen wir neue Analysetechniken, die anti-forensischen Maßnahmen entgegen wirken.

Zunächst strukturieren wir das Gebiet der modernen Speicherakquise anhand einer eigens definierten Taxonomie, welche die jeweiligen Techniken sowohl von Betriebssystemen als auch von spezifischen Hardwarearchitekturen abstrahiert. Obwohl sich viele dieser Techniken als hilfreich für die Analyse moderner Schadsoftwarebedrohungen erwiesen haben, zeigen wir in diesem Zuge die Grenzen ihrer Funktionsweise auf. Wir kommen zu dem Schluss, dass die meisten existierenden Ansätze anfällig für anti-forensische Maßnahmen sind, sodass Schadsoftware den Analyseprozess untergraben und der Untersuchung entgehen kann.

Im Anschluss präsentieren wir neue Ansätze, die es ermöglichen, Speicher vor forensischen Anwendungen zu verbergen, sodass Analysten der Zugriff auf den Inhalt bestimmter Bereiche verwehrt wird. In diesem Zuge manipulieren wir die Speicherverwaltung verschiedener Betriebssysteme, um die Speicheransicht forensischer Anwendungen zu verfälschen. Darüber hinaus zeigen wir verschiedene Strategien zur Erkennung dieser Techniken und schaffen damit die Grundlage zur Verbesserung forensischer Software. Mit Styx erläutern wir des Weiteren eine Rootkit-Technik, die auf Grundlage hardwarebasierter Virtualisierung selbst robusten Speicherakquisemethoden entgegenwirkt. Styx unterwandert den hochprivilegierten Hypervisor-Modus, um die vollständige Kontrolle über ein System zu erlangen, ohne dieses erkennbar modifizieren zu müssen. Um zu verhindern, dass die Speicherbereiche des Rootkits erkannt werden können, platziert sich Styx in speziellen Regionen, die eigentlich für Peripheriegeräte reserviert sind. Da diese Speicherbereiche nicht immer vollständig von Geräten belegt werden, dienen die ungenutzten Überreste als perfektes Versteck für unser Rootkit. Durch die Simulation von Adressbereichen, die Prozessoren unzugänglich sind, täuscht Styx forensische Anwendungen mit einer manipulierten Ansicht auf diese Speicherbereiche.

Schließlich elaborieren wir die Architektur verschiedener Analysesysteme, welche mittels Virtualisierung verhindern, dass anti-forensische Methoden die Untersuchungsergebnisse verfälschen. Beginnend mit dem System SEVGuard, demonstrieren wir, wie (forensische) Anwendungen vor böswilligen Manipulationen geschützt werden können. Basierend auf den Virtualisierungs- und Verschlüsselungsfunktionen moderner Prozessorarchitekturen bietet SEVGuard eine sichere Ausführungsumgebung, die die Vertraulichkeit und Integrität existierender Anwendungen durch Verschlüsselung ihres Speichers und Prozessorzustands gewährleistet. Statt eine Analysekomponente zu schützen, versteckt StealthProbes diese vor dem untersuchten Zielprogramm, sodass dieses unbemerkt analysiert werden kann. StealthProbes instrumentiert im Verborgenen den Speicher einer Anwendung, indem es die neuesten Virtualisierungsfunktionen sowie Cache-Inkohärenzen, die sich aus der Übersetzung von Speicheradressen ergeben, ausnutzt. Unser Prototyp integriert eine Tracerkomponente, welche transparent Einblicke in das Laufzeitverhalten einer Anwendung ermöglicht. Infolgedessen können sogar Programme, die es zum Ziel haben, ihre Analyse durch Erzwingen von Code-Integrität zu vereiteln, verdeckt untersucht werden. Um eine fundierte Analyse zu gewährleisten, sollte der Zustand eines untersuchten Systems nicht durch die Installation oder Ausführung einer forensischen Methode verändert werden. Mit HyperLeech präsentieren wir einen minimalinvasiven Ansatz, der DMA verwendet, um einen forensischen Hypervisor transparent über externe Peripheral Component Interconnect Express (PCIe) Hardware in ein System einzuschleusen. Der Hypervisor virtualisiert das laufende Zielsystem und dient Analysten als verborgene und privilegierte Ausführungsumgebung für unterschiedlichste Arten forensischer Aufgaben. Ohne nennenswerten Einfluss auf den Zustand des Zielssystems zu nehmen, ermöglicht HyperLeech die Durchführung forensischer Maßnahmen, ohne Beweise zu vernichten oder Schadsoftware zu alarmieren.

DOI
Faculties & Collections
Zugehörige ORCIDs