A Secure and Formally Verified Linux KVM Hypervisor

ieee symposium on security and privacy(2021)

引用 58|浏览63
暂无评分
摘要
Commodity hypervisors are widely deployed to support virtual machines (VMs) on multiprocessor hardware. Their growing complexity poses a security risk. To enable formal verification over such a large codebase, we introduce microverification, a new approach that decomposes a commodity hypervisor into a small core and a set of untrusted services so that we can prove security properties of the entire hypervisor by verifying the core alone. To verify the multiprocessor hypervisor core, we introduce security-preserving layers to modularize the proof without hiding information leakage so we can prove each layer of the implementation refines its specification, and the top layer specification is refined by all layers of the core implementation. To verify commodity hypervisor features that require dynamically changing information flow, we introduce data oracles to mask intentional information flow. We can then prove noninterference at the top layer specification and guarantee the resulting security properties hold for the entire hypervisor implementation. Using microverification, we retrofitted the Linux KVM hypervisor with only modest modifications to its codebase. Using Coq, we proved that the hypervisor protects the confidentiality and integrity of VM data, while retaining KVM’s functionality and performance. Our work is the first machine-checked security proof for a commodity multiprocessor hypervisor.
更多
查看译文
关键词
machine-checked security proof,commodity multiprocessor hypervisor,secure verified Linux KVM hypervisor,formally verified Linux KVM hypervisor,virtual machines,security risk,formal verification,codebase,microverification,security-preserving layers,information leakage,commodity hypervisor features,intentional information flow,security properties,top layer specification,Coq,VM data confidentiality,VM data integrity
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要