Skip to main content
QUICK REVIEW

[논문 리뷰] SPOILER: Speculative Load Hazards Boost Rowhammer and Cache Attacks

Saad Islam, Daniel Moghimi|arXiv (Cornell University)|2019. 03. 01.
Security and Verification in Computing참고 문헌 44인용 수 41
한 줄 요약

스포일러는 메모리 해석에서의 마이크로아키텍처 누수를 밝혀내며, 물리적 페이지 매핑 정보를 사용자 공간으로 누출해 Rowhammer 및 캐시 공격을 더 빠르게 만들고 심지어 JavaScript 기반의 제거/검색 가속까지 가능하게 한다.

ABSTRACT

Modern microarchitectures incorporate optimization techniques such as speculative loads and store forwarding to improve the memory bottleneck. The processor executes the load speculatively before the stores, and forwards the data of a preceding store to the load if there is a potential dependency. This enhances performance since the load does not have to wait for preceding stores to complete. However, the dependency prediction relies on partial address information, which may lead to false dependencies and stall hazards. In this work, we are the first to show that the dependency resolution logic that serves the speculative load can be exploited to gain information about the physical page mappings. Microarchitectural side-channel attacks such as Rowhammer and cache attacks like Prime+Probe rely on the reverse engineering of the virtual-to-physical address mapping. We propose the SPOILER attack which exploits this leakage to speed up this reverse engineering by a factor of 256. Then, we show how this can improve the Prime+Probe attack by a 4096 factor speed up of the eviction set search, even from sandboxed environments like JavaScript. Finally, we improve the Rowhammer attack by showing how SPOILER helps to conduct DRAM row conflicts deterministically with up to 100% chance, and by demonstrating a double-sided Rowhammer attack with normal user's privilege. The later is due to the possibility of detecting contiguous memory pages using the SPOILER leakage.

연구 동기 및 목표

  • 사전 예측 로드 중 메모리 해석에서 알려지지 않았던 누수를 동기 부여하고 정량화한다.
  • 이 누수가 가상-물리 매핑의 역공학 속도를 한 차원 이상 크게 가속시키는 방식을 시연한다.
  • 이 누수가 Prime+Probe 제거 집합 구성의 개선과 더 효과적인 Rowhammer 전략을 가능하게 하는 방식을 보여준다.
  • JavaScript와 같은 샌드박스 환경에서 스포일러-증강 공격의 실현 가능성을 평가한다.

제안 방법

  • 저장 버퍼에서 4K 및 1 MB 앨리싱을 유발하고 사전 예측 로드 타이밍을 측정하는 실험(알고리즘 1)을 설계한다.
  • 하드웨어 성능 카운터를 사용하여 타이밍과 의존성 해소 이벤트를 상관시키다(예: Ld_Blocks_Partial:Address_Alias, Cycle_Activity:Stalls_Ldm_Pending).
  • 1 MB 앨리싱이 물리적 페이지 매핑에 대한 정보를 어떻게 드러내는지 분석하되, 특히 하위 20비트 물리 주소 비트가 일치하는 정보를 주로 다룬다.
  • 네이티브 및 JavaScript 환경에서 가상-물리 매핑 역공학을 최대 256배 빠르게 하는 Spoiler의 효과를 평가한다.
  • Spoiler의 연속 페이지 탐지 기능에 의해 향상된 제거 집합 탐색과 양면 Rowhammer 공격의 가능성을 시연한다.
  • 메모리 해석기와 하이퍼스레딩이 Spoiler의 누출 및 적용성에 어떤 영향을 미치는지 논의한다.

실험 결과

연구 질문

  • RQ1사전 예측 로드 위험이 가상-물리 매핑 정보를 부분적으로 누출하는 물리 주소 정보를 밝혀낼 수 있는가?
  • RQ2Spoiler가 캐시 공격 및 Rowhammer를 위한 물리 주소 매핑 역공학 속도를 얼마나 증가시킬 수 있는가?
  • RQ3Spoiler가 제거 집합 구성과 브라우저 기반(JavaScript) 공격의 실현 가능성에 어떤 영향을 미치는가?
  • RQ4Spoiler가 일반 사용자 권한 하에서 결정론적 DRAM 행 충돌 및 더 높은 정밀도의 Rowhammer 공격을 가능하게 하는가?

주요 결과

  • Spoiler는 사전 예측 로드 중의 잘못된 의존성에서 1 MB 앨리싱 의존성에 의존하는 누수를 밝혀낸다.
  • 이 누수는 가상-물리 매핑 역공학을 기존 방법보다 최대 256배 빠르게 수행할 수 있게 한다.
  • Prime+Probe 제거 집합 탐색이 최대 4096배 가속되어 JavaScript와 같은 샌드박스 환경에서도 캐시 공격이 가능하게 된다.
  • Spoiler는 특정 조건에서 결정론적 DRAM 행 충돌을 가능하게 하여 Rowhammer를 개선하고 일반 사용자 권한 하에서 양면 Rowhammer를 시연한다.
  • 이 누수는 Intel 세대 전반에 걸쳐 첫 Core 프로세서부터 지속되며 4K 앨리싱과 구별되며 신형 CPU에서 더 큰 영향을 미친다.

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

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

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

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