Skip to main content
QUICK REVIEW

[논문 리뷰] AutoLock: Why Cache Attacks on ARM Are Harder Than You Think

Marc Green, Leandro Rodrigues-Lima|arXiv (Cornell University)|2017. 03. 28.
Security and Verification in Computing참고 문헌 25인용 수 12
한 줄 요약

이 논문은 ARM 캐시 최적화 기술인 AutoLock를 폭 드러내며, 이는 포함형 최종 레벨 캐시 라인들이 코어 전용 캐시에 존재할 경우 교차 코어 교체 기반 캐시 공격(예: Evict+Reload)을 차단함으로써 작동한다. 이로 인해 공격이 방해받는다 하더라도, 저자들은 다중라인 관찰 기법(예: 다수결 투표 및 가중 카운팅)을 통해 실질적인 공격이 가능하다는 것을 입증하며, ARM Cortex-A15에서 AutoLock가 적용된 환경에서도 100,000회 이내의 암호화로 전체 키 복구가 가능하다.

ABSTRACT

Attacks on the microarchitecture of modern processors have become a practical threat to security and privacy in desktop and cloud computing. Recently, cache attacks have successfully been demonstrated on ARM based mobile devices, suggesting they are as vulnerable as their desktop or server counterparts. In this work, we show that previous literature might have left an overly pessimistic conclusion of ARM's security as we unveil AutoLock: an internal performance enhancement found in inclusive cache levels of ARM processors that adversely affects Evict+Time, Prime+Probe, and Evict+Reload attacks. AutoLock's presence on system-on-chips (SoCs) is not publicly documented, yet knowing that it is implemented is vital to correctly assess the risk of cache attacks. We therefore provide a detailed description of the feature and propose three ways to detect its presence on actual SoCs. We illustrate how AutoLock impedes cross-core cache evictions, but show that its effect can also be compensated in a practical attack. Our findings highlight the intricacies of cache attacks on ARM and suggest that a fair and comprehensive vulnerability assessment requires an in-depth understanding of ARM's cache architectures and rigorous testing across a broad range of ARM based devices.

연구 동기 및 목표

  • 이론적으로 가능성이 있는 교체 기반 캐시 공격이 포함형 최종 레벨 캐시가 존재하는 ARM 프로세서에서 왜 자주 실패하는지 조사하기 위해.
  • 포함형 ARM 최종 레벨 캐시에 존재하는 비문서화된 성능 기능인 AutoLock를 역공학적으로 분석하고 문서화하기 위해.
  • 실세계 공격 시나리오에서 AutoLock의 제약 조건을 우회할 수 있는 실용적인 대응 조치를 개발하고 평가하기 위해.
  • 실제 시스템온칩(SoC)에서 AutoLock를 탐지할 수 있는 방법을 제공하여 정확한 취약성 평가를 가능하게 하기 위해.
  • 다양한 기기에서 ARM 캐시 보안에 대한 종합적이고 하드웨어 인식 평가를 촉구하기 위해.

제안 방법

  • 포함형 LLC를 갖춘 ARM Cortex-A15에서 캐시 동작을 분석하고 사용자 공간 캐시 공격를 통해 AutoLock를 역공학적으로 분석함.
  • AutoLock 간섭을 보완하기 위해 다수결 투표, 확률 필터, 가중 카운팅의 세 가지 보완 기법을 제안함.
  • 시스템적으로 캐시 라인을 교체하고 재로드 시간을 측정하기 위해 슬라이딩 윈도우 교체 기법을 사용하고, 파라미터 36-6-2를 설정함.
  • 각 캐시 라인에 대해 접근 불가능 확률 $\tilde{P}_{na}^{l}$을 계산하고, 신뢰도가 높은 라인을 우선순위 정렬하기 위해 가중 점수 함수 $S_{l} = 1 - \frac{d_{l}}{1 - P_{na}}$를 적용함.
  • 다섯 가지 공격 변형(기존 동코어 및 교차코어 공격, 추가로 세 가지 개선된 버전)을 각각 랜덤 키로 100회 반복하여 수행함.
  • 암호화 횟수가 증가함에 따라 평균적으로 올바르게 복구된 키 바이트 수를 측정하여 성공률를 평가함.

실험 결과

연구 질문

  • RQ1포함형 최종 레벨 캐시가 존재하는 ARM 프로세서에서 교체 기반 캐시 공격이 자주 실패하는 이유는 무엇인가?
  • RQ2AutoLock가 교차 코어 캐시 교체를 차단하는 데서 어떤 역할을 하는가? 그리고 이는 캐시 공격의 실용성에 어떤 영향을 미치는가?
  • RQ3다중라인 관찰 기법은 실세계 ARM 시스템에서 AutoLock이 유도하는 제약 조건을 극복할 수 있는가?
  • RQ4실제 ARM 시스템온칩에서 AutoLock를 탐지하는 방법은 무엇이며, 이는 보안 평가에 어떻게 기여하는가?
  • RQ5AutoLock와 비포함형 캐시 계층이 함께 작용할 경우, ARM에서 캐시 공격의 실현 가능성은 어느 정도로 제한되는가?

주요 결과

  • AutoLock는 코어 전용 캐시에 존재할 경우 포함형 최종 레벨 캐시의 교차 코어 교체를 방지하여 Evict+Reload, Prime+Probe, Evict+Time 공격에 심각한 영향을 미침.
  • AutoLock가 적용된 Cortex-A15에서 기존 교차코어 Evict+Reload 공격는 400,000회 암호화 이후 5개 이하의 키 바이트만 복구에 실패함.
  • AutoLock의 영향을 받지 않는 동코어 공격는 전체 키 복구를 달성함으로써, AutoLock가 특정하게 교차코어 상호작용을 대상으로 함을 입증함.
  • 다수결 투표 및 가중 카운팅 기법을 통해 동일한 교차코어 환경에서 100,000회 이내의 암호화로 전체 키 복구가 가능함을 입증하며, AutoLock의 한계를 극복할 수 있음을 보임.
  • 확률 필터 방법은 복잡도가 $2^{32}$ 이하인 브루트포스 검색과 결합되었을 때 100,000회 이내의 암호화로도 전체 키 복구를 달성함.
  • 제안된 개선 기법은 AutoLock가 적용된 프로세서 뿐만 아니라 비포함형 캐시 또는 AutoLock 미적용 시스템에서도 효과적이며, 일반적인 공격의 강건성을 향상시킴.

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

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

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

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