CRISP: Confidentiality, Rollback, and Integrity Storage Protection for Confidential Cloud-Native Computing
Ardhi Putra Pratama Hartono, Andrey Brito, Christof Fetzer
TL;DR
CRISP addresses the vulnerability of on-disk state in confidential cloud-native applications running inside Intel SGX by adding rollback protection through monotonic counters bound to storage writes. It integrates with the SCONE runtime and uses transparent encryption, batching, and a Checker API to provide a tunable balance between security and performance. The approach demonstrates practical viability with evaluations on MariaDB and SPIRE, showing minimal overhead under realistic workloads and offering deployment flexibility without requiring source-code changes. This work enables confidentiality, integrity, and freshness for persistent state in confidential computing at scale, with potential extensions to broader runtimes and recovery mechanisms.
Abstract
Trusted execution environments (TEEs) protect the integrity and confidentiality of running code and its associated data. Nevertheless, TEEs' integrity protection does not extend to the state saved on disk. Furthermore, modern cloud-native applications heavily rely on orchestration (e.g., through systems such as Kubernetes) and, thus, have their services frequently restarted. During restarts, attackers can revert the state of confidential services to a previous version that may aid their malicious intent. This paper presents CRISP, a rollback protection mechanism that uses an existing runtime for Intel SGX and transparently prevents rollback. Our approach can constrain the attack window to a fixed and short period or give developers the tools to avoid the vulnerability window altogether. Finally, experiments show that applying CRISP in a critical stateful cloud-native application may incur a resource increase but only a minor performance penalty.
