Trustworthy confidential virtual machines for the masses (2402.15277v1)
Abstract: Confidential computing alleviates the concerns of distrustful customers by removing the cloud provider from their trusted computing base and resolves their disincentive to migrate their workloads to the cloud. This is facilitated by new hardware extensions, like AMD's SEV Secure Nested Paging (SEV-SNP), which can run a whole virtual machine with confidentiality and integrity protection against a potentially malicious hypervisor owned by an untrusted cloud provider. However, the assurance of such protection to either the service providers deploying sensitive workloads or the end-users passing sensitive data to services requires sending proof to the interested parties. Service providers can retrieve such proof by performing remote attestation while end-users have typically no means to acquire this proof or validate its correctness and therefore have to rely on the trustworthiness of the service providers. In this paper, we present Revelio, an approach that features two main contributions: i) it allows confidential virtual machine (VM)-based workloads to be designed and deployed in a way that disallows any tampering even by the service providers and ii) it empowers users to easily validate their integrity. In particular, we focus on web-facing workloads, protect them leveraging SEV-SNP, and enable end-users to remotely attest them seamlessly each time a new web session is established. To highlight the benefits of Revelio, we discuss how a standalone stateful VM that hosts an open-source collaboration office suite can be secured and present a replicated protocol proxy that enables commodity users to securely access the Internet Computer, a decentralized blockchain infrastructure.
- Let’s Encrypt: An Automated Certificate Authority to Encrypt the Entire Web. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security (London, United Kingdom) (CCS ’19). Association for Computing Machinery, New York, NY, USA, 2473–2487. https://doi.org/10.1145/3319535.3363192
- Advanced Micro Devices, Inc. 2020. AMD SEV-SNP: Strengthening VM Isolation with Integrity Protection and More. https://www.amd.com/system/files/TechDocs/SEV-SNP-strengthening-vm-isolation-with-integrity-protection-and-more.pdf.
- Practically-exploitable Cryptographic Vulnerabilities in Matrix. In 2023 2023 IEEE Symposium on Security and Privacy (SP) (SP). IEEE Computer Society, Los Alamitos, CA, USA, 1419–1436. https://doi.org/10.1109/SP46215.2023.00081
- Flexible remote attestation of pre-SNP SEV VMs using SGX enclaves. arXiv:2305.09351 [cs.CR]
- Arm Ltd. 2023. Introducing Arm Confidential Compute Architecture (Version 1). https://developer.arm.com/documentation/den0125/0100.
- The impact of Open Source Software and Hardware on technological independence, competitiveness and innovation in the EU economy. https://doi.org/10.2759/430161
- Mark R. Brown. 1996. FastCGI: A high-performance gateway interface. In Fifth International World Wide Web Conference, Vol. 6.
- Milan Broz. 2022. DMVerity. https://gitlab.com/cryptsetup/cryptsetup/-/wikis/DMVerity
- Milan Broz. 2023. Cryptsetup and LUKS - open-source disk encryption. https://gitlab.com/cryptsetup/cryptsetup
- Bundesamt für Sicherheit in der Informationstechnik 2020. Security requirements for eHealth applications. https://www.bsi.bund.de/SharedDocs/Downloads/EN/BSI/Publications/TechGuidelines/TR03161/TR-03161.pdf
- TODO Group (European Chapter). 2020. Why open source software matters to your enterprise. https://project.linuxfoundation.org/hubfs/Reports/Why-open-source-software-matters-to-your-enterprise_090820.pdf?hsLang=en
- OPERA: Open Remote Attestation for Intel’s Secure Enclaves. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security (London, United Kingdom) (CCS ’19). Association for Computing Machinery, New York, NY, USA, 2317–2331. https://doi.org/10.1145/3319535.3354220
- CVE-2017-1000051 2017. Cross-site scripting (XSS) vulnerability in pad export in XWiki labs CryptPad before 1.1.1 allows remote attackers to inject arbitrary web script or HTML via the pad content. National Vulnerability Database. https://nvd.nist.gov/vuln/detail/CVE-2017-1000051
- Caleb James Delisle. 2017. Cryptpad Blog:Security growing pains. https://blog.cryptpad.org/2017/03/06/Security-growing-pains/
- HYDRA: Hybrid Design for Remote Attestation (Using a Formally Verified Microkernel). In WiSec ’17: Proceedings of the 10th ACM Conference on Security and Privacy in Wireless and Mobile Networks (Boston, Massachusetts) (WiSec ’17). Association for Computing Machinery, New York, NY, USA, 99–110. https://doi.org/10.1145/3098243.3098261
- Charles Fisher. 2017. Linux filesystem events with inotify. Linux Journal 2017, 280 (2017), 2.
- The Matrix.org Foundation. 2023. Matrix Specification. https://spec.matrix.org/latest/
- TrustJS: Trusted Client-Side Execution of JavaScript. In Proceedings of the 10th European Workshop on Systems Security (Belgrade, Serbia) (EuroSec’17). Association for Computing Machinery, New York, NY, USA, Article 7, 6 pages. https://doi.org/10.1145/3065913.3065917
- Trust Management as a Service: Enabling Trusted Execution in the Face of Byzantine Stakeholders. In 2020 50th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN). IEEE Computer Society, Los Alamitos, CA, USA, 502–514. https://doi.org/10.1109/DSN48063.2020.00063
- Flexible Mechanisms for Remote Attestation. ACM Trans. Priv. Secur. 24, 4, Article 29 (sep 2021), 23 pages. https://doi.org/10.1145/3470535
- Lawrence E. Hughes. 2022. PKCS #10 Certificate-Signing Request (CSR). Apress, Berkeley, CA, 75–91. https://doi.org/10.1007/978-1-4842-7486-6_6
- Ryoan: A Distributed Sandbox for Untrusted Computation on Secret Data. In 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16). USENIX Association, Savannah, GA, 533–549. https://www.usenix.org/conference/osdi16/technical-sessions/presentation/hunt
- Intel Corp. 2021. Intel Trust Domain Extensions. Technical Report 1.0. Intel Corp. https://cdrdv2.intel.com/v1/dl/getContent/690419.
- Internet Security Research Group (ISRG). 2021. Rate Limits. https://letsencrypt.org/docs/rate-limits
- Parma: Confidential Containers via Attested Execution Policies. arXiv:2302.03976 [cs.CR]
- Integrating Remote Attestation with Transport Layer Security. https://doi.org/10.48550/ARXIV.1801.05863
- Robots Exclusion Protocol. RFC 9309. https://doi.org/10.17487/RFC9309
- CIPHERLEAKS: Breaking Constant-time Cryptography on AMD SEV via the Ciphertext Side Channel. In 30th USENIX Security Symposium (USENIX Security 21). USENIX Association, 717–732. https://www.usenix.org/conference/usenixsecurity21/presentation/li-mengyuan
- Private Document Editing with Some Trust. In Proceedings of the ACM Symposium on Document Engineering 2018 (Halifax, NS, Canada) (DocEng ’18). Association for Computing Machinery, New York, NY, USA, Article 29, 10 pages. https://doi.org/10.1145/3209280.3209535
- Dov Murik and Hubertus Franke. 2021. Securing Linux VM boot with AMD SEV measurement. https://static.sched.com/hosted_files/kvmforum2021/ed/securing-linux-vm-boot-with-amd-sev-measurement.pdf.
- WaTZ: A Trusted WebAssembly Runtime Environment with Remote Attestation for TrustZone. In 2022 IEEE 42nd International Conference on Distributed Computing Systems (ICDCS). 1177–1189. https://doi.org/10.1109/ICDCS54860.2022.00116
- Remote attestation of SEV-SNP confidential VMs using e-vTPMs. arXiv:2303.16463 [cs.CR]
- Universal Remote Attestation for Cloud and Edge Platforms. In Proceedings of the 18th International Conference on Availability, Reliability and Security (Benevento, Italy) (ARES ’23). Association for Computing Machinery, New York, NY, USA, Article 12, 11 pages. https://doi.org/10.1145/3600160.3600171
- Attesting AMD SEV-SNP Virtual Machines with SPIRE. In Proceedings of the 12th Latin-American Symposium on Dependable and Secure Computing (La Paz, Bolivia) (LADC ’23). Association for Computing Machinery, New York, NY, USA, 1–10. https://doi.org/10.1145/3615366.3615419
- Bazel Project. 2023. Hermeticity. https://bazel.build/basics/hermeticity
- An Experience Report on Producing Verifiable Builds for Large-Scale Commercial Systems. IEEE Transactions on Software Engineering 48, 9 (2022), 3361–3377. https://doi.org/10.1109/TSE.2021.3092692
- DFINITY Team. 2022a. The Internet Computer for Geeks. https://internetcomputer.org/whitepaper.pdf
- Linux Foundation Research Team. 2022b. Addressing Cybersecurity Challenges in open source Software. https://8112310.fs1.hubspotusercontent-na1.net/hubfs/8112310/LF%20Research/Addressing%20Cybersecurity%20Challenges%20in%20Open%20Source%20Software%20-%20Report.pdf
- A Usability Evaluation of Let’s Encrypt and Certbot: Usable Security Done Right. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security (London, United Kingdom) (CCS ’19). Association for Computing Machinery, New York, NY, USA, 1971–1988. https://doi.org/10.1145/3319535.3363220
- RATLS: Integrating Transport Layer Security With Remote Attestation. In Applied Cryptography and Network Security Workshops: ACNS 2022 Satellite Workshops, AIBlock, AIHWS, AIoTS, CIMSS, Cloud S&P, SCI, SecMT, SiMLA, Rome, Italy, June 20–23, 2022, Proceedings (Rome, Italy). Springer-Verlag, Berlin, Heidelberg, 361–379. https://doi.org/10.1007/978-3-031-16815-4_20
- WS-Attestation: Efficient and Fine-Grained Remote Attestation on Web Services. In Proceedings of the IEEE International Conference on Web Services (ICWS ’05). 743–750. https://doi.org/10.1109/ICWS.2005.136