How To Stop A Malicious Process From Running On A Hypervisor

Similar documents
Small is Better: Avoiding Latency Traps in Virtualized DataCenters

Hypervisors. Introduction. Introduction. Introduction. Introduction. Introduction. Credits:

A Hypervisor IPS based on Hardware assisted Virtualization Technology

Cloud Computing Security Master Seminar, Summer 2011

Data Centers and Cloud Computing

Survey on virtual machine security

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Virtualization. Pradipta De

How To Create A Cloud Based System For Aaas (Networking)

Virtual Machine Security

Distributed Systems. Virtualization. Paul Krzyzanowski

Full and Para Virtualization

Cloud Computing CS

Virtualization Technologies

Virtualization. Types of Interfaces

CS 695 Topics in Virtualization and Cloud Computing. More Introduction + Processor Virtualization

GUEST OPERATING SYSTEM BASED PERFORMANCE COMPARISON OF VMWARE AND XEN HYPERVISOR

The QEMU/KVM Hypervisor

Virtual Switching Without a Hypervisor for a More Secure Cloud

Security technology of system virtualization platform

Chapter 16: Virtual Machines. Operating System Concepts 9 th Edition

Enabling Technologies for Distributed and Cloud Computing

Dependable Cloud Computing:

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

Leveraging Thin Hypervisors for Security on Embedded Systems

Hypervisor: Requirement Document (Version 3)

A Survey on Virtual Machine Security

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

Virtualization. Dr. Yingwu Zhu

IOS110. Virtualization 5/27/2014 1

Network Virtualization Model - Planet Lab

Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:

Windows Server Virtualization & The Windows Hypervisor

Enabling Technologies for Distributed Computing

Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors

Cloud Operating Systems for Servers

Chapter 14 Virtual Machines

A Study on Detection of Hacking and Malware Codes in Bare Metal Hypervisor for Virtualized Internal Environment of Cloud Service

x86 ISA Modifications to support Virtual Machines

Virtual Computing and VMWare. Module 4

Toward a practical HPC Cloud : Performance tuning of a virtualized HPC cluster

NoHype: Virtualized Cloud Infrastructure without the Virtualization

2) Xen Hypervisor 3) UEC

Virtualization for Cloud Computing

Virtualization. Explain how today s virtualization movement is actually a reinvention

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Virtualization of Clusters and Data Centers

End to End Defense against Rootkits in Cloud Environment. Design- Part 2

9/26/2011. What is Virtualization? What are the different types of virtualization.

HPC performance applications on Virtual Clusters

SecureSwitch: BIOS-Assisted Isolation and Switch between Trusted and Untrusted Commodity OSes!

StACC: St Andrews Cloud Computing Co laboratory. A Performance Comparison of Clouds. Amazon EC2 and Ubuntu Enterprise Cloud

Virtual Hosting & Virtual Machines

COS 318: Operating Systems. Virtual Machine Monitors

Virtualizing a Virtual Machine

The Review of Virtualization in an Isolated Computer Environment

Virtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University

Application Performance in the Cloud, and its Relationship to QoS

Virtual machines and operating systems

CS 356 Lecture 25 and 26 Operating System Security. Spring 2013

Attacking Hypervisors via Firmware and Hardware

The MIPS architecture and virtualization

The Xen of Virtualization

Presentation of Diagnosing performance overheads in the Xen virtual machine environment

Effects of Memory Randomization, Sanitization and Page Cache on Memory Deduplication

Outline: Operating Systems

VMM-based Approach to Detecting Stealthy Keyloggers. Kenji KONO Keio Univ.

Lecture 2 Cloud Computing & Virtualization. Cloud Application Development (SE808, School of Software, Sun Yat-Sen University) Yabo (Arber) Xu

Basics of Virtualisation

Chapter 5 Cloud Resource Virtualization

A Hypervisor-Based Bus System for Usage Control

How To Understand The Power Of A Virtual Machine Monitor (Vm) In A Linux Computer System (Or A Virtualized Computer)

Virtualization and Performance NSRC

Performance tuning Xen

Trusted Virtual Datacenter Radically simplified security management

Virtualiza)on and its Applica)ons

Providing Flexible Security as a Service Model for Cloud Infrastructure

Performance Management in a Virtual Environment. Eric Siebert Author and vexpert. whitepaper

Nested Virtualization

Virtualization. P. A. Wilsey. The text highlighted in green in these slides contain external hyperlinks. 1 / 16

Virtualization and the U2 Databases

Operating Systems. Lecture 03. February 11, 2013

managing the risks of virtualization

Security Challenges in Virtualized Environments

Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details

Run-Time Deep Virtual Machine Introspection & Its Applications

Guardian: Hypervisor as Security Foothold for Personal Computers

Multi-core Programming System Overview

System Virtual Machines

Intro to Virtualization

Masters Project Proposal

Monitoring Databases on VMware

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

End to End Defense against Rootkits in Cloud Environment Sachin Shetty

Improving the Security of Commodity Hypervisors for Cloud Computing

Development of Type-2 Hypervisor for MIPS64 Based Systems

Virtual Machine Synchronization for High Availability Clusters

Virtual Machines. COMP 3361: Operating Systems I Winter

matasano Hardware Virtualization Rootkits Dino A. Dai Zovi

Rootkit Detection on Virtual Machines through Deep Information Extraction at Hypervisor-level

Real-time Performance Control of Elastic Virtualized Network Functions

Transcription:

Hypervisor-Based Systems for Malware Detection and Prevention Yoshihiro Oyama ( 大 山 恵 弘 ) The University of Electro-Communications ( 電 気 通 信 大 学 ), Tokyo, Japan

This Talk I introduce two hypervisor-based security systems developed in our laboratory HyperSlow: Extremely slowing malware execution by controlling the speed of virtual time BVMD: Detecting malware signatures in a thin hypervisor

HYPERSLOW: EXTREMELY SLOWING MALWARE EXECUTION BY CONTROLLING THE SPEED OF VIRTUAL TIME

Background IaaS (Infrastructure as a Service) Ex.: Amazon EC2, Rackspace Cloud IaaS provider lends VMs to customers Customers freely use their own VMs company A company B company C administrator of VMM = administrator of guest OS VMM hardware managed by IaaS provider

Malware Infection One guest OS is infected with malware that consumes resource company A Wastes CPU, memory, May have bad effect on other guest OSes company B company C VMM hardware Much literature showed that some malware could be detected from the VMM layer VMwatcher [Jiang et al. 10], Lares [Brian et al. 08], Lycosid [Jones et al. 08]

Problem VMM administrator cannot modify the data managed by the guest OS Ethically: Customer possesses the guest OS Technically: Kind and version of the guest OS is unknown --- Windows? Linux? What version? Unfortunately, existing countermeasures are limited to coarse-grain ones Ex.1: Stop whole VM Ex.2: Drop all network packets from/to the VM They affect even good processes running in the guest OS!

Goal Develop a VMM-based method for deactivating malware Pinpointing the malware process Mostly guest-os-independent Specifically, the method slows a malware process significantly Implement a system based on the method, HyperSlow, and demonstrate the effectiveness

HyperSlow Increases the speed of virtual time only while a malware process is running It changes the rate of virtual timer interrupts and system time (elapsed time from boot) Is not a malware detection system, but a prevention system It must cooperate with other detectors Xen-based

Process Scheduling Basics OS kernels (incl. Linux and Windows) use timer interrupts and/or system time for process scheduling Linux case: When kernel receives a timer interrupt, it calculates the time consumed by the current process Consumed time is calculated using system time System time is calculated from hardware clock such as TSC If the process has consumed all of the assigned time slice, it is preempted

Virtual Timer Interrupts in Xen Xen periodically injects virtual timer interrupts to virtual CPUs Based on them, guest OS schedules processes and performs timekeeping VM A VM B proc proc proc guest OS VCPU Xen guest OS VCPU

Basic Idea HyperSlow extremely shortens the interval between virtual timer interrupts, only while a malware process is scheduled Promotes context switch by having guest OS kernel misunderstand the elapsed time Uses CR3 register as a pseudo PID [Jones et al. 06] VM A VM B proc proc proc guest OS VCPU Xen guest OS VCPU

normal process A process B Example timer interrupt interval t ms... While the malware is running, HyperSlow sets Timer interrupt interval: ½ Speed of system time: twice under attack benign process malware process... 0.5t ms Malware obtains only half of the original time slice!

BVMD: DETECTING MALWARE SIGNATURES IN A THIN HYPERVISOR

Background Anti-malware software is effective to detect and/or prevent attacks of malware But, the anti-malware approach has several problems Malware can deactivate anti-malware operations if it compromises the OS kernel Some users may uninstall or turn off antimalware Intentionally or due to operation error

Our Approach Running anti-malware under OS (in hypervisor layer) Administrator installs a hypervisor and guest OS in the machine of each member Member receives the root privilege of the guest OS Administrator keeps the admin privilege of the hypervisor guest OS hypervisor hardware antimalware User Administrator

BVMD: the Proposed System A thin hypervisor provides malware detection facility Use BitVisor [Shinagawa et al., VEE09], a parapass-through hypervisor Detect malware signatures in I/O data transferred between guest OS and devices Advantage Malware detection does not depend on guest OS Windows, Linux,... Malware is still detected if the guest OS is compromised User of guest OS (even an administrator) cannot deactivate antimalware Modification of guest OS or execution of special daemon is not needed

BitVisor Parapass-through (most accesses pass through, minimum accesses are mediated) Small TCB (only 20K+ lines of code as of 2009) guest OS device driver control I/O hypervisor data I/O parapass-through driver monitoring/ verification enforcing security hardware

BVMD Detects malware signatures appearing in the I/O data of the guest OS By intercepting I/O operations Contains a database of malware Reuses the malware signature of free anti-malware software ClamAV Signatures are embedded in the source code of BVMD Performs fast string matching using the Aho-Corasick algorithm

Structure guest OS device driver BitVisor data block signature 52fd5f4030... 5c783666... 65f85b5ec9...... signature automaton generation module signature automaton matching module data block ATA disk

Conclusion We proposed a malware deactivation method Mostly OS-independent Because it changes only the behavior of virtual hardware Process granularity It cannot completely stop malware, but will be useful for the first mild countermeasure in IaaS context We proposed BVMD, a extension to BitVisor that can detect malware signature in a hypervisor layer Malware detection in a host-os-less hypervisor We confirmed that BVMD could detect most of Windows/Linux malware in the wild we collected