toplogo
Sign In

AMD 프로세서의 원격 스케줄러 경합 공격 분석


Core Concepts
이 논문은 AMD Zen 3 및 Zen 4 프로세서의 모든 스케줄러 큐에서 발생할 수 있는 새로운 종류의 부채널 공격을 체계적으로 분석하고 있다. 또한 이러한 공격을 JavaScript로 구현하여 원격에서 실행할 수 있음을 보여준다.
Abstract
이 논문은 AMD Zen 3 및 Zen 4 프로세서의 스케줄러 큐 부채널 공격을 체계적으로 분석하고 있다. 먼저 저자들은 모든 스케줄러 큐를 프라이밍할 수 있는 효과적인 방법을 찾아냈다. 이를 통해 기존에 알려진 정수 곱셈 스케줄러 큐 외에도 다른 스케줄러 큐들을 활용할 수 있음을 보였다. 다음으로 저자들은 기존 측정 방식의 정확도 문제를 해결하기 위해 새로운 측정 방식인 "bingo race"를 제안했다. 이 방식은 타이밍 정보 없이도 스케줄러 큐의 정확한 용량을 측정할 수 있다. 이어서 저자들은 이러한 스케줄러 경합 공격을 활용하여 키스트로크 타이밍을 복구할 수 있음을 보였다. 이 공격은 F1 점수 99.5% 이상의 정확도를 달성했으며, 정확하게 탐지된 키스트로크의 표준편차는 4ms 미만이었다. 마지막으로 저자들은 JavaScript로 구현한 스케줄러 경합 기반 은닉 채널을 소개했다. 이 채널은 Firefox에서 940.7bit/s의 전송률을 달성했으며, 교차 출처 정책과 사이트 격리를 우회할 수 있었다.
Stats
스케줄러 큐 1의 용량은 Zen 3와 Zen 4에서 모두 24개의 마이크로 연산으로 측정되었다. 스케줄러 큐 3의 경우 lodsb 명령어로 22개의 마이크로 연산을 프라이밍할 수 있었다. FPU 스케줄러 큐의 총 용량은 128개의 마이크로 연산으로 측정되었다.
Quotes
"We systematically address these overarching research questions:" "We present bingo race, a novel timingless and more accurate measurement method based on out-of-order memory reads." "We show that contention attacks on each integer scheduler can observe singular events like inter-keystroke timings of a password entry, with F1 scores ≥99.5 % and a standard deviation below 4 ms from the ground-truth timings." "We present a scheduler contention covert channel purely in JavaScript running in Firefox 114, with a true capacity of 940.7 bit/s (n = 10, σ¯x = 5.15 bit/s), bypassing cross-origin policies and site isolation."

Key Insights Distilled From

by Stefan Gast,... at arxiv.org 04-11-2024

https://arxiv.org/pdf/2404.07042.pdf
Remote Scheduler Contention Attacks

Deeper Inquiries

AMD 프로세서의 스케줄러 큐 설계에 대한 보안 취약점을 근본적으로 해결하기 위해서는 어떤 하드웨어 수준의 변경이 필요할까?

AMD 프로세서의 스케줄러 큐 설계에 대한 보안 취약점을 근본적으로 해결하기 위해서는 다음과 같은 하드웨어 수준의 변경이 필요할 것으로 보입니다: 스케줄러 큐 분리: 스케줄러 큐를 물리적으로 분리하여 각 큐가 서로 영향을 미치지 않도록 하는 것이 중요합니다. 이를 통해 한 큐의 활동이 다른 큐에 미치는 영향을 최소화할 수 있습니다. 스케줄러 용량 증가: 스케줄러 큐의 용량을 증가시켜 여유 공간을 확보하는 것이 중요합니다. 이를 통해 큐가 가득 차더라도 성능에 영향을 미치지 않도록 할 수 있습니다. 동적 스케줄링: 스케줄러 동작을 동적으로 조절하여 공격에 취약한 상황을 사전에 감지하고 대응할 수 있는 기능을 추가하는 것이 필요합니다. 하드웨어 보안 기능 강화: 하드웨어 수준에서 스케줄러 큐에 대한 접근을 제한하고 보안 기능을 강화하여 외부 공격으로부터 시스템을 보호할 수 있도록 해야 합니다. 이러한 변경을 통해 AMD 프로세서의 스케줄러 큐 설계에 대한 보안 취약점을 근본적으로 해결할 수 있을 것으로 예상됩니다.
0
visual_icon
generate_icon
translate_icon
scholar_search_icon
star