Authors (if Research)
Patric Colp, Mihir Nanavati, Jun Zhu, William Aiello, George Coker, Tim Deegan, Peter Loscocco, Andrew Warfield
Abstract: Cloud computing uses virtualization to lease small slices of large-scale datacenter facilities to individual paying customers. These multi-tenant environments, on which numerous large and popular
web-based applications run today, are founded on the belief that the virtualization platform is sufficiently secure to prevent breaches of
isolation between different users who are colocated on the same host. Hypervisors are believed to be trustworthy in this role because of their small size and narrow interfaces.
We observe that despite the modest footprint of the hypervis or itself, these platforms have a large aggregate trusted computing base (TCB) that includes a monolithic control VM with numerous in
terfaces exposed to VMs. We present Xoar, a modified version of Xen that retrofits the modularity and isolation principles used
in micro-kernels onto a mature virtualization platform. Xoar breaks the control VM into single-purpose components called service VMs. We show that this componentized abstraction brings a number of benefits: sharing of service components by guests is configurable and auditable, making exposure to risk explicit, and access to t
he hypervisor is restricted to the least privilege required for each component.
Microrebooting components at configurable frequencies reduces the temporal attack surface of individual components. Our approach incurs little performance overhead, and does not require functionality to be sacrificed or components to be rewritten from scratch.