Skip to main content
QUICK REVIEW

[논문 리뷰] CURE: A Security Architecture with CUstomizable and Resilient Enclaves

Raad Bahmani, Ferdinand Brasser|TUbilio (Technical University of Darmstadt)|2020. 10. 29.
Security and Verification in Computing참고 문헌 75인용 수 27
한 줄 요약

Cure는 현대 고성능 시스템을 대상으로 하는 혁신적인 하드웨어 지원 보안 아키텍처로, 사용자 정의 가능하고 내구성이 뛰어난 에인클레이브—서브스페이스, 사용자 공간, 자체 포함형 에인클레이브—를 도입하여 특권 수준 간 세밀한 격리, 고유 자원 할당(CPU, 캐시, 주변기기), 그리고 실용적인 캐시 사이드채널 보호를 제공한다. RISC-V 벤치마크에서 최소한의 하드웨어 변경으로 기하 평균 성능 오버헤드 15.33%를 달성한다.

ABSTRACT

Security architectures providing Trusted Execution Environments (TEEs) have been an appealing research subject for a wide range of computer systems, from low-end embedded devices to powerful cloud servers. The goal of these architectures is to protect sensitive services in isolated execution contexts, called enclaves. Unfortunately, existing TEE solutions suffer from significant design shortcomings. First, they follow a one-size-fits-all approach offering only a single enclave type, however, different services need flexible enclaves that can adjust to their demands. Second, they cannot efficiently support emerging applications (e.g., Machine Learning as a Service), which require secure channels to peripherals (e.g., accelerators), or the computational power of multiple cores. Third, their protection against cache side-channel attacks is either an afterthought or impractical, i.e., no fine-grained mapping between cache resources and individual enclaves is provided. In this work, we propose CURE, the first security architecture, which tackles these design challenges by providing different types of enclaves: (i) sub-space enclaves provide vertical isolation at all execution privilege levels, (ii) user-space enclaves provide isolated execution to unprivileged applications, and (iii) self-contained enclaves allow isolated execution environments that span multiple privilege levels. Moreover, CURE enables the exclusive assignment of system resources, e.g., peripherals, CPU cores, or cache resources to single enclaves. CURE requires minimal hardware changes while significantly improving the state of the art of hardware-assisted security architectures. We implemented CURE on a RISC-V-based SoC and thoroughly evaluated our prototype in terms of hardware and performance overhead. CURE imposes a geometric mean performance overhead of 15.33% on standard benchmarks.

연구 동기 및 목표

  • 일괄적인 크기의 에인클레이브 모델을 사용하는 기존 TEE의 한계를 해결하여 다양한 서비스 요구사항을 충족하지 못하는 문제를 해결한다.
  • 개별 에인클레이브가 CPU 코어, 캐시 웨이, 주변기기와 같은 시스템 자원에 보안적이고 고유하게 액세스할 수 있도록 한다.
  • OS 전체 변경 없이도 실용적이고 효율적인 캐시 사이드채널 및 제어된 사이드채널 공격에 대비한 보호 조치를 제공한다.
  • 머신러닝 as a Service(MLaaS) 및 센서 연결 서비스와 같은 다양한 워크로드를 지원하기 위해, 에인클레이브가 여러 특권 수준과 코어를 걸쳐 확장 가능하도록 한다.
  • 수정되지 않은 애플리케이션을 지원하고 다양한 보안 컨텍스트 간 강력한 격리를 제공하는 유연하고 아키텍처에 종속되지 않는 TEE를 설계한다.

제안 방법

  • 서브스페이스 에인클레이브(모든 특권 수준에서 수직 격리용), 사용자 공간 에인클레이브(비특권 애플리케이션용), 자체 포함형 에인클레이브(여러 특권 수준과 CPU 코어를 걸쳐 확장 가능한)의 세 가지 서로 다른 에인클레이브 유형을 도입한다.
  • 새로운 시스템 버스 및 캐시 제어 메커니즘을 통해 하드웨어 기반 자원 할당을 구현하여, 캐시 웨이, CPU 코어, 주변기기 등을 개별 에인클레이브에 고유하게 할당할 수 있도록 한다.
  • 캐시 웨이를 구성 가능한 경계로 동적 캐시 분할을 통해 에인클레이브에 할당함으로써, 캐시 사이드채널 공격에 대비한 세밀하고 런타임에서 유연하게 조정 가능한 격리를 실현한다.
  • 보안적인 I/O 바인딩을 구현하기 위해 주변기기(예: 가속기)를 직접적으로 고유하게 특정 에인클레이브에 할당할 수 있도록 하여, 신뢰할 수 없는 OS나 하이퍼바이저의 중개를 제거한다.
  • 기존 RISC-V 확장 기능과 최소한의 하드웨어 수정을 활용하여, 신규 프로세서 마이크아키텍처가 필요 없이 에인클레이브 생성, 메모리 암호화, 특권 수준 격리 기능을 지원한다.
  • 비용이 많이 들거나 OS 수준의 수정이 필요한 데이터 오비우스 알고리즘을 피하고, 경량적이며 실용적인 보호 메커니즘을 설계한다.

실험 결과

연구 질문

  • RQ1어떻게 TEE 아키텍처가 다양한 애플리케이션 워크로드와 보안 요구사항에 맞게 사용자 정의 가능한 여러 에인클레이브 유형을 지원할 수 있는가?
  • RQ2성능이나 하드웨어 비용을 크게 증가시키지 않으면서도, 캐시, CPU 코어, 주변기기 등의 시스템 자원을 개별 에인클레이브에 세밀하고 고유하게 할당할 수 있는 메커니즘은 무엇인가?
  • RQ3OS 전체 변경 없이도 실용적이고 효율적인 캐시 사이드채널 보호를 달성할 수 있는가? 특히 비현실적인 페이지 색상 할당 기법에 의존하지 않는가?
  • RQ4신뢰할 수 없는 하이퍼바이저나 OS 컴ponent의 간섭을 방지하면서도, 주변기기의 보안적 바인딩을 어떻게 에인클레이브에 적용할 수 있는가?
  • RQ5최소한의 하드웨어 수정으로 오픈소스 RISC-V 기반으로 TEE 아키텍처를 어떻게 실제로 구현할 수 있으며, 강력한 보안 보장을 유지할 수 있는가?

주요 결과

  • Cure는 서브스페이스, 사용자 공간, 자체 포함형 에인클레이브의 세 가지 서로 다른 에인클레이브 유형을 지원하는 최초의 TEE 아키텍처로, 특권 수준과 실행 컨텍스트 간의 탄력적인 격리를 가능하게 한다.
  • 아키텍처는 CPU 코어, 캐시 웨이, 주변기기를 개별 에인클레이브에 고유하게 할당함으로써 강력한 격리와 자원 기반 사이드채널 누출 방지를 보장한다.
  • Cure의 동적 캐시 분할은 캐시 웨이를 에인클레이브에 구성 가능한 경계로 세밀하게 런타임에서 설정 가능하게 하여, 캐시 사이드채널 공격에 대한 실용적이고 효율적인 보호를 제공한다.
  • RISC-V 기반 SoC에서의 프로토타입 구현은 표준 벤치마크에서 기하 평균 성능 오버헤드 15.33%를 기록하여 낮은 런타임 비용을 입증했다.
  • Cure의 설계는 비용이 많이 드는 데이터 오비우스 알고리즘이나 OS 수준의 수정에 의존하지 않아, 이전 연구 대비 더 확장 가능하고 실용적인 솔루션을 제공한다.
  • SGX, SEV, TrustZone 등의 기존 TEE와 달리, Cure는 외부 하드웨어나 보완 조치 없이도 보안적 주변기기 바인딩과 다중 에인클레이브 격리를 네이티브로 지원한다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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