SLAC: Access-Driven CPU-to-GPU Side-channel Attacks via System-Level Cache on Apple Silicon
이 논문은 Apple Silicon을 대상으로 공유 시스템 레벨 캐시 흔적을 악용하여 비권한 CPU 프로세스가 GPU 워크로드를 모니터링할 수 있게 함으로써 그래프 신경망(GNN) 및 대규모 언어 모델(LLM)에 대해 높은 정확도의 프라이버시 침해를 달성하는 새로운 미세 입도 기반 액세스 주도형 사이드 채널 공격인 SLAC을 소개한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
당신과 친구가 번화한 도시 한복판에서 하나의 고속 도서관을 공유하고 있다고 상상해 보세요. 당신들 둘 다 각자의 개인 책상이 있어 좋아하는 책들을 보관할 수 있지만, 가지고 있지 않은 것이 필요할 때마다 둘 다 공유 도서관으로 달려가 그것을 집어 옵니다. 이 도서관은 컴퓨터의 두뇌(CPU)와 그래픽 전문 엔진(GPU)이 공유하는 초고속 메모리 지점인 "시스템 레벨 캐시(System-Level Cache, SLC)"입니다. 현대 컴퓨팅의 세계에서 이 두 부분은 마치 작은 아파트에 사는 룸메이트처럼 동일한 칩 위에 존재하며, 빠르게 작동하기 위해 이 도서관을 공유해야 합니다.
이제 까다로운 문제가 있습니다. 당신은 친구가 개인 책상에서 무엇을 읽고 있는지 볼 수는 없지만, 도서관은 관찰할 수 있습니다. 만약 친구가 책을 가져가면, 아주 짧은 순간 동안 도서관 선반에서 그 책이 사라집니다. 만약 친구가 가져가지 않는다면, 책은 원래 있던 자리에 그대로 머물러 있습니다. 책이 선반에 있는지 확인하는 데 정확히 얼마나 시간이 걸리는지를 측정함으로써, 교활한 관찰자는 친구가 무엇을 읽고 있는지 직접 보지 않고도 알아낼 수 있습니다. 이것을 "사이드 채널 공격(side-channel attack)"이라고 부릅니다. 이는 마치 옆쪽 주방에서 들려오는 냄비 부딪히는 소리를 듣고 누군가의 비밀 레시피를 추측하는 것과 같습니다. 우리가 개인적인 사진, 의료 기록, AI 대화를 처리하기 위해 컴퓨터에 점점 더 의존함에 따라, 이러한 "주방 소음"이 비밀을 유출할 수 있는지 파악하는 것은 우리의 디지털 삶을 안전하게 지키는 데 매우 중요한 일이 되었습니다.
논문: SLAC – "도서관 감시자" 공격
이 논문에서 노스이스트 대학교(Northeastern University)와 루이지애나 주립대학교(Louisiana State University)의 연구진은 애플의 새로운 실리콘 칩(M1 등)을 대상으로 매우 구체적인 종류의 "주방 소음" 스파잉을 수행할 수 있는지 알아보기로 했습니다. 그들은 다음과 같은 질문을 던졌습니다: 일반적인 컴퓨터 프로그램(CPU에서 실행 중)이 공유 도서관을 관찰함으로써 비밀스러운 그래픽 프로그램(GPU에서 실행 중)을 엿볼 수 있는가?
이전에는 사람들이 반대 방향(GPU가 CPU를 스파잉하는 것)으로 엿볼 수 있다는 것을 알고 있었거나, 혹은 GPU가 무엇을 하고 있는지에 대해 (어떤 책이 만져졌는지는 모르지만 도서관이 "바쁘다"는 정도를 아는 것과 같이) 흐릿하고 저해상도의 뷰를 얻을 수 있다는 것은 알고 있었습니다. 하지만 그 누구도 애플 칩에서 CPU 측으로부터 GPU의 활동에 대한 선명하고 고해상도의 뷰를 얻는 방법을 찾아내지 못했습니다. 연구진은 그들의 새로운 방법을 SLAC이라고 부릅니다.
그들이 암호를 해독한 방법
이 작업을 성공시키기 위해, 팀은 먼저 두 가지 거대한 퍼즐을 풀어야 했습니다.
- 비밀 지도: 애플 M1 칩은 도서관을 조직하는 매우 특이한 방식을 사용합니다. 책을 순서대로(책 1, 책 2, 책 3) 배치하는 대신, 어떤 선반에 책을 둘지 결정하기 위해 복잡하고 비밀스러운 수학 공식(해시 함수)을 사용합니다. 이는 마치 비밀 코드를 바탕으로 책을 섞어 놓는 사서와 같습니다. 연구진은 이 코드를 역공학(reverse-engineer)해야 했습니다. 그들은 칩이 데이터를 어디에 둘지 결정하는 방식을 알아내기 위해 수백만 개의 주소를 테스트하며 시간을 보냈습니다. 그들은 칩이 12비트 인덱스를 사용하며, 이는 도서관에 4,096개의 서로 다른 "선반"(캐시 세트)이 있음을 의미한다는 것을 발견했습니다.
- "독점적(Exclusive)" 규칙: 그들은 또한 CPU와 GPU가 도서관을 사용하는 방식에 대한 이상한 규칙을 발견했습니다. CPU가 책을 볼 때는 자신의 책상에 복사본을 보관하며, 공간이 부족할 때만 공유 도서관에 넣습니다. 하지만 GPU가 책을 볼 때는 이를 직접 공유 도서관에 넣습니다. 이 "독점적" 행동 때문에 연구진은 영리해져야 했습니다. 그들은 CPU 쪽에서 도서관을 쉽게 채울 수 없었기에, 먼저 CPU의 개인 책상을 채운 다음, CPU가 오래된 책들을 공유 도서관으로 밀어내도록 강제하여 공격을 위한 무대를 설정해야 했습니다.
공격: CPrime 및 GPrime
지도를 완성하고 규칙을 이해한 후, 그들은 CPrime+CProbe와 G-Prime+CProbe라고 불리는 두 가지 스파잉 방법을 구축했습니다.
- CPrime (CPU 스파이): 이 방법은 CPU만을 사용합니다. 공격자는 공유 도서관을 자신들의 "미끼" 책들로 채웁니다. 그런 다음, 피해자(GPU)가 비밀 프로그램을 실행하도록 둡니다. 만약 피해자가 공격자가 그곳에 둔 책을 건드리면, 공격자의 책이 밖으로 튕겨 나갑니다. 공격자가 도서관을 다시 확인할 때, 지연(miss)을 발견하게 되면 "아하! GPU가 저 특정 선반을 건드렸구나!"라고 알게 됩니다.
- 단점: CPU가 도서관을 채우기 위해 많은 일을 해야 하므로 속도가 느립니다. 함정을 설치하는 데 약 **7밀리초(ms)**가 걸립니다.
- GPrime (GPU 스파이): 이것은 초강력 버전입니다. 만약 공격자가 GPU에서도 코드를 실행할 수 있다면(많은 시나리오에서 허용됨), GPU의 엄청난 속도를 이용해 순식간에 도서관을 채울 수 있습니다.
- 결과: 이 설정은 CPU 전용 버전보다 6.4배 더 빠르며, 단 **0.7밀리초(ms)**밖에 걸리지 않습니다.
그들이 발견한 것: 비밀 훔치기
연구진은 단순히 함정을 설치하는 데 그치지 않고, 실제 비밀을 훔치는 실험을 했습니다. 그들은 두 가지 시나리오를 테스트했습니다:
소셜 네트워크 맵(GNN) 훔치기: 그들은 사회 관계망이나 의료 데이터를 분석하는 데 사용되는 AI 유형인 그래프 신경망(Graph Neural Network)을 공격했습니다. 여기서 "비밀"은 사람이나 노드 사이의 연결(edge)입니다. GPU가 어떤 도서관 선반을 건드렸는지 관찰함으로써, 공격자는 지도를 재구성할 수 있었습니다.
- 성적: 다섯 가지 서로 다른 데이터셋에 대해 연결(edge)의 **90%**를 정확하게 복구해 냈습니다. 더 빠른 GPU 기반 방법을 사용했을 경우, 일부 지도에서는 **99.9%**의 정확도에 도달했습니다.
당신의 마음 읽기 (LLM): 그들은 대규모 언어 모델(LLM, 챗봇의 기반이 되는 모델)을 공격했습니다. 이 모델들은 당신이 입력한 내용을 이해하고 다음에 무엇을 말해야 할지 결정하기 위해 거대한 사전(임베딩 테이블)을 찾아봅니다.
- 입력 스파잉: 그들은 당신이 어떤 키워드(예: 질병 이름이나 주식 종목명)를 입력했는지 추측하려 했습니다. 그들은 최대 **94.8%**의 정확도로 입력 키워드를 복구했습니다.
- 출력 스파잉: 그들은 AI가 당신에게 어떤 말을 하는지 추측하려 했습니다. 그들은 AI의 응답 단어를 최대 **88.9%**의 정확도로 복구했습니다.
결론
논문은 애플 실리콘 칩의 공유 도서관이 "정보를 새는 친구(leaky buddy)"라고 결론짓습니다. CPU와 GPU가 서로 분리되어 있어야 함에도 불구하고, 이들이 빠르게 메모리를 공유하는 방식은 일반적인 권한 없는 프로그램이 매우 정밀하게 민감한 그래픽 워크로드를 엿볼 수 있는 숨겨진 통로를 만들어냅니다.
연구진은 실제 하드웨어(Apple M1 칩)에서 이러한 결과를 측정했으며, 이 공격들이 이론뿐만 아니라 실제로도 안정적으로 작동한다는 것을 확인했습니다. 그들은 향후 컴퓨터 설계 시 메모리를 공유하는 방식에 더 주의를 기울여야 하며, 그렇지 않으면 우리의 사적인 AI 대화와 데이터가 공유 도서관에서 들려오는 "냄비 부딪히는 소리"를 통해 도청될 수 있다고 제언합니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.