Moat

Moat
Sanjit A. Seshia, Sriram K. Rajamani, Rohit Sinha, Kapil Vaswani
2015-10-06

Intel SGXconfidentiality verificationenclave programsformal verificationinformation flow analysis
Security-critical applications constantly face threats from exploits in lower computing layers such as the operating system, virtual machine monitors, or even attacks from malicious administrators. To help protect application secrets from such attacks, there is increasing interest in hardware implementations of primitives for trusted computing, such as Intel's Software Guard Extensions (SGX) instructions. These primitives enable hardware protection of memory regions containing code and data, and provide a root of trust for measurement, remote attestation, and cryptographic sealing. However, vulnerabilities in the application itself, such as the incorrect use of SGX instructions or memory safety errors, can be exploited to divulge secrets. In this paper, we introduce a new approach to formally model these primitives and formally verify properties of so-called enclave programs that use them. More specifically, we create formal models of relevant aspects of SGX, develop several adversary models, and present a sound verification methodology (based on automated theorem proving and information flow analysis) for proving that an enclave program running on SGX does not contain a vulnerability that causes it to reveal secrets to the adversary. We introduce Moat, a tool which formally verifies confidentiality properties of applications running on SGX. We evaluate Moat on several applications, including a one time password scheme, off-the-record messaging, notary service, and secure query processing.
1
Develops several adversary models capturing attacks from OS, VMM, and malicious administrators for formal verification.
2
Evaluates Moat on multiple real applications (one-time password, off-the-record messaging, notary service, secure query processing).
3
Implements Moat, a tool that formally verifies confidentiality properties of applications running on SGX.
4
Introduces a formal modeling approach for SGX primitives and enclave programs to reason about secrecy despite lower-layer attacks.
5
Presents a sound verification methodology combining automated theorem proving and information-flow analysis to prove enclaves do not leak secrets.

Enclave programs running on Intel SGX

Formal verification of confidentiality properties (absence of vulnerabilities causing secret disclosure) via formal SGX models, adversary models, automated theorem proving and information-flow analysis

Publication Details
Publication Date
2015-10-06
Journal
Publisher
ISSN
Access Type
Author Information
Authors
Sanjit A. Seshia
Sriram K. Rajamani
Rohit Sinha
Kapil Vaswani
Explore further
Open the scid.ai AI chat with a ready-made request: it will find papers on a similar topic and help build a literature review.
Find similar papers in the chat
Make a presentation
100%