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



Similar documents
Lecture Embedded System Security Dynamic Root of Trust and Trusted Execution

Virtualization and Performance NSRC

Virtualisation Without a Hypervisor in Cloud Infrastructures: An Initial Analysis

Enabling Technologies for Distributed Computing

Enabling Technologies for Distributed and Cloud Computing

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

Guardian: Hypervisor as Security Foothold for Personal Computers

Frontiers in Cyber Security: Beyond the OS

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

Intro to Virtualization

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

IOS110. Virtualization 5/27/2014 1

Introduction to Trusted Execution Environments (TEE) IY5606

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

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

Fengwei Zhang. Research Interest. Education. Employment History

Computer Virtualization in Practice

Virtual Switching Without a Hypervisor for a More Secure Cloud

VMware Server 2.0 Essentials. Virtualization Deployment and Management

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

UNCLASSIFIED Version 1.0 May 2012

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Multi-core Programming System Overview

Virtualization Technology

The Art of Virtualization with Free Software

How To Stop A Malicious Process From Running On A Hypervisor

A Threat Model for a Cloud Infrastructure with no Hypervisor

OpenSPARC T1 Processor

Lecture Overview. INF3510 Information Security Spring Lecture 4 Computer Security. Meaningless transport defences when endpoints are insecure

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

Virtualization System Security

CSE 501 Monday, September 09, 2013 Kevin Cleary

Performance tuning Xen

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

RPM Brotherhood: KVM VIRTUALIZATION TECHNOLOGY

Virtualization. Types of Interfaces

Full and Para Virtualization

COS 318: Operating Systems. Virtual Machine Monitors

Uni-directional Trusted Path: Transaction Confirmation on Just One Device

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

Memory Channel Storage ( M C S ) Demystified. Jerome McFarland

Lesson 06: Basics of Software Development (W02D2

A Comparison of VMware and {Virtual Server}

Storage Class Memory Support in the Windows Operating System Neal Christiansen Principal Development Lead Microsoft

AwardBIOS Setup Utility

Cisco Prime Home 5.0 Minimum System Requirements (Standalone and High Availability)

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

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

PARALLELS SERVER 4 BARE METAL README

Chapter 5 Cubix XP4 Blade Server

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

Arrow ECS sp. z o.o. Oracle Partner Academy training environment with Oracle Virtualization. Oracle Partner HUB

Virtual Machines.

Models For Modeling and Measuring the Performance of a Xen Virtual Server

Survey on virtual machine security

Hardware RAID vs. Software RAID: Which Implementation is Best for my Application?

Trusted Virtual Machine Management for Virtualization in Critical Environments

Configuring Memory on the HP Business Desktop dx5150

Outline. Outline. Why virtualization? Why not virtualize? Today s data center. Cloud computing. Virtual resource pool

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

MODULE 3 VIRTUALIZED DATA CENTER COMPUTE

Table of Contents. Server Virtualization Peer Review cameron : modified, cameron

Fall Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

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

SUSE Linux Enterprise 10 SP2: Virtualization Technology Support

Software Execution Protection in the Cloud

Windows Server Virtualization & The Windows Hypervisor

Privacy Protection in Virtualized Multi-tenant Cloud: Software and Hardware Approaches

Hardware Based Virtualization Technologies. Elsie Wahlig Platform Software Architect

VIRTUALIZATION, The next step for online services

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc.

EVGA Z97 Classified Specs and Initial Installation (Part 1)

85MIV2 / 85MIV2-L -- Components Locations

The Xen of Virtualization

Media Exchange really puts the power in the hands of our creative users, enabling them to collaborate globally regardless of location and file size.

Virtualised MikroTik

Tech Throwdown: Invincea FreeSpace vs. Micro-Virtualization

Enterprise-Class Virtualization with Open Source Technologies

Virtual Machine Security

Implementation and Implications of a Stealth Hard-Drive Backdoor

Virtualization and Other Tricks.

Virtual Machines. COMP 3361: Operating Systems I Winter

Random Access Memory (RAM) Types of RAM. RAM Random Access Memory Jamie Tees SDRAM. Micro-DIMM SO-DIMM

E2437. Motherboard. Troubleshooting Guide Q & First Edition September 2006 Copyright 2006 ASUSTeK COMPUTER INC. All Rights Reserved.

Operating Systems 4 th Class

NetScaler VPX FAQ. Table of Contents

Security Challenges in Virtualized Environments

nanohub.org An Overview of Virtualization Techniques

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 2 Systems Threats and Risks

Virtualization. Dr. Yingwu Zhu

Virtualization. Pradipta De

Practice Test for the Domain 1 - PC Hardware (Brought to you by RMRoberts.com)

Citrix XenServer Product Frequently Asked Questions

Transcription:

SecureSwitch: BIOS-Assisted Isolation and Switch between Trusted and Untrusted Commodity OSes! Kun Sun, Jiang Wang, Fengwei Zhang, Angelos Stavrou! Center for Secure Information Systems! George Mason University!

Outline! Introduction! Related Works! Background Knowledge! System Architecture! Experimental Results! Discussion! Summary!

Introduction! Segregate personal communication and entertainment from business and government operations! In untrusted environment: Web browser, online gaming, social web portal! In trusted environment: Online banking, shopping, business email! Trusted computing environment! Separate/isolate the trusted environment from the untrusted environment! Prevent data leakage even if the host has been previously infected with malware in the untrusted environment.! Enables secure transactions on demand with low context switching latency!

Outline! Introduction! Related Works! Background Knowledge! System Architecture! Experimental Results! Discussion! Summary!

Lampson Red/Green System Separation! Red/Green system: Policy + Isolation + Accountability +Freedom! * Butler Lampson, Accountability and Freedom Slides, Microsoft, September 2005! Our work focuses on isolation between two environments! Not on how the users decide what applications go into each OS! Not on how to give the user control over data exchanges between the two environments!

Software-based Isolation Solution! VMM-based! OS-based! Browser-based! Isolation Level! OS level! User/Process level! Applet level! Examples! Xen, VMware, QEMU, UML! FreeBSD Jail,! Linux OpenVZ, Solaris Container! Adobe Flash,! Java applets,! Silverlight! Security concerns! VMM vulnerabilities*! Covert Channel! VMM vulnerabilities! OS vulnerabilities! Privilege escalation! VMM vulnerabilities! OS vulnerabilities! Browser vulnerabilities! * From 1999 to 2009, 373 vulnerabilities affecting virtualization solutions.!!!--- IBM X-Force 2010 Mid-year trend and risk report!

Hardware-based Isolation Solution! Multiple! Computers! Multi-boot! VT-x / SVM! (DRTM)! Isolation Level! Whole physical computer! OS level;! Instruction level;! Examples! Bootloader:! LILO, Grub! Flicker [1];! TrustVisor [2];! Problems! Cost, inflexible! Long switching time! Software compatibility! Our work provides an BIOS-assistant OS level isolation! without using any mutable software layer (e.g., hypervisor)! no changes of the OS source code! no data leak between two OS environments! fast switching time, around 6 seconds!

Outline! Introduction! Related Works! Background Knowledge! System Architecture! Experimental Results! Discussion! Summary!

ACPI Sleeping States! Advanced Configuration and Power Interface (ACPI)! OS-directed configuration; Power/thermal management! Industrial standard widely supported! Global System States! G0 --- Working (System Operational) G1---Sleeping (CPU stopped) G2 ---Soft Off G3 ---Mechanical off (Physical off switch) Sleeping States in G1: S1 S4! S3: also called Standby, Suspend to RAM DRAM still maintained S4: also called Hibernation or Suspend to Disk DRAM not maintained Device Power States: D0 D3! D0 - Fully-On! D3 -- Power off to device

BIOS, UEFI, and Coreboot! Basic Input/Output System (BIOS)! Initializing hardware like processor, memory, chipset, hard disk, and other I/O devices.! Stored in non-volatile ROM chips.! Unified Extensible Firmware Interface (UEFI)! Define a new software interface between OS and firmware.! Ease the development by switching into protected mode in early stage and writing code in C language.! Partially open source! Coreboot (formerly as LinuxBIOS)! Similar functionality as UEFI! Open source! We use Coreboot V4!

DIMM Mask and DQS Setting! A motherboard may have more than one Dual In-line Memory Module (DIMM) slot.! We assign one DIMM to one OS.! BIOS uses DIMM_MASK variable to control which DIMMs to be enabled.! BIOS sets corresponding data strobes (DQS) parameters to enable DDR RAM memory access.! Require two sets of DQS setting to support the two DIMMs used by two OSes separately.!

Outline! Introduction! Related Works! Background Knowledge! System Architecture! Experimental Results! Discussion! Summary!

System Architecture!

Attack Model! Assumption! BIOS and option ROM on devices can be trusted.! No physical access to the protected machine! Attacks from the untrusted OS! Data exfiltration attacks: stealing sensitive data from the trusted OS! Spoofing Trusted OS attacks: deceiving the user into a fake trusted OS to perform sensitive transactions.! Cache-based side channel attacks: extracting sensitive information! Out of the scope! Denial of Service attacks! Network attacks on trusted OS! Malicious device firmware!

Secure Switching State Machine!

Trusted Path! A trusted path assures users that they really are working with the operation system they intend to use.! Prevent spoofing trusted OS attacks! Untrusted OS should be truly suspended.! Power LED lights up when system is powered on, and blinks in the sleep mode.! BIOS should be entered.! Press the power button.! Protecting system flags/variables! OS Flag: which OS should be woken next! Boot Flag: if untrusted OS has been loaded! Where to save these flags?! Boot Flag: in CMOS! OS Flag: physical jumper (e.g., pins in Parallel port connector)!

Secure Switching Process!

System Isolation! CPU Isolation: two OSes never run concurrently.! Memory Isolation: physical-level isolation! Hard disk isolation: encrypted hard disk + RAM disk! Other I/O isolation: clean the buffers and states in devices.! Isolation Mechanisms:! CPU! Memory! Hard Disk! VGA! NIC! OS with ACPI S3!!!!!! BIOS!!!

Physical-level Memory Isolation! OS environments run in separate Dual In-line Memory Modules (DIMMs).! BIOS only enables and reports one DIMM for each OS.! Two DQS settings for two OSes! DIMM_MASK controlled by the physical jumper.! When the DIMM_MASK conflicts with DQS setting, the system crashes! Only the BIOS can initialize and enable the DIMMs; software cannot initialize or enable DIMMs after the system boots up!

Hard Drive Isolation! Hard disk encryption! Two hard disks, one for each OS.! Disk lock in ATA specification! BIOS only enables one hard disk! Attacker may change the setting to enable all hard disks! We use SMM-based detection to check that the channel enable registers has not been changed! RAM disk! For browser-based application, save a small amount of temporary data in the RAM!

Outline! Introduction! Related Works! Background Knowledge! System Architecture! Experimental Results! Discussion! Summary!

Prototype! > Hardware! > Motherboard: ASUS M2V-MX_SE! > CPU: AMD Sempron 64 LE-1300! > DDR2: Kingston HyperX 1GB! > HDD: Seagate 500GB! > Software! > BIOS: Coreboot + SeaBIOS! > Trusted OS: Linux (Centos 5.5)! > Untrusted OS: Windows XP!

Performance Analysis!

Linux Suspend Time Breakdown! User Space : 1517.33 ms! Kernel Space: 1590.14 ms!

Linux Wakeup Time Breakdown! User Space: 621.04 ms! Kernel Space: 1537.22 ms!

Outline! Introduction! Related Works! Background Knowledge! System Architecture! Experimental Results! Discussion! Summary!

Comparison with other systems!

Summary! We develop a BIOS-based secure isolation and switching system to obtain a usable trusted workspace! Prevent data leakage! Without using hypervisor! No changes of OS source code! Low switching time!

Thank you.! Questions?!

Reference! [1]. J. McCune, B. Parno, A. Perrig, M. Reiter, and H. Isozaki. Flicker: An execution infrastructure for TCB minimization. In Proceedings of the 3rd ACM SIGOPS/EuroSys European Conference on Computer Systems 2008, pages 315 328. ACM, 2008.! [2]. J. M. McCune, Y. Li, N. Qu, Z. Zhou, A. Datta, V. Gligor, and A. Perrig. TrustVisor: Efficient TCB reduction and attestation. In Proceedings of the IEEE Symposium on Security and Privacy, 2010.!