一句话:提出基于 VMPL 的 CVM 安全监控框架 Veil,在不可信内核下保护关键系统服务并保持兼容性与低开销。
AMD SEV 等机密虚拟机(CVM)为不可信云上的敏感计算提供保护环境,但其通常运行庞大且有漏洞的操作系统内核,使 CVM 暴露于内核漏洞利用。Veil 是一个 CVM 框架,利用新硬件原语虚拟机特权级(VMPL)在 CVM 内安装特权安全监控器,以保护无法托付给缺陷内核的关键系统服务。它解决了有限 VMPL 下创建无限安全域、高效域切换以及仅需少量修改即可保持商用内核向后兼容等挑战。评估表明,CVM 正常执行无明显性能下降,运行受保护服务的真实用例开销为 2%–64%。
Confidential virtual machines (CVMs) enabled by AMD SEV provide a protected environment for sensitive computations on an untrusted cloud. Unfortunately, CVMs are typically deployed with huge and vulnerable operating system kernels, exposing the CVMs to attacks that exploit kernel vulnerabilities. Veil is a versatile CVM framework that efficiently protects critical system services like shielding sensitive programs, which cannot be entrusted to the buggy kernel. Veil leverages a new hardware primitive, virtual machine privilege levels (VMPL), to install a privileged security monitor inside the CVM. We overcome several challenges in designing Veil, including (a) creating unlimited secure domains with a limited number of VMPLs, (b) establishing resource-efficient domain switches, and (c) maintaining commodity kernel backwards-compatibility with only minor changes. Our evaluation shows that Veil incurs no discernible performance slowdown during normal CVM execution while incurring a modest overhead (2 -- 64%) when running its protected services across real-world use cases.
@inproceedings{paperbot10121,
title = {Veil: A Protected Services Framework for Confidential Virtual Machines},
author = {Adil Ahmad and Botong Ou and Congyu Liu and Xiaokuan Zhang and Pedro Fonseca},
booktitle = {ASPLOS},
year = {2023},
doi = {10.1145/3623278.3624763}
}