Verifying Rust Implementation of Page Tables in a Software Enclave Hypervisor

Zhenyang Dai,Shuang Liu,Vilhelm Sjöberg,Xupeng Li,Yu Chen,Wenhao Wang,Yuekai Jia,Sean Noble Anderson,Laila Elbeheiry,Shubham Sondhi,Yu Zhang,Zhaozhong Ni,Shoumeng Yan,Ronghui Gu,Zhengyu He
DOI: https://doi.org/10.1145/3620665.3640398
2024-01-01
Abstract:As trusted execution environments (TEE) have become the corner stone for secure cloud computing, it is critical that they are reliable and enforce proper isolation, of which a key ingredient is spatial isolation. Many TEEs are implemented in software such as hypervisors for flexibility, and in a memory-safe language, namely Rust to alleviate potential memory bugs. Still, even if memory bugs are absent from the TEE, it may contain semantic errors such as mis-configurations in its memory subsystem which breaks spatial isolation.
What problem does this paper attempt to address?