virtual machine security design of secure operating systems summer 2012 presented by: musaad...

26
Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Upload: paulina-welch

Post on 18-Dec-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Virtual Machine Security

Design of Secure Operating SystemsSummer 2012

Presented By: Musaad Alzahrani

Page 2: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Outline• Introduction

• Virtualization Benefits

• Virtualization Architectures

• Virtualization Techniques

• Security Benefits

• Security Vulnerabilities

• Conclusion

Page 3: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

• Virtualization is abstracting the hardware resources of a machine.

• It enables running multiple operating systems on virtual machines on the same processing hardware.

• Each virtual machine behaves like an independent machine.

• Virtualization reduces the total number of physical machines and consolidates several virtual machines on a single physical machine.

Introduction

Page 4: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Virtualization Benefits• Save hardware cost and footprint: virtualization provides the ability to take advantage of multiple operating systems on one physical PC. This allows us to buy less hardware and reduce overall system footprint.

• Take advantage of operating system services: with virtualization it is possible to take advantage of the capabilities offered by different operating systems on just one set of hardware.

• Make use of multicore processors: virtualization software can allow users to directly assign groups of processor cores to individual operating systems. For example, if a user wishes to use Linux and a real-time OS, more CPU and memory resources can be allocated to the real-time OS to optimize performance.

• Test beta software and maintain the legacy applications: programmers can test new releases of software without the need for dedicated test machines. If beta software corrupts a given operating system, a parallel operating system running on the same computer can still be used for development.

• Increase system security: virtualization reduces the need for multiple physical computers that operate at different security levels but are not fully utilized.

Page 5: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Virtualization Software• To virtualize a given computer, a piece of software called a

virtual machine monitor (hypervisor) must be installed on host OS or physical hardware.

• After this VMM software is installed, individual virtual machines VMs can be run on the same hardware.

• Each virtual machine can run its own operating system (guest OS).

• VMM manages guest OS and its interaction with host OS or physical hardware.

• It performs process scheduling, memory management, I/O management, and network management operations.

Page 6: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Virtualization Architectures

• There are two major virtualization architectures: hosted and bare-metal.

• Hosted virtualization: VMM is installed on top of a host operating system such as Windows

• Examples: Oracle VirtualBox, Microsoft Virtual PC and VMWare Workstation

• Bare-metal virtualization: VMM is installed directly on hardware for more low-level access.

• Examples: Microsoft Hyper-V, Oracle VM Server(Xen) and Amazon EC2(Xen)

Page 7: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Protection Rings• x86 CPUs provide a range of protection rings in which code

can execute.

• Ring 0 has the highest level privilege and is where the operating system kernel normally runs.

• The hypervisor runs directly on the hardware of the host system in ring 0.

Page 8: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Virtualization Techniques

• Traditional operating system sits directly above the hardware executing in the ring 0.

• In virtualization there are three of the underlying techniques: Paravirtualization, Full Virtualization without Hardware Assist, and Full Virtualization with Hardware Assist.

Page 9: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Paravirtualization• Under paravirtualization, the kernel of the guest operating

system is modified specifically to run on the hypervisor.

• This involves replacing any privileged operations that will only run in ring 0 of the CPU with calls to the hypervisor (known as hypercalls) and the hypervisor in turn performs the task on behalf of the guest kernel.

• This typically limits support to open source operating systems, such as Linux.

Page 10: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Full Virtualization without Hardware Assist

• It provides support for unmodified guest operating systems such as Windows.

• The term unmodified refers to operating system kernels which have not been modified to run on a hypervisor and, therefore, still execute privileged operations as though running in ring 0 of the CPU.

• The hypervisor provides CPU emulation to handle and modify privileged and protected CPU operations made by unmodified guest operating system kernels.

• This emulation process requires both time and system resources to operate, resulting in inferior performance levels when compared to those provided by paravirtualization.

Page 11: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Full Virtualization with Hardware Assist

• Hardware virtualization leverages virtualization features built into the latest generations of CPUs from both Intel and AMD.

• These technologies, known as Intel VT and AMD-V, provide extensions necessary to run unmodified guest virtual machines without the overheads inherent in full virtualization CPU emulation.

• These new processors provide an additional privilege mode below ring 0 in which the hypervisor can operate essentially, leaving ring 0 available for unmodified guest operating systems.

Page 12: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Benefits Abstraction

• Hypervisor abstracts the hardware layer and each VM is allocated its own strictly bounded resources.

• This layer of abstraction provides additional security.

• Hypervisor is much simpler than traditional OS, So it is much easier to secure.

• Since the attacker does not know details of the host environment, manipulating and compromising the machine is much more difficult.

Page 13: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Benefits.. Isolation

• The hypervisors segment physical resources into isolated entities and allow each guest OS to run independently.

• Each VM encapsulates the guest OS and prevents a malicious guest OS from accessing resources it does not own.

• An attack on one VM should not affect any of the other VMs on the server or the host OS.

Page 14: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Benefits.. State restore

• VMs are able to restore to a previous state.

• The contents of the virtual disk for each VM are usually stored as a file on the host.

• Most VMs take a snapshot of the contents of the virtual disk when changes are made or on a time interval.

• When VM is compromised, the hypervisor can remove that VM or restore it to a state prior to attack.

Page 15: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Benefits.. Transience

• VMs can be started remotely.

• This allows them to be turned on and made available only when needed.

• Minimizing how much time a given computer is online is the best deterrent against malicious attacks, since an offline server cannot be accessed.

Page 16: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Benefits.. External monitoring

• Since VMs run on a subset of hardware resources, it is possible observe VM resource usage and detect malicious software from outside the VM.

• VMs can be monitored by an authorized dedicated VM that can view software activity.

• The hypervisor can give the dedicated VM permission to view resources allocated to the monitored VM.

Page 17: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Vulnerabilities VM sprawl

• The biggest vulnerability of virtualization is due to the ease in which users can create many VMs in a short time.

• It becomes very difficult to secure, monitor, and maintain each VM.

• Traditional security methods need to be applied to each VM since the guest OS accesses the network directly.

• A compromised VM is a potential entry point for attackers to the hypervisor and host.

• VM sprawl wastes resources and creates more entry points for attackers.

Page 18: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Vulnerabilities.. State restore

• Even though the ability of a VM to restore to a previous state is often considered a security benefit to protect against data loss, returning to an unpatched or compromised state is a great danger.

• A VM may get a security patch, but if for some reason the user needs to rollback to a previous state, then the guest OS is no longer patched.

• Another concern is returning to a compromised state.

• A machine may detect a virus and remove it from the system. If a user returns to a state prior to virus removal, the virus may exist on the system.

Page 19: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Vulnerabilities..

Mobility

• Virtual machines are not physical, which means their theft can take place without physical theft of the host machine.

• The contents of the virtual disk for each VM are stored as a file by most hypervisors, which allows VMs to be copied and run from other physical machines.

• Attackers can copy the VM over the network or to a portable storage media and access data on their own machine without physically stealing a hard drive.

Page 20: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Vulnerabilities.. Hypervisor intrusion

• The hypervisor is a program, running on the host, so if it is compromised, all VMs it controls and the host itself are accessible to the attacker.

• If the host OS is not securely protected, the attacker could corrupt or externally modify guest OS while the VM is offline.

Hypervisor modification

• It does not matter how secure the original hypervisor is if it can be externally modified to use the attacker’s software.

• One attack of this form is known as Virtual Machine Based Root Kits (VMBR).

• In this attack, the hypervisor’s system calls to the host OS are changed to run malicious code.

Page 21: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Vulnerabilities..

Communication

• Attackers can use one VM to access or control other VMs on the same hypervisor.

• A malicious VM can potentially access other VMs through shared memory, network connections, and other shared resources.

• For example, if a malicious VM determines where another VM’s allocated memory lies, then it could read or write to that location and interfere with the other’s operation.

Page 22: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Security Vulnerabilities..

Denial of service

• An improperly configured hypervisor can allow a single VM to consume all resources, thus starving any other VM running on the same physical machine.

Page 23: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Conclusion • Virtualization allows multiple OS installations to share the

same hardware resources.

• The hypervisor manages these resources and to create the virtual environment for each guest OS.

• When virtualizing a machine, either hosted or bare-metal virtualization can be used.

• At a low level, these architectures depend on techniques such as paravirtualization, full virtualization without hardware assist, and full virtualization with hardware assist to accomplish virtualization.

Page 24: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Conclusion..

• The hypervisor provides an additional layer of abstraction from physical hardware.

• This abstraction encapsulates malicious attacks and allows external monitoring for malicious attacks on a VM.

• Virtualization itself is not inherently unsecured; it is a new technology that potentially has new vulnerabilities and requires restructuring of manual security processes.

Page 25: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

References • On state of the art in virtual machine security: Qian Chen;

Mehrotra, R.; Dubeyy, A.; Abdelwahed, S.; Rowland, K. Southeastcon, 2012 Proceedings of IEEE Digital Object Identifier: 10.1109/SECon.2012.6196905, Publication Year: 2012, Page(s): 1 - 6

• http://www.cse.wustl.edu/~jain/cse571-09/ftp/vmsec/index.html

• http://www.ni.com/white-paper/8708/en

• http://www.ni.com/white-paper/8709/en

• http://itechthoughts.wordpress.com/tag/paravirtualization/

Page 26: Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani

Thank you for listening

Questions?