AI 요약
x86 CPU의 최고 권한 실행 환경인 시스템 관리 모드(SMM)를 초장기 실행 머신 명령어 하나로 깨뜨릴 수 있는 취약점이 공개되었다. SMM은 모든 코어가 동시에 SMM에 진입해야 하는 보안 모델을 갖는데, 한 코어가 약 40억 사이클(약 1초) 이상 중단 불가능한 단일 명령어를 실행하면 다른 코어가 SMM 진입을 포기하고 SMM 코드를 실행하게 된다. 이때 SMM에 늦게 진입한 코어와 이미 SMM을 빠져나간 코어 간의 비동기 상태가 발생해 공격자가 SMM 내부를 공격할 수 있게 된다. x86 펌웨어의 1초 타임아웃 로직이 이 취약점의 핵심 원인이다.
핵심 포인트
- SMM은 모든 코어가 동시에 SMM에 있거나 없어야 하는 보안 모델을 가짐
- 약 4,000,000,000 사이클(1초 이상) 동안 중단되지 않는 단일 명령어로 SMM 동기화를 깨뜨림
- x86 펌웨어의 SMM 동기화 코드가 1초 타임아웃 후 대기를 포기하는 점을 악용
- SMM 진입은 명령어 경계에서만 발생하므로 명령어 사이의 간격이 없어야 함
향후 전망
- CPU 제조사와 펌웨어 개발사의 SMM 동기화 메커니즘 재설계 필요성 대두
- SMM은 OS보다 높은 권한이므로 이 취약점은 부트킷 및 펌웨어 보안 연구에 중대한 영향을 미칠 전망
출처:Hacker News
