Skip to main content
QUICK REVIEW

[논문 리뷰] BesFS: Mechanized Proof of an Iago-Safe Filesystem for Enclaves.

Shweta Shinde, Shengyi Wang|arXiv (Cornell University)|2018. 07. 02.
Security and Verification in Computing참고 문헌 3인용 수 4
한 줄 요약

BesFS는 Intel SGX 에이전트에 대한 형식적으로 검증된 Iago 공격에 안전한 파일시스템 API로, 운영체제 수준의 시스템 호출 조작을 방지하기 위해 Coq 스크립트 3,676줄을 통해 증명되었다. 이는 최소한의 TCB 오버헤드(750줄 미만)로 신뢰할 수 있는 표현력 있는 파일 작업을 가능하게 하며, 알려진 버그를 제거하고 Iago 공격에 대한 안전성 검증을 위한 테스트 오라클로 기능한다.

ABSTRACT

New trusted computing primitives such as Intel SGX have shown the feasibility of running user-level applications in enclaves on a commodity trusted processor without trusting a large OS. However, the OS can compromise the integrity of the applications via the system call interface by tampering the return values. This class of attacks (commonly referred to as Iago attacks) have been shown to be powerful enough to execute arbitrary logic in enclave programs. To this end, we present BesFS -- a formal and provably Iago-safe API specification for the filesystem subset of the POSIX interface. We prove 118 lemmas and 2 key theorems in 3676 lines of CoQ proof scripts, which directly proves safety properties of BesFS implementation. BesFS API is expressive enough to support 17 real applications we test, and this principled approach eliminates several bugs. BesFS integrates into existing SGX-enabled applications with minimal impact to TCB (less than 750 LOC), and it can serve as concrete test oracle for other hand-coded Iago-safety checks.

연구 동기 및 목표

  • SGX 환경에서 시스템 호출 반환값 조작을 통해 에이전트 무결성이 손상되는 Iago 공격의 위협을 해결하기 위해.
  • 실제 응용 프로그램을 위해 표현력이 풍부한 형식적으로 검증된 Iago 공격에 안전한 파일시스템 API를 설계하기 위해.
  • 보안 성질의 형식적 검증을 보장하면서도 신뢰 코드 기반(TCB)을 최소화하기 위해.
  • 기타 Iago 공격에 안전한 메커니즘의 검증을 위한 구체적인 테스트 오라클을 제공하기 위해.

제안 방법

  • Coq를 사용하여 POSIX 인터페이스의 파일시스템 부분을 형식적으로 명세화하여 Iago 공격에 안전한 설계를 보장한다.
  • 3,676줄의 Coq 코드를 기반으로 118개의 보조정리와 2개의 핵심 정리를 기계적으로 증명하여 안전성 성질을 검증한다.
  • 시스템 호출 반환값의 운영체제 수준 조작에 저항하면서도 17개의 실제 응용 프로그램을 지원하는 API를 설계한다.
  • 기존 SGX 응용 프로그램에 통합할 때 TCB 확장을 최소화(750줄 이내)한다.
  • 수작업으로 작성된 Iago 공격에 안전한 검증 메커니즘에서 발생하는 버그를 제거하기 위해 형식적 방법을 적용한다.

실험 결과

연구 질문

  • RQ1형식적으로 검증된 파일시스템 API를 구성하여 SGX 에이전트에서 반드시 Iago 공격에 안전하다는 것을 증명할 수 있는가?
  • RQ2이러한 파일시스템이 시스템 호출 조작에 대한 보안을 확보하면서도 얼마나 높은 표현력을 유지할 수 있는가?
  • RQ3실제 응용 프로그램을 지원하고 형식적 검증을 보장하는 데서 신뢰 코드 기반(TCB)을 얼마나 작게 유지할 수 있는가?
  • RQ4형식적 명세가 다른 Iago 공격에 안전한 메커니즘의 검증을 위한 테스트 오라클로 기능할 수 있는가?

주요 결과

  • 저자들은 3,676줄의 Coq 증명 스크립트를 사용하여 118개의 보조정리와 2개의 핵심 정리를 형식적으로 검증하여 BesFS에 강력한 안전성 보장을 확립했다.
  • BesFS는 17개의 실제 응용 프로그램을 지원하여 실생활에서의 표현력과 생산 환경에서의 실현 가능성을 입증했다.
  • BesFS의 신뢰 코드 기반은 750줄 이하로 유지되어 SGX 환경에서의 공격 표면을 크게 줄였다.
  • 형식적 명세는 기존 수작업으로 작성된 Iago 공격에 안전한 메커니즘에 존재하던 몇 가지 알려진 버그를 성공적으로 제거했다.
  • BesFS는 SGX 응용 프로그램에서 다른 Iago 공격에 안전한 검증 메커니즘의 검증을 위한 신뢰할 수 있는 테스트 오라클로 기능한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.