0xNews - Intel CPU 취약점을 악용할 수 있는 새로운 공격 가능성 경고

0xNews - Intel CPU 취약점을 악용할 수 있는 새로운 공격 가능성 경고


일리노이 대학교 연구팀 연구 결과 USENIX 2021 발표 예정

https://arxiv.org/pdf/2103.03443.pdf


CPU 아키텍처를 표적으로 하는 정보 유출 공격은 이전에 사용자 애플리케이션과 운영체제 사이의 격리 운영을 무너트림

이전 멜트다운 Meltdown 이나 스펙터 Spectre 와 같이 악성 프로그램이 다른 프로그램에서 사용하는 메모리에 접속할 수 있도록 하는 것이 입증

이번에 연구된 방법은 링 상호 연결 a contention on the ring interconnect 과 경합되어 활용


SoC 링 상호 연결은 링 토폴로지로 배열된 온 다이 버스 on-die bus, 코어, LLC last level cache, 그래픽 장치, 시스템 에이전트와 같은 서로 다른 구성 요소 간의 프로세스 내 통신을 가능하게 함

CPU 내부에 위치해 있는데 각 링 에이전트는 링 중지라고 하는 것을 통해 링과 통신


이를 달성하기 위해 연구팀은 링 인터커넥트의 프로토콜을 리버스 엔지니어링 수행

둘 이상의 프로세스가 링 경합을 유발하는 조건을 밝힘

이를 통해 4.18Mbps 용량의 비밀 채널 구축

Flush + Flush 혹은 Flush + Reload 와 달리 공유 메모리에 의존하지 않은 크로스 코어 채널의 경우 현재까지 가장 큼


연구팀은 인터뷰를 통해

중요하게 이전 공격과 달리 이번에 연구된 공격 방식은 공유 메모리, 캐시 세트, 코어 프라이빗 리소스, 특정 언 코어 구조 등에 의존하지 않음

그렇기에 결과적으로 현재까지의 각 도메인 격리 domain isolation 기술을 사용하여 완화하기 어려움


링 정지가 에이전트에서 들어오는 새로운 트래픽보다 이미 링에 있는 트래픽을 항상 우선시한다는 사실을 확인

이후 연구팀은 기존 온링 트래픽이 새로운 링 트래픽의 인젝션을 지연시킬 때 경합이 발생함을 확인


이러한 연구 결과를 공격자가 확보 후 공격한다면

피해자 프로세스의 메모리 접속으로 인해 대역폭 용량의 포화로 인한 악의적인 프로세스와 관련된 메모리 접속의 지연을 측정할 수 있음

그러나 이것은 스파이 프로세스가 개인 캐시(L1-L2)에 일관되게 누락되어 있고 대상 LLC 슬라이스에서 로드되어 있어야 함


이런 경우의 수가 성공한다면

링 경합으로 인해 LLC 의 메모리 로드에서 반복되는 대기 시간이 공격자가 측정 값을 사이드 채널로 사용

피해자가 사용하는 입력한 키나 입력 값을 취약한 EdDSA 나 RSA 구현에서 키 비트를 유출하여 암호를 재구성하여 결과적으로 유출할 수도 있음


타이밍 공격을 통해 SSH 키 유출이 가능함을 확인한 논문

Timing Analysis of Keystrokes and Timing Attacks on SSH 

https://people.eecs.berkeley.edu/~daw/papers/ssh-use01.pdf


이번 연구는 피해자가 입력한 민감 정보를 유추하기 위해 키 스트로크 타이밍 공격에 경합 기반 마이크로 아키텍쳐 채널이 악용된 최초의 연구


이번 연구는 인텔에서는 전통적인 사이드 채널 traditional side channel 공격으로 분류

이는 일반적으로 비밀 값을 추론하기 위해 실행 타이밍의 차이를 활용하는 오라클 공격 클래스를 지칭


암호화 구현에 대한 타이밍 공격에 대응하기 위해 칩 제조업체의 지침은 다음을 보장하여 일정 시간 프로그래밍 원칙을 준수할 것을 권장

런타임은 비밀값과 무관

명령이 실행되는 순서 혹은 코드 액세스 패턴 code access patterns 은 비밀값과 무관

메모리 피연산자가 로드되고 저장되는 순서 혹은 데이터 엑세스 패턴 data access patterns 은 비밀값과 무관


연구팀은 이번에 연구된 실험 설정과 관련된 정보는 Github 에 공개 결정

https://github.com/FPSG-UIUC/lotr


인텔에서 이전까지 발생한 사이드 채널 관련 정보 모음 사이트 링크

https://software.intel.com/security-software-guidance/secure-coding/security-best-practices-side-channel-resistance


댓글

이 블로그의 인기 게시물

0xNews - 미군을 주제로 하여 한국인을 노리는 피싱 공격 캠페인 경고

0xNews - 리눅스 커널에서 StackRot 라는 이름의 취약점으로 권한 상승 취약점 발견

0xNews - 리눅스 시스템에 원격 명령어 인젝션 공격이 가능한 새로운 openSSH 취약점 발견