Forensic Acquisition and Analysis of Volatile Data in Memory

Forensic Acquisition and Analysis of Volatile Data in Memory

Forensic Acquisition and Analysis of Volatile Data in Memory Forensische Sicherung und Auswertung fl¨uchtiger Daten im Hauptspeicher Der Technischen Fakult¨atder Friedrich-Alexander-Universit¨at Erlangen-N¨urnberg zur Erlangung des Grades DOKTOR-INGENIEUR vorgelegt von Stefan Vomel¨ aus Limburg an der Lahn Als Dissertation genehmigt von der Technischen Fakult¨atder Friedrich-Alexander-Universit¨at Erlangen-N¨urnberg Tag der m¨undlichen Pr¨ufung: 18.12.2013 Vorsitzende des Promotionsorgans: Prof. Dr.-Ing. habil. Marion Merklein Gutachter: Prof. Dr.-Ing. Felix Freiling Dr. Pavel Gladyshev Posvwaets Leroqke. Abstract Standard procedures in computer forensics mainly describe the acquisition and analysis of persistent data, e.g., of hard drives or attached devices. However, due to the in- creasing storage capacity of these media and, correspondingly, significantly larger data volumes, creating forensically-sound duplicates and recovering valuable artifacts in time gets more and more challenging. Moreover, with the wide availability of free and easy- to-use encryption technologies, a growing number of individuals actively try to protect personal information against unauthorized access. If a suspect is unwilling to share the respective decryption key such measures can therefore quickly thwart an investigation. Last but not least, many sophisticated malicious applications entirely run in memory to date and do not leave any traces on hard disks anymore. Solely focusing on traditional sources can thus lead to an incomplete or inaccurate picture of an incident. In order to cope with these issues, researchers have proposed alternative investigative strategies and extracting pieces of evidence from a computer's RAM. For this purpose, a so-called memory snapshot is taken and inspected offline on a trusted workstation. These activ- ities known as memory forensics have gained broad attention among practitioners over the last years, primarily because operations are repeatable and may be safely verified by other experts without polluting the system environment as, for instance, in a live response situation. In this thesis, we give a comprehensive overview of fundamental concepts and approaches for seizing as well as examining volatile information. It consists of two parts: In the first part, we formalize criteria for sound memory imaging and illustrate the characteristics, benefits, and drawbacks of proven acquisition technologies available on the market to date. As we will see, especially for software-based solutions it is difficult to produce reliable memory snapshots, because the system state cannot be effectively frozen dur- ing runtime. With the help of an evaluation platform that we have developed in the course of the dissertation period, the performance and quality of software imagers can be thoroughly assessed for the first time. In the second part of this thesis, we explain how common system compromise and manipulation techniques as they are typically employed by rootkits or other types of intelligent malware can be discovered during memory analysis. We also present rkfinder, a new plug-in for the popular, open source forensic suite DFF that facilitates some of these tasks. Rkfinder implements cross-viewing algorithms for checking the integrity of a machine and detecting possible inconsistencies that indicate the presence of a threat. By automatically highlighting suspicious resources that are likely to have been tampered with, even less experienced investigators are able to identify system areas that require particular attention. Thereby, potential sources of an intrusion can be quickly found and addressed. Zusammenfassung Standardvorgehensweisen im Bereich der Computerforensik beschreiben mehrheitlich die Sicherstellung und Analyse persistenter Daten, zum Beispiel auf Festplatten oder extern angeschlossenen Ger¨aten. Auf Grund der zunehmend gr¨oßeren Speicherkapa- zit¨at eingesetzter Medien und den damit verbundenen stetig wachsenden Datenmengen, ist eine zeitgerechte Erstellung forensisch sauberer Duplikate sowie eine anschließende Beweismitteluntersuchung mit immer mehr Schwierigkeiten verbunden. Mit der hohen Verfugbarkeit¨ von kostenlosen und einfach zu bedienenden Verschlusselungswerkzeugen¨ nimmt die Zahl von Personen, die sensible Informationen bewusst gegen unberechtigten Zugriff zu schutzen¨ versuchen, weiterhin zu. Sofern ein Verd¨achtigter in einem solchem Fall nicht dazu bereit ist, den entsprechenden Dechiffrierungsschlussel¨ einem Ermittler mitzuteilen, k¨onnen derartige Maßnahmen maßgeblich den Erfolg einer Untersuchung gef¨ahrden. Daruber¨ hinaus wurden in der Vergangenheit zahlreiche Beispiele hochent- wickelter Schadprogramme dokumentiert, die ihre Aktivit¨aten nur noch ausschließlich im Hauptspeicher eines Systems ausfuhren¨ und keine Spuren auf persistenten Daten- tr¨agern mehr hinterlassen. Die Einschr¨ankung von Untersuchungsmethoden auf tradi- tionelle Quellen einer Computerinfektion kann daher zu einem unvollst¨andigen oder un- genauen Bild eines Vorfalles fuhren.¨ Um den zuvor beschriebenen Missst¨anden entgegen zu wirken, entwickelten Forscher alternative Untersuchungsstrategien und schlugen eine Beweismittelextrahierung aus den Daten des Arbeitsspeichers vor. Zu diesem Zweck muss zun¨achst ein so genannter Schnappschuss des Hauptsspeichers angelegt werden, der im n¨achsten Schritt zur wei- teren Analyse auf eine vertrauenswurdige¨ Arbeitsstation transferiert wird. Die im Rah- men dieser Hauptspeicherforensik vorgenommenen T¨atigkeiten sind sowohl wiederhol- als auch durch andere Experten nachvollziehbar und sind deshalb als forensisch sauberer zu bewerten als entsprechende Live-Untersuchungen w¨ahrend des laufenden Betriebs. In dieser Arbeit stellen wir die grundlegenden Konzepte und Ans¨atze zur Sicherstellung und Analyse volatiler (fluchtiger)¨ Daten im Hauptspeicher umfassend dar. Gegenstand des ersten Teils ist eine Formalisierung geeigneter Kriterien fur¨ eine zuverl¨assige Daten- sicherung. Wir beschreiben ebenfalls die Eigenschaften sowie Vor- und Nachteile h¨aufig verwendeter Akquirierungstechnologien. Wie wir weiter ausfuhren¨ werden, ist insbeson- dere eine geeignete Abbilderstellung fur¨ softwarebasierte L¨osungen schwierig, da der Systemzustand zur Laufzeit nicht effektiv eingefroren werden kann. Die Qualit¨at dieser Werkzeuge kann mit Hilfe einer Evaluationsplattform, die durch den Autor w¨ahrend der Dissertationszeit entwickelt wurde, zum ersten Mal detailliert beurteilt und nachvollzo- gen werden. Im zweiten Teil dieser Arbeit erl¨autern wir, wie g¨angige Systemkompromittierungs- und Manipulationstechniken durch Hauptspeicheranalysemethoden erkannt werden k¨onnen. Derartige Techniken werden typischerweise von Rootkits und anderen Arten intelligenter Schadprogramme eingesetzt. Wir stellen ebenfalls das neue Erweiterungsmodul rkfin- der fur¨ die beliebte und frei verfugbare¨ Forensikapplikation DFF vor. Rkfinder nutzt so genannte Cross-Viewing-Algorithmen, mit denen die Integrit¨at des Betriebssystems uberpr¨ uft¨ sowie m¨ogliche Systeminkonsistenzen festgestellt werden k¨onnen, die auf eine Schadprogramminfektion hinweisen. Durch die automatische Hervorhebung verd¨achtig eingestufter Ressourcen sind selbst Ermittler mit nur geringen Erfahrungen in der Lage, kritische Systemteile zu identifizieren, die einer n¨aheren Untersuchung bedurfen.¨ Der Ein- satz des Erweiterungsmoduls erleichtert somit die Aufspurung¨ von Computersch¨adlingen in nur kurzer Zeit. Acknowledgments 1 This thesis is the result of almost 3 ⁄2 years of research in the area of memory forensics. In the course of my dissertation period, numerous people greatly helped and supported me with my work, and I would like to express them my gratitude. First and foremost, I would like to thank my supervisor Felix Freiling for many fruitful discussions and inspirations during my time at the Computer Science Department at the University of Erlangen-Nuremberg. Without his advice and encouragement, writing this thesis would have been hardly possible. I would also very much like to thank Pavel Gladyshev from the University College Dublin for gladly accepting being my second advisor. Many thanks are generally owed to the members of the Chair for IT Security Infrastructures for providing a cheerful and friendly working atmosphere. In particular, I would like to thank Johannes St¨uttgenand Thomas Schreck who never hesitated reading my research papers and giving me feedback on the individual chapters of my thesis. Johannes also spent roughly about half of the 14 months with me it took to develop the evaluation platform for memory acquisition tools presented in Chapter4. In the uncountable hours we were searching for obscure programming errors together and digging in the mysteries of the Bochs PC emulating engine, we were still always able to joke about missing program documentation and inscrutable macro names. After all though, I think we are both happy to say we eventually brought the project to a successful end. My diploma students Hermann Lenz and Thomas Hauenstein deserve a big thank you, too. Especially Hermann facilitated some aspects of my work by writing a great part of the rkfinder plug-in we will illustrate in more detail in Chapter6. Last but not least, I am thankful for the love, patience, and understanding of my family who were there for me in harder times and whenever I needed them. Contents 1 Introduction: On Traditional and Novel Approaches in Computer Forensics :::::::::::::::::::::::::::::::::::::::::::::::: 1 1.1 Evolution of Forensic Investigations..................................1

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    139 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us