Abstract-Virtualization is being widely adopted in today's computing systems. Its unique security advantages in isolating and introspecting commodity OSes as virtual machines (VMs) have enabled a wide spectrum of applications. However, a common, fundamental assumption is the presence of a trustworthy hypervisor. Unfortunately, the large code base of commodity hypervisors and recent successful hypervisor attacks (e.g., VM escape) seriously question the validity of this assumption. In this paper, we present HyperSafe, a lightweight approach that endows existing Type-I bare-metal hypervisors with a unique self-protection capability to provide lifetime controlflow integrity. Specifically, we propose two key techniques. The first one -non-bypassable memory lockdown -reliably protects the hypervisor's code and static data from being compromised even in the presence of exploitable memory corruption bugs (e.g., buffer overflows), therefore successfully providing hypervisor code integrity. The second one -restricted pointer indexing -introduces one layer of indirection to convert the control data into pointer indexes. These pointer indexes are restricted such that the corresponding call/return targets strictly follow the hypervisor control flow graph, hence expanding protection to control-flow integrity. We have built a prototype and used it to protect two open-source Type-I hypervisors: BitVisor and Xen. The experimental results with synthetic hypervisor exploits and benchmarking programs show HyperSafe can reliably enable the hypervisor self-protection and provide the integrity guarantee with a small performance overhead.
In REF , the authors proposed HyperSafe, which is a lightweight approach that endows existing hypervisors with a selfprotection capability to provide lifetime flow integrity.
HyperSafe: A Lightweight Approach to Provide Lifetime Hypervisor Control-Flow Integrity
2010 IEEE Symposium on Security and Privacy
2010 IEEE Symposium on Security and Privacy
Computer Science