[논문 리뷰] FortuneTeller: Predicting Microarchitectural Attacks via Unsupervised Deep Learning
FortuneTeller는 감독되지 않는 RNN(LSTM/GRU)을 사용하여 악성 하드웨어 성능 카운터로 학습하지 않고 실시간으로 보이지 않는 마이크로아키텍처 공격을 탐지하며, 라벨링된 학습 데이터 없이 높은 F-스코어와 넓은 공격 커버리지를 달성합니다.
The growing security threat of microarchitectural attacks underlines the importance of robust security sensors and detection mechanisms at the hardware level. While there are studies on runtime detection of cache attacks, a generic model to consider the broad range of existing and future attacks is missing. Unfortunately, previous approaches only consider either a single attack variant, e.g. Prime+Probe, or specific victim applications such as cryptographic implementations. Furthermore, the state-of-the art anomaly detection methods are based on coarse-grained statistical models, which are not successful to detect anomalies in a large-scale real world systems. Thanks to the memory capability of advanced Recurrent Neural Networks (RNNs) algorithms, both short and long term dependencies can be learned more accurately. Therefore, we propose FortuneTeller, which for the first time leverages the superiority of RNNs to learn complex execution patterns and detects unseen microarchitectural attacks in real world systems. FortuneTeller models benign workload pattern from a microarchitectural standpoint in an unsupervised fashion, and then, it predicts how upcoming benign executions are supposed to behave. Potential attacks and malicious behaviors will be detected automatically, when there is a discrepancy between the predicted execution pattern and the runtime observation. We implement FortuneTeller based on the available hardware performance counters on Intel processors and it is trained with 10 million samples obtained from benign applications. For the first time, the latest attacks such as Meltdown, Spectre, Rowhammer and Zombieload are detected with one trained model and without observing these attacks during the training. We show that FortuneTeller achieves F-score of 0.9970.
연구 동기 및 목표
- 감독되지 않는 딥러닝을 사용하여 정상적인 마이크로아키텍처 동작을 모델링하고 이상을 탐지합니다.
- unseen 공격을 식별할 수 있는 일반적이고 어플리케이션에 구애받지 않는 탐지기를 개발합니다.
- 실시간 탐지를 위한 보안 센서로 하드웨어 성능 카운터를 활용합니다.
제안 방법
- 정상 실행 중 코어 HPC에서 시계열 데이터를 수집합니다.
- 슬라이딩 윈도우를 사용하여 LSTM과 GRU 모델을 학습시키고(셀프-슈퍼바이즈드) 다음 카운터 값을 예측합니다.
- 탐지 창에서 예측값과 실측치를 비교하여 임계치를 넘어서는 이상을 탐지합니다.
- 탐지 성능을 극대화하기 위해 최적의 카운터 하위 집합을 프로파일링하고 선택합니다.
- 정상 워크로드와 알려진 공격 및 새로운 마이크로아키텍처 공격 시퀀스에 대해 평가합니다.
실험 결과
연구 질문
- RQ1감독되지 않는 RNN 모델이 unseen 공격을 탐지하기 위해 정상적인 마이크로아키텍처 패턴을 학습할 수 있는가?
- RQ2 카운터 선택과 윈도우 크기가 탐지 성능 및 오경보(False alarms)에 어떤 영향을 미치는가?
- RQ3 FortuneTeller는 실세계의 서버 및 노트북 환경에서 현대 공격을 탐지하는 데 얼마나 효과적인가?
- RQ4 라이브 시스템에 FortuneTeller를 배치하는 오버헤드는 어느 정도인가?
주요 결과
- FortuneTeller는 강력한 이상 탐지 성능을 달성하며, 보고된 최고 F-score는 0.9970입니다.
- 정상 동작 모델링을 위해 1000만 개의 정상 샘플이 사용됩니다.
- 세 가지 핵심 카운터(L1_Inst_Miss, L1_Inst_Hit, LLC_Miss)가 다양한 공격에 대해 높은 탐지 성능을 제공합니다.
- 이 방법은 Flush+Flush, Spectre, Meltdown 및 Zombieload와 같은 은밀하고 일시적인 공격뿐 아니라 보지 못한 변형까지 탐지합니다.
- 비지도형, 카운터 기반 모델은 대상 애플리케이션에 구애되지 않으며 실세계 워크로드에 일반화될 수 있습니다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.