Virtualization Technology

Similar documents
Virtualization. Types of Interfaces

VMware Server 2.0 Essentials. Virtualization Deployment and Management

IOS110. Virtualization 5/27/2014 1

Virtualization for Security

Virtualization. Dr. Yingwu Zhu

COS 318: Operating Systems. Virtual Machine Monitors

The Art of Virtualization with Free Software

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Anh Quach, Matthew Rajman, Bienvenido Rodriguez, Brian Rodriguez, Michael Roefs, Ahmed Shaikh

nanohub.org An Overview of Virtualization Techniques

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

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

Solution Recipe: Improve PC Security and Reliability with Intel Virtualization Technology

Knut Omang Ifi/Oracle 19 Oct, 2015

Virtualization and the U2 Databases

RPM Brotherhood: KVM VIRTUALIZATION TECHNOLOGY

A Survey on Virtual Machine Security

Full and Para Virtualization

Virtual Machines.

Virtualization. Michael Tsai 2015/06/08

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

Parallels Virtuozzo Containers

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

Enterprise-Class Virtualization with Open Source Technologies

Intro to Virtualization

Basics of Virtualisation

VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D

Chapter 14 Virtual Machines

Virtual Machine Security

Virtualization. Introduction to Virtualization Virtual Appliances Benefits to Virtualization Example Virtualization Products

Virtualization. Jukka K. Nurminen

M.Sc. IT Semester III VIRTUALIZATION QUESTION BANK Unit 1 1. What is virtualization? Explain the five stage virtualization process. 2.

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

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

Virtualization System Security

Securing Your Cloud with Xen Project s Advanced Security Features

Understanding Full Virtualization, Paravirtualization, and Hardware Assist. Introduction...1 Overview of x86 Virtualization...2 CPU Virtualization...

Hypervisor Software and Virtual Machines. Professor Howard Burpee SMCC Computer Technology Dept.

What is virtualization

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

Networking for Caribbean Development

Virtualization for Cloud Computing

Virtualization and Performance NSRC

Comparing Virtualization Technologies

The future is in the management tools. Profoss 22/01/2008

Comparing Free Virtualization Products

Virtual Machines and Security Paola Stone Martinez East Carolina University November, 2013.

Installing & Using KVM with Virtual Machine Manager COSC 495

OPEN SOURCE VIRTUALIZATION TRENDS. SYAMSUL ANUAR ABD NASIR Warix Technologies / Fedora Community Malaysia

CMPT 471 Networking II

The QEMU/KVM Hypervisor

Chapter 5 Cloud Resource Virtualization

Windows Server 2008 R2 Hyper V. Public FAQ

Regional SEE-GRID-SCI Training for Site Administrators Institute of Physics Belgrade March 5-6, 2009

Introduction to Virtual Machines

MODULE 3 VIRTUALIZED DATA CENTER COMPUTE

Distributed Systems. Virtualization. Paul Krzyzanowski

Best Practices for Monitoring Databases on VMware. Dean Richards Senior DBA, Confio Software

VMWARE Introduction ESX Server Architecture and the design of Virtual Machines

Virtualizare sub Linux: avantaje si pericole. Dragos Manac

Servervirualisierung mit Citrix XenServer

Peter Ruissen Marju Jalloh

Hypervisor Competitive Differences: Beyond the Data Sheet. Chris Wolf Senior Analyst, Burton Group

Module I-7410 Advanced Linux FS-11 Part1: Virtualization with KVM

Compromise-as-a-Service

RED HAT ENTERPRISE VIRTUALIZATION

CSE 501 Monday, September 09, 2013 Kevin Cleary

Virtualization. Pradipta De

Running Windows on a Mac. Why?

Virtualization. Jia Rao Assistant Professor in CS

VIRTUALIZATION 101. Brainstorm Conference 2013 PRESENTER INTRODUCTIONS

Virtualization in Linux

Developing a dynamic, real-time IT infrastructure with Red Hat integrated virtualization

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

SAN Conceptual and Design Basics

Virtual machines and operating systems

Cloud Computing. Chapter 8 Virtualization

Solution Guide Parallels Virtualization for Linux

SUSE Linux Enterprise 10 SP2: Virtualization Technology Support

The XenServer Product Family:

Before we can talk about virtualization security, we need to delineate the differences between the

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

Virtualization: Know your options on Ubuntu. Nick Barcet. Ubuntu Server Product Manager

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

kvm: Kernel-based Virtual Machine for Linux

Virtualization and Cloud Computing

Virtualization Security and Best Practices. Rob Randell, CISSP Senior Security Specialist SE

COS 318: Operating Systems. Virtual Machine Monitors

Getting the Most Out of Virtualization of Your Progress OpenEdge Environment. Libor Laubacher Principal Technical Support Engineer 8.10.

APPLICATION OF SERVER VIRTUALIZATION IN PLATFORM TESTING

PARALLELS SERVER BARE METAL 5.0 README

Virtualization: Concepts, Applications, and Performance Modeling

COM 444 Cloud Computing

Transcription:

Virtualization Technology A Manifold Arms Race Michael H. Warfield Senior Researcher and Analyst mhw@linux.vnet.ibm.com 2008 IBM Corporation

Food for Thought Is Virtual Reality an oxymoron or is it the department of redundancy department and how could you tell? 3

Introduction Virtualization has been a hot topic in IT news. Frequent topic of discussion in user's groups. Products like VMware and Xen are making great advances. Hardware advances are improving virtualization capabilities. Malware like blue pill are worrying researchers. Virtualization is much older than all this. Virtualization is much broader than all this. Virtualization is much more pervasive than all this. 4

Virtualization Virtualization, in computer technology, is the process of grouping and dividing the resources of a computer system into multiple execution environments by applying one or more methodologies or technologies such as hardware or software partitioning, partial or complete machine simulation, and/or emulation. Corollary 1: Virtualization should have no operational impact on applications running under virtualization. Corollary 2: A normally operating application should experience no change to its operation when running under virtualization. A virtual machine environment is a virtualization in which an entire system is virtualized. Corollary 1: A Virtual Machine Environment should have no operational impact on the system or applications running under virtualization. Corollary 2: A normally operating system and its applications should experience no change to its operation when running under virtualization. 5

Virtualization Timeline Some events in virtualization in virtualization history and their relationship to other computer related events and timeframes. 6

Classical Features and Attractions Hardware consolidation and reduction Demand for electricity is reduced. Fewer systems require less floor space. Fewer systems require less air conditioning and lighting. Even with redundancy factored in, the savings are impressive. Hardware task provisioning Software compartmentalization Creation of software appliances Snapshots of entire servers Live backups of running servers Diagnostic and analytical rollbacks Hot migration of live servers across hardware Maintenance of legacy systems as virtual images 7

Advanced Features and Attractions Greatest advantage is in expanded flexibility. Number of systems!= Number of hardware machines. Multiple machines, multiple cores, provide horsepower. Dynamically allocate clustering resources. Multiple virtual machines provisioned across hardware cluster. Fast redundancy and failover. Dynamically add virtual systems. Dynamically add hardware. Remote management systems without dedicated hardware. 8

Virtualization Techniques 9

Simple Forms of Virtualization Application Configuration of resources so that one application may appear to be more than one instance. Multiple personalities and configurations Emulation Performed through emulation of a machine's instructions. Tends to be quite slow and inefficient. Can be extremely versatile. Can virtualize foreign hardware and architectures. Virtual Machine Interpreters These interpret their own specific language. Generally have a virtual environment sandbox. API Virtualization Replaces the API layer with a virtual subsystem library. Applications execute native machine instructions. Replaces foreign API libraries with libraries and interfaces to the host facilities and libraries. 10

Operating System Virtualization Operating System Virtualization does to systems what Application Virtualization does to applications. Core system provisions virtual machines and resources through partitioning and/or system configurations. Applications run on a common core system or kernel. This tends to be highly efficient. There is little CPU overhead. It does result in some memory overhead. Dedicated disk images are not required. It cannot run multiple disparate operating systems. Examples: Virtuoso, OpenVZ, Linux Vservers Solaris Zones, FreeBSD Jails/Gaols 11

Paravirtualization Paravirtualization is machine virtualization which uses hooks into the virtualized environment to aid in the virtualization. Guest systems are modified to be virtualization aware. This can run adapted foreign operating systems. Virtualized guests cooperate with the virtualizing hypervisor. Reasonably efficient use and load optimization. Examples: XEN (with or without hardware virtualization) Virtual Iron Virtual Box UML (User Mode Linux) 12

Native Virtualization Native virtualization is a step closer to the hardware. Guest systems do not need to be modified. Specific devices are emulated which guest system recognize. Emulated devices need not correspond to host devices. Device drivers specific for the virtualization are not required. Virtualization tools may be used to facility guest operation. Examples: VMware Workstation Virtual PC Parallels (Mac) 13

Hardware Virtualization Hardware Virtualization takes the closest step to the hardware. The hypervisor manages the supervisory state and hardware access and contention between the virtual systems. The hypervisor can be made much thinner. Guests are managing most of the work. No need for emulated device drivers. This can virtualize very difficult foreign systems. Examples: VMware ESX Server with HVM / Intel VT / AMD SVM XEN 3 with HVM / Intel VT / AMD SVM 14

Hardware Virtualized System A system with hardware virtualization supports running multiple different operating systems sharing the same hardware and managing contention between the guest systems. Each guest should be unaware that they are sharing resources with other guests. 15

Choosing the Right Virtualization Operating System Virtualization is highly efficient. Applications must run on the same kernel. Paravirualization can run other operating systems efficiently. Operating systems must be modified or limited. Native virtualization can run a wider variety of guests. Native virtualization is more complex and less efficient. Hardware virtualization is the most versatile. Hardware virtualization is less efficient and unable to take advantage of device driver and scheduler accelerations. Composite virtualization can take advantage of combinations. Each individual method has it's own advantages and disadvantages. 16

The Arms Races (None of this has been lost on the bad guys) 17

The Arms Races Virtualization is a powerful, versatile, featureful computing facility. This has not been lost on the malware community. Malware writers see virtualization as a tool to improve root-kits. Root-kits are tools designed to actively evade detection. There is interest in hypervisor based root-kits. They want to evade virtualization used in analyzing malware. They want to tune and design attacks against virtualization. This has led to a manifold, or multiple, arms race. 18

Detecting Virtualization The first arms race is in detecting virtualization. A lot of malware now refuses to run under virtualization. This can generally be evaded by researchers. Attackers want to break out of virtualization environments. They want to attack other guest systems. They especially want to attack the host system. Anything on the host system is dios ex machina to processes on the guests. Many common techniques for detecting VMware and VirtualPC. Device drivers I/O ports Communications channels XEN, Virtual Box, and Virtual Iron are not commonly checked for. Good guys need to detect malicious hypervisors. Timing irregularities Resource consumption 19

Undetectable Virtualization Flip side of detection is in creating undetectable virtualization. Legitimate hypervisors strive to have little impact on guests. Legitimate hypervisors have no need to hide, per se. Legitimate hypervisors have to be compatible with guest systems. Legitimate hypervisors may strive to be difficult to detect by malware. Malicious hypervisors also strive to have little detectable impact. Malicious hypervisors do need to hide. Malicious hypervisors need to be transparent. Transparency is not the same as compatibility. Transparency should not possible in theory. We're already having trouble detecting what's already there. Compatibility is a much easier goal to reach. 20

The Race for Ring 0 The first two races together create a pressure for a third race. Ring 0 is the supervisory state of the processor, the highest level of privilege on the hardware. Ideally, hypervisors can virtualize other hypervisors in a stack. This can be a test for detecting incomplete virtualization. Superior hypervisors can easily detect other inferior hypervisors. This can be a detection for virtualization attacks. Inferior hypervisors should have a hard time detecting parents. The first hypervisor to control ring 0 wins. Subsequent hypervisors are virtualized under (inferior to) the hypervisor sitting in ring 0. Future systems may have thin hypervisors in boot firmware. 21

Nested Hypervisors A simple system with a hypervisor and a single guest A system with nested hypervisors (which one is the bad guy?) 22

Complex System A system with a hypervisor in ring 0 infected with a malicious hypervisor in one virtual machine of many 23

Defense and Counter Measures If ring 0 is the holy grail of the previous race, defense of ring 0 is paramount in the next race. Without a preexisting hypervisor, ring 0 must be protected. Virtualization provides some prophylactic protection. It's much harder to tell a good hypervisor from a bad hypervisor. Hypervisors may still be subject to hypervisor specific attacks. Hardware virtualization should be disabled where possible when not needed. Not all processors and BIOS permit disabling HVM features. 24

Virtualization and Security 25

Virtualization Improves Security Virtualization helps compartmentalize functionality. Functions which use to share a common machine can be isolated. Web server compromise doesn't lead to DNS compromise, etc. Security services can be isolated from public services. Security monitoring can be out of band to what's monitored. Independent security subsystems can be bolted on. 26

Virtualization Degrades Security Merely consolidating systems does nothing to improve security. Adding a hypervisor layer and addition OS complicates things. Complexity is the enemy of security. Hypervisors may have their own vulnerabilities. Attacks between virtual machines are possible. Networking becomes much more complicated. 27

Virtualization Complicates Security Complex virtual systems have their own internal networking. Networking may be bridged or routed or NAT or any combination. Internal networks have their own virtual etherswitches or routers. Control and isolation of promiscuous bridge interfaces is very complicated. Virtualized networks complicate firewall logic. External IDS/IPS can not monitor inter-vm traffic. Virtual IDS/IPS may have limited scope. Inter-VM traffic and switch logic varies with hot migrations. Tracking down phantom virtual systems can be challenging. Virtualization complicates issues with TPM and DRM. 28

Attacks Against Virtual Environments Communications channels Shared resources Shared folders Device drivers Devices with direct memory access USB and Firewire devices Emulated device firmware Network cards Direct bus communications Incomplete emulation or hypervisor bugs Most require some knowledge of the type of virtualization 29

Defense Against Attackers Disable communications channels when not needed. Disables VMware Tools. Disable shared resources. Shared folders may not available. Minimize services in the host system. Monitor host systems for virtualization probing. Change virtualization system defaults. Doesn't protect against attacks. Makes probes easier to detect. 30

A Defensive Virtualized Honeynet Compound system incorporating all elements of a honeynet Virtualized low and high interaction honeypots Containment firewall and independent routing IDS, Master Control, and Logging (and dead man switches) 31

Joanna's Little Blue Pill Blue Pill was written by Joanna Rutkowska. It's just one example of a malicious thin hypervisor. Proof of concept was presented at Black Hat. It's memory resident, extremely difficult to detect. Exploited a swapped-out device driver on Windows Vista to load. It contained no real malicious code in any payloads. Is detectable by timing tests. Newest instantiation claims to be able to virtualize a hypervisor. Newer detection tests look for TLB changes and other resources. There is an arms race here, between researchers, in and of itself. 32

Closing 33

The Future Virtualization will continue to become cheaper and cheaper. Virtualization has been introduced into the Linux Kernel (lkvm). Virtualization API's in the kernel have been released. More vendors are offering more products. More projects are maturing rapidly. Hardware vendors are promising better virtualization features. System vendors are working to deliver thin hypervisors in firmware. The future is very bright for virtualization. That light could be the headlight of an on-coming train. 34

Virtualization Technology A Manifold Arms Race Thank You! Michael H. Warfield Senior Researcher and Analyst mhw@linux.vnet.ibm.com 2008 IBM Corporation