Master Arbeit
Total Page:16
File Type:pdf, Size:1020Kb
Hochschule Wismar Fakultät für Ingenieurwissenschaften WINGS Studiengang IT Sicherheit und Forensik Master-Thesis Capabilities of Live/Memory-Forensics on Compartmentalized Systems Using Bromium, Qubes and Proxmox as Examples Eingereicht am: 31. August 2019 von: Ute Schüller Matrikelnummer: XXXXXX Erstgutachter: Prof. Dr.-Ing. A. Raab-Düsterhöft Zweitgutachter: Prof. Dr.-Ing. A. Ahrens Scope of Work Scope of Work With the constantly increasing digitalization of daily life, there is also a rising number of attacks, against private as well as company computers. One of the options to reduce those risks, is the usage of operating systems or software, that provide compartments (aka. sandboxes or containers), when working on a network-connected computer. Despite the reduced risks, sometimes the need for live/memory-forensics arises on those systems, as well. How to perform such an analysis, is well-documented for e.g. VMware; nevertheless, for Bromium, Qubes and Proxmox, there is not much literature available. Consequently, the aim of this master thesis is to investigate the available options for those 3 operating systems. On one Hand, this includes examining the systems for already present IT-forensic capabilities, and, on the other hand, investigating additional possibilities to collect live/memory forensic data, that can be gathered, using freely available software like Rekall or Proxmox. Additionally, commercial software (Axiom, EnCase, X-Ways and Nuix) should be looked at, to find out, which possibilities are available, within those programs. Finally, if possible, a half-automated data collection on Qubes should be implemented, for later IT-forensic investigation. In GERMAN: Titel: Möglichkeiten der Live/Memory-Forensik auf kompartimentierten Systeme am Beispiel von Bromium, Qubes und Proxmox Aufgabenstellung Mit der stetig wachsenden Digitalisierung des täglichen Lebens, wächst auch die Anzahl der Angriffe auf private, wie auch auf Firmen-Computer. Eine der Möglichkeiten den entsprechenden Risiken entgegenzuwirken, ist die Nutzung von Betriebssystemen oder Software, die Kompartimente (bzw. Sandboxen oder Container) zur Verfügung stellen. Trotz der geringeren Risiken besteht auch auf solchen Systemen immer wieder die Notwendigkeit zur Live-/Memory- Forensik. Diese ist z.B. für VMware recht gut dokumentiert, jedoch gibt es wenig entsprechende Literatur zu Bromium, Qubes und Proxmox. Daher ist es das Ziel dieser Masterarbeit, die Live/Memory-forensischen Möglichkeiten auf diesen drei Betriebssystemen zu untersuchen. Einerseits sollen dabei die bereits vorhandenen Analyse- bzw. Auswertungsmöglichkeiten der Systeme betrachtet werden und andererseits, welche weiteren Möglichkeiten sich bei Nutzung von frei verfügbarer Software wie Rekall und Volatility ergeben. Zusätzlich soll betrachtet werden inwieweit kommerzielle Software, wie Axiom, EnCase, X-Ways und Nuix für eine entsprechende Untersuchung in Frage kommen. Darüber hinaus, sollte möglichst eine halb-automatisierte Datensammlung in Qubes implementiert werden, die dann für spätere IT-forensischen Untersuchungen genutzt werden kann. 3 Abstract Abstract This thesis discusses memory forensics on compartmentalized systems. For specialized systems like Bromium, Qubes and Proxmox there is not much related literature available. Consequently those 3 operating systems should be focused. With the focus on the specials of compartmentalized systems, possible options, like creating memory images within the guest systems and performing memory forensics on those images or live analysis within the VMs, will not be investigated, as an analysis of this type, does not much differ from an analysis performed for a non-compartmentalized system. Additionally, as this work tries to find possible options for memory forensics in these environments, it does not focus on gathering court-proof evidence. As has been found during this work, memory forensics is very fragile, slight changes in installed libraries, kernel versions, etc. might immediately break the whole process. On the windows based Bromium installation, there are the best chances, to gather memory images and to perform virtual machine introspection (VMI). On Proxmox, it is at least possible, to inspect the running host system; whereas tools like vmscan in Rekall failed to find the EPT values for further inspection of the running VMs. With Qubes, it was not even possible to generate reliable memory images and consequently, none of the tools was able to perform memory forensics. And without any possibility to generate reliable memory images on Qubes (not even manually), implementing an automated approach was not possible, either. Kurzreferat Diese Masterarbeit behandelt Memory Forensik auf kompartimentierten Systemen. Für spezialisierte Systemen, wie Bromium, Qubes und Proxmox gibt es nur wenig entsprechende Literatur. zu. Daher sollen diese drei Systeme untersucht werden. Da der Fokus auf den Besonderheiten von kompartimentierten Systemen liegt, werden mögliche Optionen, wie das Erzeugen von Memory Images innerhalb von Gast-Systemen (VMs) und das Analysieren dieser Images oder das Durchführen von Live Memory Forensik innerhalb der VMs nicht betrachtet, da sie kaum Unterschiede zur Analyse auf nicht-kompartimentierten Systemen aufweisen. Auch will diese Arbeit Möglichkeiten der Memory Forensik in kompartimentierten Umgebungen finden. Der Fokus liegt hingegen nicht darauf, dass die Ergebnisse bereits gerichtsverwertbare Beweise liefern. Wie bei dieser Arbeit herausgefunden wurde, ist Memory Forensik eine sehr fehleranfällige Sache. Bereits kleine Abweichungen bei den installierten Libraries oder Kernel Versionen, können umgehend dazu führen, dass der gesamte Analyse-Prozess nicht mehr funktioniert. Auf einer windows-basierten Bromium Installation bestehen generell die besten Möglichkeiten, Memory Images zu erzeugen und die zugehörigen virtuellen Maschinen zu inspizieren. Auf Proxmox ist es immerhin möglich, das Host-System zu analysieren, jedoch sind Tools wie vmscan dort nicht in der Lage, EPT-Werte zur weiteren Untersuchung der laufenden VMs zu finden. Und mit Qubes war es noch nicht einmal möglich, vertrauenswürdige Memory Images zu erzeugen und somit war keines der verwendeten Tools in der Lage, hier Memory Forensik durchzuführen. Ohne die Möglichkeit (wenigstens manuell) vertrauenswürdige Memory Images zu erzeugen, war es folglich auch nicht möglich, diese automatisch zu generieren. 4 Table of Content Table of Content 1 Introduction.................................................................................................................................. 9 1.1 Motivation ................................................................................................................................. 9 1.2 Goals ........................................................................................................................................ 10 1.3 Project Partners ....................................................................................................................... 10 1.4 Acknowledgments ................................................................................................................... 11 1.5 Structure of this thesis ............................................................................................................. 11 2 Basic Information ....................................................................................................................... 12 2.1 Fundamental Terms ................................................................................................................. 12 2.2 General Description of the Operating/Test Systems ............................................................... 14 2.2.1 Bromium ............................................................................................................................. 14 2.2.2 Qubes.................................................................................................................................. 17 2.2.3 Proxmox .............................................................................................................................. 20 2.2.4 OS Overview / Comparison................................................................................................. 21 2.2.5 SIFT Workstation ................................................................................................................ 21 2.3 Tools for (Memory) Forensics .................................................................................................. 22 2.3.1 Volatility (free) .................................................................................................................... 22 2.3.2 Rekall (free) ........................................................................................................................ 22 2.3.3 Magnet Axiom (commercial) .............................................................................................. 23 2.3.4 Nuix (commercial) .............................................................................................................. 24 2.3.5 X-Ways Forensics (commercial) .......................................................................................... 24 2.3.6 EnCase Forensic (commercial) ............................................................................................ 24 2.3.7 SIFT Workstation ................................................................................................................ 25 2.4 Tools