연구진이 심층 신경망(DNN)이 실행되는 동안 개인 데이터를 탈취할 수 있는 새로운 유형의 캐시 부채널 공격을 발견했습니다. 이 공격은 하드웨어 캐시 활동을 읽고 타이밍 분석을 통해 민감한 모델 입력값이나 파라미터를 재구성하며, 이는 온디바이스 추론에 의존하는 모든 서비스에 위협이 됩니다.
하드웨어가 중요한 이유
심층 신경망(DNN)은 연산 시간의 대부분을 CPU, 캐시 계층 구조 및 메모리 간의 데이터 이동에 사용합니다. 캐시는 최근 사용된 데이터를 저장하여 후속 액세스 속도를 높이는 작고 빠른 저장 공간입니다. 모델이 입력을 처리할 때, 캐시 읽기 및 쓰기 패턴은 해당 입력에 대한 정보를 노출합니다. 동일한 머신에서 악성 프로세스를 실행하거나 공유 클라우드 인프라를 악용하여 이러한 패턴을 모니터링하는 공격자는 모델의 코드나 가중치에 직접 접근하지 않고도 처리 중인 데이터를 추론할 수 있습니다.
연구 결과
- 캐시 유출은 실재합니다. 특정 작업에 걸리는 시간을 측정함으로써, 연구진은 공격자가 서로 다른 입력을 구별하고 심지어 모델의 학습된 가중치 일부를 복구할 수 있음을 보여주었습니다.
- 소프트웨어 수정만으로는 부족합니다. 입력값 정제(input sanitization), 상수 시간 알고리즘(constant-time algorithms) 또는 모델 암호화와 같은 전통적인 방어 방식은 캐시가 드러내는 저수준 메모리 트래픽을 숨기지 못합니다.
- 하드웨어 수준의 방어가 필요합니다. 완화 조치는 캐시 분할, 액세스 패턴 무작위화 또는 타이밍 측정에 노이즈 추가와 같이 프로세서나 시스템 아키텍처에 내장되어야 합니다.
승자와 패자
모델 소유자와 개발자는 공격자가 민감한 데이터(예: 의료 영상 또는 개인 식별 정보)를 추출할 경우 독점적인 지적 재산을 잃을 위험이 있으며, 더 심각하게는 사용자 개인정보가 침해될 수 있습니다. 클라우드 제공업체는 물리적 하드웨어를 공유하는 테넌트에게 잘못된 보안 신뢰를 줄 위험이 있습니다. 동일한 칩에 코드를 배치할 수 있는 모든 당사자인 공격자는 데이터를 수집할 수 있는 저렴하고 은밀한 경로를 얻게 됩니다.
하드웨어를 무시할 때 발생하는 숨겨진 비용
소프트웨어 패치에만 의존하면 개발자는 코드를 지속적으로 업데이트하고 회귀 테스트를 수행해야 하며, 그럼에도 물리적 부채널은 여전히 열려 있게 됩니다. 하드웨어 방어 체계를 구현하려면 새로운 실리콘 설계나 펌웨어 업데이트가 필요할 수 있습니다. 초기 비용은 더 많이 들지만 유출의 근원을 차단합니다. 하드웨어 재설계 비용을 감당할 수 없는 조직은 캐시 격리 기능이 내장된 전용 추론 칩을 실질적인 임시 방편으로 사용할 수 있습니다.
반론
일부에서는 하드웨어 변경은 느리고 비용이 많이 들며, 대부분의 추론 워크로드는 공격자가 캐시 모니터링에 필요한 근접성을 확보하기 어려운 환경에서 실행된다고 주장합니다. 이에 대해 연구진은 여러 앱이 동일한 프로세서에서 공존하는 공유 리소스 클라우드 인스턴스 및 엣지 디바이스가 바로 이러한 위협이 가장 현실적으로 다가오는 환경이라고 반박합니다.
향후 주목해야 할 사항
- 차세대 CPU의 캐시 분할 기능 채택 여부.
- DNN 추론을 위해 메모리 액세스 패턴을 자동으로 무작위화하는 컴파일러 도구의 개발.
- 캐시 부채널을 AI 워크로드의 필수 보안 고려 사항으로 분류하는 업계 가이드라인.
결론: 민감한 데이터를 심층 신경망에 맡긴다면, 소프트웨어 수준에서 모델을 보호하는 것만으로는 더 이상 충분하지 않습니다. 모델을 실행하는 하드웨어가 강화되지 않는다면, AI를 실용적으로 만드는 바로 그 속도 향상이 데이터 탈취의 통로가 될 것입니다.
