VMMF: Virtual Machine Memory Forensics Based on Event Trigger Mechanism

Size: px
Start display at page:

Download "VMMF: Virtual Machine Memory Forensics Based on Event Trigger Mechanism"

Transcription

1 2016 International Conference on Electronic Information Technology and Intellectualization (ICEITI 2016) ISBN: VMMF: Virtual Machine Memory Forensics Based on Event Trigger Mechanism Yong Gang Li, Chao Yuan Cui, Yun Wu and Bing Yu Sun ABSTRACT Virtualization is increasing rapidly recent years. Virtual machines have become not only attack objects but also criminal tools for computer crimes. Memory forensics technology can collect the evidence of virtual machine crimes effectively. Traditional memory forensics tools are deployed into the host where attackers always try to hide or delete the data generated during attack process. As a result, they can be bypassed or cheated in virtual machines. Besides, to get the complete information traditional tools always expand the forensics scale leading to massive redundant information. For the sake of these problems, we propose a new method of virtual machine memory forensics based on event trigger mechanism named VMMF. The experiment results show that the new method can get the code section, data section, kernel stack content, dynamic-link library file, and execution path of the suspicious process in Linux. It just focuses on the suspicious process content reducing redundant information. INTRODUCTION In recent years, with virtualization developing the security issue of virtual machine (VM) [1]has been paid more and more attention. Various viruses have been Yong Gang Li, Chao Yuan Cui, Bing Yu Sun, Hefei Institute of Intelligent Machine, Hefei Institutes of Physical science, Chinese Academy of Sciences, Yong Gang Li, School of Information Science and Technology, University of Science and Technology of China, Yun Wu, Institute of Applied Technology, Hefei Institutes of Physical Science, Chinese Academy of Sciences, China,

2 spreading from physical machines to virtual machines. Attackers regard the VM not only an attack object but also an attack tool. Memory forensics [2] technology can get the evidence about attack activity and provides it to judicial authority, which helps supporting against the computer crimes. To prevent computer crimes, scientists have done a lot of researches about memory forensics technology. According to the survey of Zhang Yu [2], all the methods can be classified into two categories: based on hardware and based on software. Alessandro proposed a method called SMM Dumper [3] based on system management mode (SMM) of PCI to get the content of physical memory and CPU registers. Štefan [4] can get the physical memory by the aid of network driver interface specification (NIDS). Dolan - Gavitt developed VAD Tools [5]that can enumerate all the process and thread information by analyzing VAD tree structure. Wang et al. [6] proposed a model based on the physical memory or memory image/dump. It breaks the work procedure into four stages: gathering evidence, examining it, analyzing it and finally generating a report. The volatile memory technique was proposed by Aljaedi et al. [7] in This technique can collect the live processes information and the finished or cache processes information. All the above techniques can be used in VM memory forensics. However, they must be deployed into the target VM which may have been compromised. As a result what the forensics tools get is untrusted. Another problem is that most of the above techniques get too much redundancy information making analysis difficult. To solve these problems, we propose VMMF based on event trigger mechanism. We put forensics tool outside the target VM. It assures that the tool can t be cheated or bypassed because of the isolation between VM and forensics tool. Through judging the suspicious activity of processes we select which process to capture. Compared with the most existing solutions we only get the memory content of suspicious process generating the least redundancy information. DESIGN A process is an instance of a computer program that is being executed. Every process in operating system (OS) is described by a process control block (PCB) defined as a data structure called task struct [8].All the running processes are linked by a doubly linked list which is implemented as a member of the task_struct. VMMF can traverse the entire process list through the doubly linked list and get all the information about process outside VM. It mainly focuses on getting the suspicious process content in Linux. We deploy VMMF on Xen [9] platform to get the information of process. Xen consists of Xen Hypervisor and domains including the only privileged domain named dom0 and unprivileged domains named domu. Through Xen we can get virtual CPU (VCPU) context [10] and the content of process of domu. Figure1shows the architecture of VMMF. It contains three parts: front-end modules, back-end modules, and judge module. Front-end modules are in dom0 258

3 including memory forensics module, secure view module, and messenger sender. Back-end modules reside in domu including guest view module and message receiver. First, message sender generates two signals: one transferred to secure view module and another to domu through Xen store. When message receiver receives the signal transferred from dom0, it forwards the signal to guest view module immediately. After receiving signal, secure view module and guest view module generates semantic views (guest view and secure view)synchronously. Then the two views will be transferred to judge module for judging according to judge algorithm. If there exist hidden processes between two views, judge module will generate an exception that is a trigger event waking up memory forensics module. After being waken up, memory forensics module captures the suspicious process content. Dom0 DomU process content VMI process content Processes Memory Forensics trigger event... ps Secure View secure view Judge guest view Guest View Memory Mapping Message Sender Message Receiver Xenstore Virtual Memory Xen Hypervisor Hardware (Physical CPU, Physical Memory, Disk, etc.) Figure 1. Architecture of VMMF. Getting Semantic Views Synchronously The consequences of failing keeping secure view module and guest view module synchronized will lead to the problem of inconsistency of VM state generating a lot of fault exceptions. Too many fault exceptions will reduce system performance 259

4 badly. The message passing mechanism based on Xen store is designed for synchronization in getting semantic views procedure The semantic views include guest view and secure view. We execute ps -aux in domu to get guest view. Different with guest view, secure view is the process list of domu captured in dom0. First we get the VCPU context of domu that contains some registers (others are stored in kernel stack) including esp. To get starting address of kernel stack of current process, we execute as this: esp&~ (THREAD SIZE - 1). The executing result is the starting address of thread info whose first entry points to the task struct of current process. Then we can traverse all the processes through doubly linked list. While all the above operation about reading memory must be processed through memory mapping described in section 2.3. Judge Algorithm Define the secure view as and the guest view as. Define the exception as ε. Define the process name as ξ and process id as θ. The algorithm is shown as Algorithm 1. If there is hidden process, the judge module will generate an exception. 1 = {( 1, 1 ), ( 2, 2 ),, ( m, m ) executed outside VM} 2 = {( 1, 1 ), ( 2, 2 ),, ( n, n ) executed in VM} 3 ε = = {( i, i ), ( i 1, i 1 ),, ( j, j )} 4 if (ε Φ) 5 then generate exception 6 else keep silence Algorithm 1: Judge Algorithm Memory Forensics After being waken up, memory forensics module will pause domu and get the suspicious process content including code section, data section, stack content, dynamic-link library files, and execution path through reading memory outside domu. However, we can t read the memory directly because of the isolation between VMs. Every operation about reading VM memory outside must be handled by the function map page() which calls xc_map foreign range() and xc_translate foreign address() provided by the library libxc. The way reading memory is memory mapping that must be combined with VMI [11] tools for bridging the semantic gap [12]. The VMI tool we use is a semantic library containing some crucial semantic information of kernel such as the offset and date type of pid, a member in task struct. In the library the offsets and data types of data structure entries are important for memory mapping. The offset is used to locate the suspicious process content accurately in memory. The data type determines how many bits to read and which type to be restored in dom0. To get process code section we access mm_struct pointed by mm which is a member in task_struct. In mm_struct, two entries, start_code and end_code, 260

5 respectively points to the starting address and ending address of code section in memory. Reading the memory between the starting address and ending address, we can get the binary code of suspicious process. Similar with getting code section, we just need read the memory between start_date and end_data in mm_struct. In general, a complete Linux system is composed of a large number of files. Meanwhile, these files are organized in the form of tree. In addition to the leaf nodes representing files, every node of the tree represents a directory. The virtual file system uses a data structure defined as dentry to describe the directories and files. In dentry, the entry d_parent points to the current file s parent and the d_iname points to file name. VMMF traverses up along d_parent until getting the root directory /. During the procedures every dentry is a directory and the reverse order of all directories is a file path. To access the starting dentry, six data structures including task_struct, mm_struct, vm_area_struct, file, path, and dentry should be traversed. The traversal sequence is task_struct -> mm ->mmap ->vm_file ->f_path -> path - >dentry. The first file path we get is execution path and others whose name postfix is.so are dynamic-link library files of the suspicious process. EXPERIMENTS AND RESULTS We implement VMMF on Xen Dom0 is Ubuntu desktop with kernel , 3.2GHz CPU, 4 cores, and 4G memory. DomU is Ubuntu server with kernel , 2.2GHz CPU, 1 core, and 1G memory. In domu, we apply f00lkit, a kernel module rootkit that can hide processes and files from detection, to hide a process that steals input of number keyboard. Figure 2 shows the semantic views captured in and out douu. The process shiyan is hidden in domu, while it is detected outside (in red circle). So judge module will generate an exception waking up forensics module. Figure 3 shows the code section captured by VMMF is accurate. In this picture, the left part is the code section we get outside domu, and the right part is the code generated by disassembling executable file. There is no difference between the left part with black ground and the right part turn out what we get is exactly accurate. Figure 4 shows the dynamic-link library in which the first (in the red box) is execution path respectively captured in dom0 (the left part) and in domu (the right part). There is an only difference between two VMs: stack. It s in domu while not in dom0. The reason is that stack is a process stack not a dynamic-link file. The reverse order of file path and the file offset in dom0 are completely consistent with the execution results of pmap 1594 in domu. CONCLUSIONS In this paper, we propose a technology VMMF used for VM memory forensics. It s based on event trigger mechanism. When there is a difference(a hidden process) 261

6 between secure view and guest view, VMMF generates an exception that is a trigger event. Through passing information to dom0 and domu at a same time point, VMMF can reduce the inconsistency of VM state getting a more accurate result. It can capture all the content of suspicious process. VMMF just focuses on the suspicious process avoiding too much redundancy information. Figure 2. Secure View and Guest View. Figure 3. Code Section. Figure 4. Dynamic-Link Library and Execution Path. 262

7 ACKNOWLEDGEMENTS This paper is supported by the National Science-technology Support Plan Projects of China (No. 2014BAD10B08) and National Natural Science Foundation of China ( ) REFERENCES 1. Rehman A., Alqahtani S., Altameem A., et al. Virtual machine security challenges: case studies[j]. International Journal of Machine Learning & Cybernetics, 2014, 5(5): Zhang Yu, Liu Qing-Zhong, Li Tao, al. Research and Development of Memory Forensics [J]. Journal of Software, 2015(5): Reina A., Fattori A., Pagani F., Cavallaro L., Bruschi D. When hardware meets software: A bulletproof solution to forensic memory acquisition. In: Proc. of the ACSAC [doi: / ]. 4. Balogh Š. Memory acquisition by using network card. Journal of Cyber Security, 2014, 3(1): [doi: /jcsm ]. 5. Virtual Address Descriptor Tools L. Wang, R. Zhang., and S. Zhang, A model of computer live forensics based on physical memory analysis, In IEEE Information Science and Engineering (ICISE), st International Conference on, (2009), December, pp Aljaedi A., Lindskog D., Zavarsky P., et al. Comparative Analysis of Volatile Memory Forensics: Live Response vs. Memory Imaging. [C]// Privacy, Security, Risk and Trust (PASSAT) and 2011 IEEE Third International Conference on Social Computing (Social Com), 2011: Shahzad F., Shahzad M., Farooq M. In-execution dynamic malware analysis and detection by mining information in process control blocks of Linux OS [J]. Information Sciences, 2013, 231(9): B.D. Payne, M. Carbone, M. Sharif, W. Lee, Lares: an architecture for secure active monitoring using virtualization, the 2008 IEEE Symposium on Security and Privacy, (2008) Zhang X., Yin D.S. Real-time improvement of VCPU scheduling algorithm on Xen [C]// International Conference on Computer Science and Service System. IEEE, 2011: Dolan-Gavitt B., Leek T., Zhivich M., et al. Virtuoso: Narrowing the Semantic Gap in Virtual Machine Introspection [C]// Security and Privacy (SP), 2011 IEEE Symposium, 2011: Fu Y., Lin Z. Space Traveling across VM: Automatically Bridging the Semantic Gap in Virtual Machine Introspection via Online Kernel Data Redirection [C]// IEEE Symposium on Security & Privacy. IEEE, 2012:

Virtual Machine Introspection Bhushan Jain

Virtual Machine Introspection Bhushan Jain Virtual Machine Introspection Bhushan Jain Computer Science Department Stony Brook University 1 Traditional Environment Operating System 2 Traditional Environment Process Descriptors Kernel Heap Operating

More information

Evolution of Digital Forensics in Virtualization by Using Virtual Machine Introspection

Evolution of Digital Forensics in Virtualization by Using Virtual Machine Introspection Evolution of Digital Forensics in Virtualization by Using Virtual Machine Introspection James Poore* Louisiana Tech University Ruston, LA 71270 jlp063@latech.edu Juan Carlos Flores Louisiana Tech University

More information

Extended Page Tables (EPT) A VMM must protect host physical memory Multiple guest operating systems share the same host physical memory VMM typically implements protections through page-table shadowing

More information

Virtuoso: Narrowing the Semantic Gap in Virtual Machine Introspection

Virtuoso: Narrowing the Semantic Gap in Virtual Machine Introspection Virtuoso: Narrowing the Semantic Gap in Virtual Machine Introspection Brendan Dolan-Gavitt *, Tim Leek, Michael Zhivich, Jonathon Giffin *, and Wenke Lee * * Georgia Institute of Technology MIT Lincoln

More information

TrustDump: Reliable Memory Acquisition on Smartphones

TrustDump: Reliable Memory Acquisition on Smartphones TrustDump: Reliable Memory Acquisition on Smartphones He Sun 1,2,3,4, Kun Sun 4, Yuewu Wang 1,2, Jiwu Jing 1,2, and Sushil Jajodia 4 1 Data Assurance and Communication Security Research Center, CAS 2 State

More information

Space Traveling across VM

Space Traveling across VM Space Traveling across VM Automatically Bridging the Semantic-Gap in Virtual Machine Introspection via Online Kernel Data Redirection Yangchun Fu, and Zhiqiang Lin Department of Computer Sciences The University

More information

CSE543 - Computer and Network Security Module: Virtualization

CSE543 - Computer and Network Security Module: Virtualization CSE543 - Computer and Network Security Module: Virtualization Professor Trent Jaeger CSE543 - Introduction to Computer and Network Security 1 1 Operating System Quandary Q: What is the primary goal of

More information

Lightweight Intrusion Detection of Rootkit with VMI-Based Driver Separation Mechanism

Lightweight Intrusion Detection of Rootkit with VMI-Based Driver Separation Mechanism KSII TRANSACTIONS ON INTERNET AND INFORMATION SYSTEMS VOL. 11, NO. 3, Mar. 2017 1722 Copyright c2017 KSII Lightweight Intrusion Detection of Rootkit with VMI-Based Driver Separation Mechanism Chaoyuan

More information

Atomizer: Fast, Scalable and Lightweight Heap Analyzer for Virtual Machines in a Cloud Environment

Atomizer: Fast, Scalable and Lightweight Heap Analyzer for Virtual Machines in a Cloud Environment Atomizer: Fast, Scalable and Lightweight Heap Analyzer for Virtual Machines in a Cloud Environment Salman Javaid Aleksandar Zoranic Irfan Ahmed Golden G. Richard III University of New Orleans Greater New

More information

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor? Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor? Mr. Jacob Torrey May 13, 2014 Dartmouth College 153 Brooks Road, Rome, NY 315.336.3306 http://ainfosec.com @JacobTorrey torreyj@ainfosec.com

More information

Spring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand

Spring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand Introduction to Virtual Machines Nima Honarmand Virtual Machines & Hypervisors Virtual Machine: an abstraction of a complete compute environment through the combined virtualization of the processor, memory,

More information

OS Security IV: Virtualization and Trusted Computing

OS Security IV: Virtualization and Trusted Computing 1 OS Security IV: Virtualization and Trusted Computing Chengyu Song Slides modified from Dawn Song 2 Administrivia Lab2 More questions? 3 Virtual machine monitor +-----------+----------------+-------------+

More information

CSE543 - Computer and Network Security Module: Virtualization

CSE543 - Computer and Network Security Module: Virtualization CSE543 - Computer and Network Security Module: Virtualization Professor Trent Jaeger CSE543 - Introduction to Computer and Network Security 1 Operating System Quandary Q: What is the primary goal of system

More information

Virtual Machine Security

Virtual Machine Security Virtual Machine Security CSE443 - Spring 2012 Introduction to Computer and Network Security Professor Jaeger www.cse.psu.edu/~tjaeger/cse443-s12/ 1 Operating System Quandary Q: What is the primary goal

More information

At one time, desktop computers were one

At one time, desktop computers were one Virtual Machine Introspection Observation or Interference? As virtualization becomes increasingly mainstream, virtual machine introspection techniques and tools are evolving to monitor VM behavior. A survey

More information

Problem System administration tasks on a VM from the outside, e.g., issue administrative commands such as hostname and rmmod. One step ahead tradition

Problem System administration tasks on a VM from the outside, e.g., issue administrative commands such as hostname and rmmod. One step ahead tradition EXTERIOR: Using a Dual-VM Based External Shell for Guest-OS Introspection, Configuration, and Recovery ACM VEE 13 Problem System administration tasks on a VM from the outside, e.g., issue administrative

More information

Bridging the Semantic Gap Through Static Code Analysis

Bridging the Semantic Gap Through Static Code Analysis Bridging the Semantic Gap Through Static Code Analysis Christian Schneider Jonas Pfoh Claudia Eckert Department of Computer Science Technische Universität München Munich, Germany {schneidc,pfoh,eckertc}@in.tum.de

More information

CSE Computer Security

CSE Computer Security CSE 543 - Computer Security Lecture 25 - Virtual machine security December 6, 2007 URL: http://www.cse.psu.edu/~tjaeger/cse543-f07/ 1 Implementation and Results Experimental Platform Exact specification

More information

CSE543 - Computer and Network Security Module: Virtualization

CSE543 - Computer and Network Security Module: Virtualization CSE543 - Computer and Network Security Module: Virtualization Professor Trent Jaeger CSE543 - Introduction to Computer and Network Security 1 Operating System Quandary Q: What is the primary goal of system

More information

CIS 5373 Systems Security

CIS 5373 Systems Security CIS 5373 Systems Security Topic 3.1: OS Security Basics of secure design Endadul Hoque Slide Acknowledgment Contents are based on slides from Ninghui Li (Purdue), John Mitchell (Stanford), Dan Boneh (Stanford)

More information

Memory Analysis. CSF: Forensics Cyber-Security. Part II. Basic Techniques and Tools for Digital Forensics. Fall 2018 Nuno Santos

Memory Analysis. CSF: Forensics Cyber-Security. Part II. Basic Techniques and Tools for Digital Forensics. Fall 2018 Nuno Santos Memory Analysis Part II. Basic Techniques and Tools for Digital Forensics CSF: Forensics Cyber-Security Fall 2018 Nuno Santos Previous classes Files, steganography, watermarking Source of digital evidence

More information

PROCESS VIRTUAL MEMORY PART 2. CS124 Operating Systems Winter , Lecture 19

PROCESS VIRTUAL MEMORY PART 2. CS124 Operating Systems Winter , Lecture 19 PROCESS VIRTUAL MEMORY PART 2 CS24 Operating Systems Winter 25-26, Lecture 9 2 Virtual Memory Abstraction Last time, officially introduced concept of virtual memory Programs use virtual addresses to refer

More information

Virtual Machine Virtual Machine Types System Virtual Machine: virtualize a machine Container: virtualize an OS Program Virtual Machine: virtualize a process Language Virtual Machine: virtualize a language

More information

Operating System Security

Operating System Security Operating System Security Operating Systems Defined Hardware: I/o...Memory.CPU Operating Systems: Windows or Android, etc Applications run on operating system Operating Systems Makes it easier to use resources.

More information

Research and Design of Crypto Card Virtualization Framework Lei SUN, Ze-wu WANG and Rui-chen SUN

Research and Design of Crypto Card Virtualization Framework Lei SUN, Ze-wu WANG and Rui-chen SUN 2016 International Conference on Wireless Communication and Network Engineering (WCNE 2016) ISBN: 978-1-60595-403-5 Research and Design of Crypto Card Virtualization Framework Lei SUN, Ze-wu WANG and Rui-chen

More information

Process. Heechul Yun. Disclaimer: some slides are adopted from the book authors slides with permission

Process. Heechul Yun. Disclaimer: some slides are adopted from the book authors slides with permission Process Heechul Yun Disclaimer: some slides are adopted from the book authors slides with permission 1 Recap OS services Resource (CPU, memory) allocation, filesystem, communication, protection, security,

More information

VBD-MF: A Block Device to Monitor the File System of Virtual Machine

VBD-MF: A Block Device to Monitor the File System of Virtual Machine 2017 International Conference on Mathematics, Modelling and Simulation Technologies and Applications (MMSTA 2017) ISBN: 978-1-60595-530-8 VBD-MF: A Block Device to Monitor the File System of Virtual Machine

More information

InkTag: Secure Applications on an Untrusted Operating System. Owen Hofmann, Sangman Kim, Alan Dunn, Mike Lee, Emmett Witchel UT Austin

InkTag: Secure Applications on an Untrusted Operating System. Owen Hofmann, Sangman Kim, Alan Dunn, Mike Lee, Emmett Witchel UT Austin InkTag: Secure lications on an Untrusted Operating System Owen Hofmann, Sangman Kim, Alan Dunn, Mike Lee, Emmett Witchel UT Austin You trust your... should you? The is the software root of trust on most

More information

Data Hiding on Text Using Big-5 Code

Data Hiding on Text Using Big-5 Code Data Hiding on Text Using Big-5 Code Jun-Chou Chuang 1 and Yu-Chen Hu 2 1 Department of Computer Science and Communication Engineering Providence University 200 Chung-Chi Rd., Shalu, Taichung 43301, Republic

More information

A high-performance virtual machine filesystem monitor in cloud-assisted cognitive IoT

A high-performance virtual machine filesystem monitor in cloud-assisted cognitive IoT A high-performance virtual machine filesystem monitor in cloud-assisted cognitive IoT Dongyang Zhan a, Lin Ye a, Hongli Zhang a, Binxing Fang a,b, Huhua Li a, Yang Liu a, Xiaojiang Du c, Mohsen Guizani

More information

Windows Memory Forensics and Direct Kernel Object Manipulation. Jesse Kornblum

Windows Memory Forensics and Direct Kernel Object Manipulation. Jesse Kornblum Windows Memory Forensics and Direct Kernel Object Manipulation Jesse Kornblum Outline Introduction The Kernel Direct Kernel Object Manipulation Standard DKOM Devious DKOM Better Magic Relations Between

More information

Timing Channel in IaaS: How to Identify and Investigate

Timing Channel in IaaS: How to Identify and Investigate Timing Channel in IaaS: How to Identify and Investigate Xiao Fu, Rui Yang, Xiaojiang Du, Bin Luo Abstract Recently, the IaaS (Infrastructure as a Service) Cloud (e.g., Amazon EC2) has been widely used

More information

SentinelOne Technical Brief

SentinelOne Technical Brief SentinelOne Technical Brief SentinelOne unifies prevention, detection and response in a fundamentally new approach to endpoint protection, driven by behavior-based threat detection and intelligent automation.

More information

Process. Heechul Yun. Disclaimer: some slides are adopted from the book authors slides with permission 1

Process. Heechul Yun. Disclaimer: some slides are adopted from the book authors slides with permission 1 Process Heechul Yun Disclaimer: some slides are adopted from the book authors slides with permission 1 Recap OS services Resource (CPU, memory) allocation, filesystem, communication, protection, security,

More information

Virtual machine architecture and KVM analysis D 陳彥霖 B 郭宗倫

Virtual machine architecture and KVM analysis D 陳彥霖 B 郭宗倫 Virtual machine architecture and KVM analysis D97942011 陳彥霖 B96902030 郭宗倫 Virtual machine monitor serves as an interface between hardware and software; no matter what kind of hardware under, software can

More information

Toward Guest OS Writable Virtual Machine Introspection

Toward Guest OS Writable Virtual Machine Introspection Toward Guest OS Writable Virtual Machine Introspection Zhiqiang Lin The University of Texas at Dallas zhiqiang.lin@utdallas.edu Abstract Over the past decade, a great deal of research on virtual machine

More information

SentinelOne Technical Brief

SentinelOne Technical Brief SentinelOne Technical Brief SentinelOne unifies prevention, detection and response in a fundamentally new approach to endpoint protection, driven by machine learning and intelligent automation. By rethinking

More information

Toward Resilient Cloud Environment:

Toward Resilient Cloud Environment: Toward Resilient Cloud Environment: Case for Virtual Machine Introspection Using Hardware Architectural Invariants Z. Kalbarczyk C. Pham, C. Di Martino, R. Iyer Coordinated Science Laboratory Department

More information

Design and Implementation of cache protecting from power failure in Disk Array

Design and Implementation of cache protecting from power failure in Disk Array International Conference on Advanced Information and Communication Technology for Education (ICAICTE 2013) Design and Implementation of cache protecting from power failure in Disk Array WANG Endong, HU

More information

Efficient VM Introspection in KVM and Performance Comparison with Xen

Efficient VM Introspection in KVM and Performance Comparison with Xen Efficient VM Introspection in KVM and Performance Comparison with Xen Kenichi Kourai Department of Creative Informatics Kyushu Institute of Technology Fukuoka, Japan kourai@ci.kyutech.ac.jp Kousuke Nakamura

More information

ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay

ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay Or We Can Remember It for You Wholesale (with apologies to Philip K. Dick) George Dunlap, Sam King, SukruCinar, MurtazaBasraiand

More information

Dual-System Warm Standby of Remote Sensing Satellite Control System Technology

Dual-System Warm Standby of Remote Sensing Satellite Control System Technology 2016 3 rd International Conference on Materials Science and Mechanical Engineering (ICMSME 2016) ISBN: 978-1-60595-391-5 Dual-System Warm Standby of Remote Sensing Satellite Control System Technology Fei

More information

Xen and the Art of Virtualization. CSE-291 (Cloud Computing) Fall 2016

Xen and the Art of Virtualization. CSE-291 (Cloud Computing) Fall 2016 Xen and the Art of Virtualization CSE-291 (Cloud Computing) Fall 2016 Why Virtualization? Share resources among many uses Allow heterogeneity in environments Allow differences in host and guest Provide

More information

Introduction to SGX (Software Guard Extensions) and SGX Virtualization. Kai Huang, Jun Nakajima (Speaker) July 12, 2017

Introduction to SGX (Software Guard Extensions) and SGX Virtualization. Kai Huang, Jun Nakajima (Speaker) July 12, 2017 Introduction to SGX (Software Guard Extensions) and SGX Virtualization Kai Huang, Jun Nakajima (Speaker) July 12, 2017 1 INTEL RESTRICTED SECRET Agenda SGX Introduction Xen SGX Virtualization Support Backup

More information

Privacy-Preserving of Check-in Services in MSNS Based on a Bit Matrix

Privacy-Preserving of Check-in Services in MSNS Based on a Bit Matrix BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 15, No 2 Sofia 2015 Print ISSN: 1311-9702; Online ISSN: 1314-4081 DOI: 10.1515/cait-2015-0032 Privacy-Preserving of Check-in

More information

Hiding in the Shadows: Empowering ARM for Stealthy Virtual Machine Introspection ACSAC 2018

Hiding in the Shadows: Empowering ARM for Stealthy Virtual Machine Introspection ACSAC 2018 Hiding in the Shadows: Empowering ARM for Stealthy Virtual Machine Introspection ACSAC 2018 Sergej Proskurin, 1 Tamas Lengyel, 3 Marius Momeu, 1 Claudia Eckert, 1 and Apostolis Zarras 2 1 2 Maastricht

More information

P6/Linux Memory System Nov 11, 2009"

P6/Linux Memory System Nov 11, 2009 P6/Linux Memory System Nov 11, 2009" REMEMBER" 2! 3! Intel P6" P6 Memory System" DRAM" external system bus (e.g. PCI)" L2" cache" cache bus! bus interface unit" inst" TLB" instruction" fetch unit" L1"

More information

HyperLink: Virtual Machine Introspection and Memory Forensic Analysis without Kernel Source Code

HyperLink: Virtual Machine Introspection and Memory Forensic Analysis without Kernel Source Code HyperLink: Virtual Machine Introspection and Memory Forensic Analysis without Kernel Source Code Jidong Xiao, Lei Lu, Haining Wang, Xiaoyun Zhu Boise State University, Boise, Idaho, USA VMware Inc., Palo

More information

Lecture 3: Processes. CMPUT 379, Section A1, Winter 2014 January 13, 15 and 17

Lecture 3: Processes. CMPUT 379, Section A1, Winter 2014 January 13, 15 and 17 Lecture 3: Processes CMPUT 379, Section A1, Winter 2014 January 13, 15 and 17 Objectives Understand the notion of a process : a program in execution which forms the basis of all computation Understand

More information

The Challenges of X86 Hardware Virtualization. GCC- Virtualization: Rajeev Wankar 36

The Challenges of X86 Hardware Virtualization. GCC- Virtualization: Rajeev Wankar 36 The Challenges of X86 Hardware Virtualization GCC- Virtualization: Rajeev Wankar 36 The Challenges of X86 Hardware Virtualization X86 operating systems are designed to run directly on the bare-metal hardware,

More information

The failure of Operating Systems,

The failure of Operating Systems, The failure of Operating Systems, and how we can fix it. Glauber Costa Lead Software Engineer August 30th, 2012 Linuxcon Opening Notes I'll be doing Hypervisors vs Containers here. But: 2 2 Opening Notes

More information

Xen is not just paravirtualization

Xen is not just paravirtualization Xen is not just paravirtualization Dongli Zhang Oracle Asia Research and Development Centers (Beijing) dongli.zhang@oracle.com December 16, 2016 Dongli Zhang (Oracle) Xen is not just paravirtualization

More information

Back To The Future: A Radical Insecure Design of KVM on ARM

Back To The Future: A Radical Insecure Design of KVM on ARM Back To The Future: A Radical Insecure Design of KVM on ARM Abstract In ARM, there are certain instructions that generate exceptions. Such instructions are typically executed to request a service from

More information

Towards High Assurance Networks of Virtual Machines

Towards High Assurance Networks of Virtual Machines Towards High Assurance Networks of Virtual Machines Fabrizio Baiardi 1 Daniele Sgandurra 2 1 Polo G. Marconi - La Spezia, University of Pisa, Italy 2 Department of Computer Science, University of Pisa,

More information

Acquisiting Text Documents Opened by Notepad from Windows7 RAM Image

Acquisiting Text Documents Opened by Notepad from Windows7 RAM Image Journal of Computational Information Systems 10: 16 (2014) 7117 7124 Available at http://www.jofcis.com Acquisiting Text Documents Opened by Notepad from Windows7 RAM Image Tao XIAO, Ming XU, Jian XU,

More information

Computer Architecture Background

Computer Architecture Background CSE 5095 & ECE 4451 & ECE 5451 Spring 2017 Lecture 2b Computer Architecture Background Marten van Dijk Syed Kamran Haider, Chenglu Jin, Phuong Ha Nguyen Department of Electrical & Computer Engineering

More information

CS153: Process. Chengyu Song. Slides modified from Harsha Madhyvasta, Nael Abu-Ghazaleh, and Zhiyun Qian

CS153: Process. Chengyu Song. Slides modified from Harsha Madhyvasta, Nael Abu-Ghazaleh, and Zhiyun Qian 1 CS153: Process Chengyu Song Slides modified from Harsha Madhyvasta, Nael Abu-Ghazaleh, and Zhiyun Qian 2 Administrivia Lab New TA Bojian Du Group info in process, will help the rest form groups Ask questions,

More information

Device Passthrough to Driver Domain in Xen

Device Passthrough to Driver Domain in Xen Device Passthrough to Driver Domain in Xen Passthrough. List of terms. Passthrough: the process of passing access to DomD via Dom0 Dom0: Domain 0, a privileged domain DomD: Driver Domain, a domain with

More information

Hypervisor security. Evgeny Yakovlev, DEFCON NN, 2017

Hypervisor security. Evgeny Yakovlev, DEFCON NN, 2017 Hypervisor security Evgeny Yakovlev, DEFCON NN, 2017 whoami Low-level development in C and C++ on x86 UEFI, virtualization, security Jetico, Kaspersky Lab QEMU/KVM developer at Virtuozzo 2 Agenda Why hypervisor

More information

Hardware OS & OS- Application interface

Hardware OS & OS- Application interface CS 4410 Operating Systems Hardware OS & OS- Application interface Summer 2013 Cornell University 1 Today How my device becomes useful for the user? HW-OS interface Device controller Device driver Interrupts

More information

Introspections on the Semantic Gap. Bhushan Jain, Mirza Basim Baig, Dongli Zhang, Donald E. Porter, and Radu Sion Stony Brook University

Introspections on the Semantic Gap. Bhushan Jain, Mirza Basim Baig, Dongli Zhang, Donald E. Porter, and Radu Sion Stony Brook University IEEE S&P SYMPOSIUM Introspections on the Semantic Gap Bhushan Jain, Mirza Basim Baig, Dongli Zhang, Donald E. Porter, and Radu Sion Stony Brook University An essential goal of virtual machine introspection

More information

Who Watches the Watcher? Detecting Hypervisor Introspection from Unprivileged Guests

Who Watches the Watcher? Detecting Hypervisor Introspection from Unprivileged Guests Tomasz Tuzel Who Watches the Watcher? Detecting Hypervisor Introspection from Unprivileged Guests Overview The Cloud Numerous organizations are moving en masse to the cloud It s easier to manage It s easier

More information

MultiLanes: Providing Virtualized Storage for OS-level Virtualization on Many Cores

MultiLanes: Providing Virtualized Storage for OS-level Virtualization on Many Cores MultiLanes: Providing Virtualized Storage for OS-level Virtualization on Many Cores Junbin Kang, Benlong Zhang, Tianyu Wo, Chunming Hu, and Jinpeng Huai Beihang University 夏飞 20140904 1 Outline Background

More information

Virtualization. Virtualization

Virtualization. Virtualization Virtualization Virtualization Memory virtualization Process feels like it has its own address space Created by MMU, configured by OS Storage virtualization Logical view of disks connected to a machine

More information

COS 318: Operating Systems. Virtual Machine Monitors

COS 318: Operating Systems. Virtual Machine Monitors COS 318: Operating Systems Virtual Machine Monitors Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Announcements Project

More information

Secure In-VM Monitoring Using Hardware Virtualization

Secure In-VM Monitoring Using Hardware Virtualization Secure In-VM Monitoring Using Hardware Virtualization Monirul Sharif Georgia Institute of Technology Atlanta, GA, USA msharif@cc.gatech.edu Wenke Lee Georgia Institute of Technology Atlanta, GA, USA wenke@cc.gatech.edu

More information

ViryaOS RFC: Secure Containers for Embedded and IoT. A proposal for a new Xen Project sub-project

ViryaOS RFC: Secure Containers for Embedded and IoT. A proposal for a new Xen Project sub-project ViryaOS RFC: Secure Containers for Embedded and IoT A proposal for a new Xen Project sub-project Stefano Stabellini @stabellinist The problem Package applications for the target Contain all dependencies

More information

Computer Organization and Structure. Bing-Yu Chen National Taiwan University

Computer Organization and Structure. Bing-Yu Chen National Taiwan University Computer Organization and Structure Bing-Yu Chen National Taiwan University Storage and Other I/O Topics I/O Performance Measures Types and Characteristics of I/O Devices Buses Interfacing I/O Devices

More information

A Static-Dynamic Conjunct Windows Process Integrity Detection Model

A Static-Dynamic Conjunct Windows Process Integrity Detection Model A Static-Dynamic Conjunct Windows Process Integrity Detection Model Fei Chen 1, Yi Li 1, Tong Zhang 1, Kehe Wu 1, 1 North China Electric Power University, Department of Control and Computer Engineering,

More information

Secure and Flexible Monitoring of Virtual Machines

Secure and Flexible Monitoring of Virtual Machines Secure and Flexible Monitoring of Virtual Machines Bryan D. Payne Martim D. P. de A. Carbone Wenke Lee Georgia Institute of Technology {bdpayne,mcarbone,wenke}@cc.gatech.edu Abstract The monitoring of

More information

A Userspace Packet Switch for Virtual Machines

A Userspace Packet Switch for Virtual Machines SHRINKING THE HYPERVISOR ONE SUBSYSTEM AT A TIME A Userspace Packet Switch for Virtual Machines Julian Stecklina OS Group, TU Dresden jsteckli@os.inf.tu-dresden.de VEE 2014, Salt Lake City 1 Motivation

More information

Cloud computing relies heavily on virtualization.

Cloud computing relies heavily on virtualization. An In-VM Measuring Framework for Increasing Virtual Machine Security in Clouds In this framework, a module measures execus running in virtual machines (VMs) and transfers the values to a trusted VM. Comparing

More information

A Lightweight OS-Level Virtualization Architecture Based on Android Bo-wen LIU, Nai-jie GU and De-he GU

A Lightweight OS-Level Virtualization Architecture Based on Android Bo-wen LIU, Nai-jie GU and De-he GU 2017 2nd International Conference on Computer, Network Security and Communication Engineering (CNSCE 2017) ISBN: 978-1-60595-439-4 A Lightweight OS-Level Virtualization Architecture Based on Android Bo-wen

More information

Towards an Invisible Honeypot Monitoring Tool. Hack.Lu2006

Towards an Invisible Honeypot Monitoring Tool. Hack.Lu2006 Towards an Invisible Honeypot Monitoring Tool Hack.Lu2006 Nguyen Anh Quynh Keio university, Japan Who am I? Nguyen Anh Quynh, a PhD student of Takefuji-lab, Keio university, Japan

More information

Security Architecture

Security Architecture Security Architecture We ve been looking at how particular applications are secured We need to secure not just a few particular applications, but many applications, running on separate machines We need

More information

Linux Essentials. Smith, Roderick W. Table of Contents ISBN-13: Introduction xvii. Chapter 1 Selecting an Operating System 1

Linux Essentials. Smith, Roderick W. Table of Contents ISBN-13: Introduction xvii. Chapter 1 Selecting an Operating System 1 Linux Essentials Smith, Roderick W. ISBN-13: 9781118106792 Table of Contents Introduction xvii Chapter 1 Selecting an Operating System 1 What Is an OS? 1 What Is a Kernel? 1 What Else Identifies an OS?

More information

CSC 5930/9010 Cloud S & P: Virtualization

CSC 5930/9010 Cloud S & P: Virtualization CSC 5930/9010 Cloud S & P: Virtualization Professor Henry Carter Fall 2016 Recap Network traffic can be encrypted at different layers depending on application needs TLS: transport layer IPsec: network

More information

Operating system hardening

Operating system hardening Operating system Comp Sci 3600 Security Outline 1 2 3 4 5 6 What is OS? Hardening process that includes planning, ation, uration, update, and maintenance of the operating system and the key applications

More information

A Lightweight Software Write-blocker for Virtual Machine Forensics

A Lightweight Software Write-blocker for Virtual Machine Forensics A Lightweight Software Write-blocker for Virtual Machine Forensics Patrick Tobin, Nhien-An Le-Khac, M-Tahar Kechadi University College Dublin Ireland ABSTRACT: The integrity of any original evidence is

More information

Multi-Hypervisor Virtual Machines: Enabling An Ecosystem of Hypervisor-level Services

Multi-Hypervisor Virtual Machines: Enabling An Ecosystem of Hypervisor-level Services Multi-Hypervisor Virtual Machines: Enabling An Ecosystem of Hypervisor-level s Kartik Gopalan, Rohith Kugve, Hardik Bagdi, Yaohui Hu Binghamton University Dan Williams, Nilton Bila IBM T.J. Watson Research

More information

Operating Systems Structure and Processes Lars Ailo Bongo Spring 2017 (using slides by Otto J. Anshus University of Tromsø/Oslo)

Operating Systems Structure and Processes Lars Ailo Bongo Spring 2017 (using slides by Otto J. Anshus University of Tromsø/Oslo) Operating Systems Structure and Processes Lars Ailo Bongo Spring 2017 (using slides by Otto J. Anshus University of Tromsø/Oslo) The Architecture of an OS Monolithic Layered Virtual Machine, Library, Exokernel

More information

Memory Management Day 2. SWE3015 Sung- hun Kim

Memory Management Day 2. SWE3015 Sung- hun Kim Memory Management Day 2 SWE3015 Sung- hun Kim VIRTUAL MEMORY IMPLEMENTATION 2 Linux 32 bit address space layout Process Address Space 3/39 Linux 64 bit address space layout Process Address Space 4/39 Process

More information

Lecture 2 Fundamental OS Concepts. Bo 2018, Spring

Lecture 2 Fundamental OS Concepts. Bo 2018, Spring Lecture 2 Fundamental OS Concepts Bo Tang @ 2018, Spring Our Roadmap Computer Organization Revision Kernel Data Structures in OS OS History Four fundamental OS concepts Thread Address space (with translation)

More information

Unit- 5. Linux Systems

Unit- 5. Linux Systems Unit- 5 Linux System- Basic Concepts; System Administration-Requirements for Linux System Administrator, Setting up a LINUX Multifunction Server, Domain Name System, Setting Up Local Network Services;

More information

A Network Disk Device Based on Web Accessing

A Network Disk Device Based on Web Accessing TELKOMNIKA Indonesian Journal of Electrical Engineering Vol.12, No.6, June 2014, pp. 4387 ~ 4392 DOI: 10.11591/telkomnika.v12i6.5472 4387 A Network Disk Device Based on Web Accessing QunFang Yuan 1, Wenxia

More information

An External Integrity Checker for Increasing Security of Open Source Operating Systems

An External Integrity Checker for Increasing Security of Open Source Operating Systems An External Integrity Checker for Increasing Security of Open Source Operating Systems Hiromasa Shimada, Tsung-Han Lin, Ning Li Distributed and Ubiquitous Computing Lab., Waseda University, Japan Background!

More information

CIT 480: Securing Computer Systems. Operating System Concepts

CIT 480: Securing Computer Systems. Operating System Concepts CIT 480: Securing Computer Systems Operating System Concepts Topics 1. What is an OS? 2. Processes 3. Memory management 4. Filesystems 5. Virtual machines A Computer Model An operating system has to deal

More information

Network Connections Information Extraction of 64-Bit

Network Connections Information Extraction of 64-Bit Network Connections Information Extraction of 64-Bit Windows 7 Memory Images Lianhai Wang *, Lijuan Xu, and Shuhui Zhang Shandong Provincial Key Laboratory of Computer Network, Shandong Computer Science

More information

Operating Systems 4/27/2015

Operating Systems 4/27/2015 Virtualization inside the OS Operating Systems 24. Virtualization Memory virtualization Process feels like it has its own address space Created by MMU, configured by OS Storage virtualization Logical view

More information

Background SigGraph KOP Summary CS 6V Kernel Rootkit Defense I: Graph-based Scanning Approach. Zhiqiang Lin

Background SigGraph KOP Summary CS 6V Kernel Rootkit Defense I: Graph-based Scanning Approach. Zhiqiang Lin CS 6V81-05 Kernel Rootkit Defense I: Graph-based Scanning Approach Zhiqiang Lin Department of Computer Science The University of Texas at Dallas September 2 nd, 2011 Outline 1 Background 2 SigGraph 3 KOP

More information

ELEC 377 Operating Systems. Week 1 Class 2

ELEC 377 Operating Systems. Week 1 Class 2 Operating Systems Week 1 Class 2 Labs vs. Assignments The only work to turn in are the labs. In some of the handouts I refer to the labs as assignments. There are no assignments separate from the labs.

More information

Dan Noé University of New Hampshire / VeloBit

Dan Noé University of New Hampshire / VeloBit Dan Noé University of New Hampshire / VeloBit A review of how the CPU works The operating system kernel and when it runs User and kernel mode Device drivers Virtualization of memory Virtual memory Paging

More information

1 Virtualization Recap

1 Virtualization Recap 1 Virtualization Recap 2 Recap 1 What is the user part of an ISA? What is the system part of an ISA? What functionality do they provide? 3 Recap 2 Application Programs Libraries Operating System Arrows?

More information

An analysis of Linux RAM forensics

An analysis of Linux RAM forensics Calhoun: The NPS Institutional Archive DSpace Repository Theses and Dissertations 1. Thesis and Dissertation Collection, all items 2006-03 An analysis of Linux RAM forensics Urrea, Jorge Mario. Monterey,

More information

Windows Server Discussion with BCIU. Kevin Sullivan Management TSP US Education

Windows Server Discussion with BCIU. Kevin Sullivan Management TSP US Education Windows Server 2008 Discussion with BCIU Kevin Sullivan Management TSP US Education Kevin.sullivan@microsoft.com 1 Web Internet Information Services 7.0 Powerful Web Application and Services Platform Manage

More information

Lecture 5: February 3

Lecture 5: February 3 CMPSCI 677 Operating Systems Spring 2014 Lecture 5: February 3 Lecturer: Prashant Shenoy Scribe: Aditya Sundarrajan 5.1 Virtualization Virtualization is a technique that extends or replaces an existing

More information

COSC 6385 Computer Architecture. Virtualizing Compute Resources

COSC 6385 Computer Architecture. Virtualizing Compute Resources COSC 6385 Computer Architecture Virtualizing Compute Resources Fall 2009 References [1] J. L. Hennessy, D. A. Patterson Computer Architecture A Quantitative Approach Chapter 5.4 [2] G. Neiger, A. Santoni,

More information

The Kernel Abstraction

The Kernel Abstraction The Kernel Abstraction Debugging as Engineering Much of your time in this course will be spent debugging In industry, 50% of software dev is debugging Even more for kernel development How do you reduce

More information

seven Virtual Memory Introduction

seven Virtual Memory Introduction Virtual Memory seven Exercise Goal: You will study how Linux implements virtual memory. A general architecture-independent memory model is the basis of all Linux virtual memory implementations, though

More information

IA32/Linux Virtual Memory Architecture

IA32/Linux Virtual Memory Architecture IA32/Linux Virtual Memory Architecture Basic Execution Environment Application Programming Registers General-purpose registers 31 0 EAX AH AL EBX BH BL ECX CH CL EDX DH DL EBP ESI EDI BP SI DI Segment

More information