290 likes | 487 Views
PALM : Security Preserving VM Live Migration for Systems with VMM-enforced Protection. Fengzhe Zhang , Yijian Huang, Huihong Wang, Haibo Chen, Binyu Zang Parallel Processing Institute Fudan University. Outline. Motivation Challenges and solutions PALM system Conclusions.
E N D
PALM:Security Preserving VM Live Migration for Systems with VMM-enforced Protection Fengzhe Zhang, Yijian Huang, Huihong Wang, Haibo Chen, Binyu Zang Parallel Processing Institute Fudan University
Outline • Motivation • Challenges and solutions • PALM system • Conclusions
Remote Computing Q: Could user’s privacy be kept at the remote site?
Privacy in Danger Hacker Commodity OSes are not trusted Applications Device Drivers OS Kernel Module Admin Module Remote Platform TPM
VMM-enforced Privacy Protection Protected App OS Kernel Modified VMM Remote Platform TPM
VM Live Migration Protected App OS Kernel VMM VMM VMM VMM VMM VMM VMM VMM VMM Platform Platform Platform Platform Platform Platform HW Platform HW Platform HW Platform
The Goal • The goal of PALM • Extend privacy protection to the migration procedure • The protection is transparent to existing OSes and the applications • Performance impact on the migration should be moderate
Outline Motivation Challenges and solutions PALM system Conclusions
Threat Model • Commodity operating systems are not trusted • The VMM is trusted • The platform owner / administrators are not trusted • Only defend against software attacks
Threat Model in Xen Control VM Migrating VM Migration Tools Normal App Protected App Dom0 Kernel DomU Kernel Modified VMM Integrity Measurement Remote Platform TPM
Challenge 1/3 The Control VM has the privilege to map pages from DomU DomU Memory 10 01 10 01 Migration Tools SSL 10 01 10 01 Network 10 01 10 01
Memory Protection DomU Memory Memory encryption and redirection 10 01 10 01 10 01 Migration Tools Currently mapped memory chunk %*#@ 10 01 10 01 10 01
Challenge 2/3 DomU Memory The migrating VM is actively running while its pages are sent (live migration) 10 01 10 01 Zero page 10 01 00 00 Migration Tools Currently mapped memory chunk %*#@ 10 01 10 01 10 01
Challenge 3/3 DomU Memory A dirtied page could be sent more than once (live migration) P1V1 %*#@ 10 01 P1 V1 Replay attack 10 01 P4V1 Migration Tools %*#@ 10 01 P4V1 P4V2 Network 0 1 %*#@ 10 01 %*@ P4 V1 P4 V2 10 01 10 01 P1 V1 P4 V1 P4 V2 Hash array
Outline Motivation Challenges and solutions PALM system Conclusions
Implementation • PALM is implemented based on Xen-3.0.2 and GNU Linux-2.6.16 • VMM-enforced process protection is based on CHAOS system 1.0 • 3 system configurations • Xen • PALM-plain • PALM-enc
Outline Motivation Challenges PALM system Conclusions
Conclusions • PALM defended against 3 kinds of attacks or vulnerabilities • Transparent to the OS and applications • Performance impact is moderate • Privacy protection could be preserved during VM live migration
Backup PPI, Fudan University
Migration Setup • Migration session key is negotiated beforehand • Both migration side should have the modified VMM • Session key is used to encrypt • Protected application related metadata stored in the VMM • Each protected memory page • The hash values of the encrypted pages
Migration Procedure Migration start Round 1 Send all DomU memory Private pages are sent in cipher-text and hashed Round 2 .. N Source Send DomU memory dirtied in Round N-1 Private pages are sent in cipher-text and hashed DomU suspend Migration Time Send the rest of DomU dirtied memory Destination Pack metadata and send in cipher-text Send the array of final page hash values Downtime DomU resume Decrypt all the private pages, compare with hashes Deploy the protection metadata Other resumption work Migration stop
DMA Issue • DMA-capable devices can access arbitrary physical memory • Bypassed the MMU, not prevented by PALM • Need hardware virtualization assist • IOMMU • Intel TXT
VMM-enforced Process Protection OS Kernel Protected APP 10 01 10 01 Kernel Space 10 01 10 01 10 01 %*#@ 10 01 User Space 10 01 %*#@ 10 01 10 01 %*#@ 10 01 Storage