Skip to main content
QUICK REVIEW

[논문 리뷰] Contemporary Processors Are Leaky -- and There's Nothing You Can Do About It

Qian Ge, Yuval Yarom|arXiv (Cornell University)|2016. 12. 14.
Parallel Computing and Optimization Techniques인용 수 2
한 줄 요약

이 논문은 현대적인 x86 및 ARM 프로세서가 캐시, TLB, 분기 예측기, 프리패치 기능과 같은 마이크로아ーキ텍처적 기능을 통해 본질적으로 중요한 타이밍 채널을 노출시킨다는 것을 입증하며, 기존의 OS 수준의 플래시 메커니즘이 이러한 채널을 완전히 닫지 못한다는 점을 밝힌다. 핵심 발견은 테스트된 모든 프로세서에서 적어도 하나의 주요 타이밍 채널이 여전히 존재하며, 이는 현재 주류 하드웨어에서 완전한 채널 억제가 불가능하다는 것을 의미한다.

ABSTRACT

Timing channels are information flows, encoded in the relative timing of events, that bypass the system's protection mechanisms. Any microarchitectural state that depends on execution history and affects the rate of progress of later executions potentially establishes a timing channel, unless explicit steps are taken to close it. Such state includes CPU caches, TLBs, branch predictors and prefetchers; removing the channels requires that the OS can partition such state or flush it on a switch of security domains. We measure the capacities of channels based on these microarchitectural features on several generations of processors across the two mainstream ISAs, x86 and ARM, and investigate the effectiveness of the flushing mechanisms provided by the respective ISA.We find that in all processors we studied, at least one significant channel remains. This implies that closing all timing channels seems impossible on contemporary mainstream processors.

연구 동기 및 목표

  • 기존의 OS 수준의 플래시 메커니즘을 사용하여 주류 프로세서의 타이밍 채널을 완전히 억제할 수 있는지 조사하기 위해.
  • 캐시, TLB, 분기 예측기, 프리패처와 같은 마이크로아키텍처적 기능에서 기인하는 타이밍 채널의 용량을 측정하기 위해.
  • x86 및 ARM ISA에서 제공하는 플래시 메커니즘의 효과성을 평가하여 이러한 채널을 닫을 수 있는지 확인하기 위해.
  • 현재 프로세서 아키텍처에서 소프트웨어 또는 하드웨어 수단을 통해 모든 타이밍 채널을 제거하는 것이 가능한지 판단하기 위해.

제안 방법

  • 저자는 제어된 실행 워크로드를 사용하여 여러 세대의 x86 및 ARM 프로세서에서 타이밍 채널 용량을 측정하였다.
  • 실행 이력에 의존하고 실행 진행 속도에 영향을 주는 마이크로아키텍처 상태를 분석하였다.
  • x86 및 ARM ISA에서 제공하는 플래시 메커니즘을 평가하여 보안 도메인 전환 시 민감한 마이크로아키텍처 상태를 지우는 능력을 검토하였다.
  • 관찰 가능한 타이밍 변동을 측정함으로써 제어된 양측 실행 시나리오에서 타이밍 채널 용량을 정량화하였다.
  • 캐시, TLB, 분기 예측기, 프리패처와 같은 기능을 타이밍 채널의 은폐된 정보 유출 원천으로 집중 분석하였다.

실험 결과

연구 질문

  • RQ1기존의 OS 수준의 플래시 메커니즘이 현대적인 x86 및 ARM 프로세서의 타이밍 채널을 완전히 닫을 수 있는가?
  • RQ2현재 주류 프로세서에서 타이밍 채널의 최대 정보 유출 용량은 얼마인가?
  • RQ3어느 마이크로아키텍처 기능이 지속적인 타이밍 채널에 가장 큰 기여를 하는가?
  • RQ4현재 주류 프로세서 아키텍처에서 모든 타이밍 채널을 완전히 제거하는 것은 가능한가?

주요 결과

  • OS 수준의 플래시 메커니즘을 사용함에도 불구하고, 테스트된 모든 x86 및 ARM 프로세서에서 적어도 하나의 중요한 타이밍 채널이 여전히 활성화되어 있다.
  • 지속적인 채널은 기존의 ISA에서 제공하는 플래시 명령어로는 완전히 청소할 수 없는 캐시, TLB, 분기 예측기, 프리패처와 같은 마이크로아키텍처 기능에서 기인한다.
  • 이 잔류 채널의 용량은 의미 있는 정보를 유출할 수 있을 정도로 충분하여 현재 프로세서 설계에 근본적인 한계가 있음을 시사한다.
  • 이 연구는 현재 소프트웨어 또는 하드웨어 기법으로는 현대 주류 프로세서에서 모든 타이밍 채널을 닫는 것이 불가능하다고 결론내린다.

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

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

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

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