D uk e S ystems - University of Michigan
Download
Report
Transcript D uk e S ystems - University of Michigan
Duke Systems
Pocket Hypervisors:
Opportunities and Challenges
Landon Cox
Duke University
Peter Chen
University of Michigan
Duke Systems
Conventional organization
Process
Process
Process
Operating System
Duke Systems
Hypervisor organization
Process
Guest OS
Process
Guest OS
Encapsulation
Mediation
Isolation
Hypervisor
Duke Systems
Recent interest in hypervisors
Lots of papers/companies the past five years
Xen, VMware, ReVirt, Potemkin, etc.
On mobile devices? Not so much.
Some uses of encapsulation (ISR, SoulPad)
No uses of mediation or isolation
Why? Hypervisors have been considered impractical
Insufficient hardware support
Prohibitive performance overhead
Duke Systems
Pocket hypervisors are
practical and useful.
Hardware support
Privilege modes
MMU
Moore’s Law
Security
Opportunistic
services
Duke Systems
Securing commodity devices
With PC functions come PC problems
Mobile malware already exists (Cabir, Skulls)
BlueTooth exploits (BlueBug, SNARF)
Poses new kinds of threats
Conversation eavesdropping
Location privacy compromises
Gain access to telecom resources
trifinite.org, bluestumbler.org
Duke Systems
Simple example attack: Skulls
“Flash
player”
Address
book
Camera
Mobile
Antivirus
Blue
Tooth
services
OS
On reboot, phone can only make and receive calls.
Duke Systems
Partition device functionality
“Flash
player”
Blue
Tooth
services
3rd party Guest
OS
Camera
Mobile
Antivirus
Blue
Tooth
services
Core Guest OS
Pocket Hypervisor
Isolate core services from untrusted apps.
Age-old challenge: how to still allow sharing?
Shared file space? Explicit message passing?
Duke Systems
Example attack: BlueBug
Address
book
Mobile
Antivirus
Camera
Blue
Tooth
services
OS
Remote access to SIM card, can issue AT commands.
(attacker can read contacts, make calls, send SMS)
Duke Systems
Security services
App
App
3rd party Guest
OS
Camera
Mobile
Antivirus
Blue
Tooth
services
Core Guest OS
Pocket Hypervisor
Security
services
Difficult to stop this attack (can’t force BT to properly authenticate)
Hypervisor can still provide secure logging, profiling services
Key challenge: how to expose and log guest state efficiently
Duke Systems
Pocket hypervisors are
practical and useful.
Hardware support
Security
Opportunistic
services
Duke Systems
Sensor networks
Expose information about environment
Light, pressure, temperature readings
Expands vantage point of owner
Hundreds of observation points
Streamed/aggregated to central location
Mote price-performance ratio
Cheap nodes allow large deployments
(cover large area, overcome failures)
Powerful nodes allow complex applications
Duke Systems
Mobile phones as sensors
Expose information about environment
Network events, MAC addresses, ESSIDs
Expands vantage point of owner
Hundreds of observation points
Streamed/aggregated to central location
Phone price-performance ratio
Cheap nodes allow large deployments
(cover large area, overcome mobility)
Powerful nodes allow complex applications
Duke Systems
Opportunistic services
COPSE (new project at Duke)
Concurrent opportunistic sensor environment
“A thicket of small trees cut for economic purposes.”
Allow execution of untrusted service instances
Enables mobile testbeds, opportunistic sensor nets
Hypervisor ensures isolation (performance, energy)
Key tension
Encourage volunteers to participate
Support useful services
Duke Systems
Internet
What are the disincentives to participate?
Duke Systems
Example disincentive
Duke
Franc
Home
Adversaries
shouldn’t be
able to upload
Duke
location
Franc
Home
trackers.
Duke Systems
Location privacy
Could enforce execution regions
Only execute guests within a physical region
Requires access to a location service
Could “scrub” MAC addresses
Hypervisor manages device namespace
Translate names between VM and network
Duke Systems
App
App
App
App
Guest OS
Guest OS
Guest OS
Guest OS
N2 =
00:30:65:0D:11:61
N2 =
00:30:65:0D:11:61
N1 =
00:13:21:B7:94:B9
N1 =
00:13:21:B7:94:B9
VDriver
VDriver
VDriver
VDriver
Hypervisor
Hypervisor
00:0C:29:4E:F4:1C
00:30:65:0D:11:61
Machine Driver
00:18:DE:2C:A3:8A
00:13:21:B7:94:B9
Machine Driver
Wireless NIC
Wireless NIC
00:18:DE:2C:A3:8A
00:0C:29:4E:F4:1C
Node One (N1)
Node Two (N2)
Duke Systems
Conclusions
Pocket hypervisors are practical and useful
Practicality
Commodity devices support for virtualization
Devices resources are becoming more plentiful
Usefulness
Device security
Opportunistic services
Duke Systems