버지니아 대학과 캘리포니아 샌디에고 대학의 연구팀은 Micro-Op 캐시를 사용하는 인텔과 AMD의 모든 최신 프로세서에 영향을 주는 스펙터 공격의 변종을 발견했습니다.
x86 프로세서는 복잡한 명령어를 Micro-Op라고 부르는 더 작은 유닛으로 나누는 작업을 프론트 엔드에서 수행합니다. 백엔드에서는 이 단순한 유닛을 처리하면 되니 RISC 프로세서에 가까워지며, 성능 역시 향상됩니다.
Micro-Op는 MIcro-Op 캐시에 저장되는데, 이번에 발견된 취약점은 이걸 공격합니다. 사용자 커널 경계를 넘어 유출하는 동일 스레드 교체 도메인 공격, Micro-Op 캐시를 통해 하나의 물리 코어에서 실행되는 2개의 SMT 스레드 사이에서 데이터를 유출하는 교차 SMT 스레드 공격, 명령이 실행되 전달하기 전에도 잘못 추측한 경로를 따라 액세스 권한이 없는 데이터를 유출하는 일시적 실행 공격 등입니다.
현재 나온 스펙터 패치는 새로 발견된 변종에서 CPU를 보호하지 못합니다. 그리고 이 취약점을 잡는 방법은 iTLB (Instruction Translation Lookaside Buffer)를 자주 비우는 것인데 성능이 크게 떨어집니다. 권한에 따라 Micro-Op 캐시를 분할하는 방법도 있으나 역시 캐시 활용이 줄어들어 성능이 떨어집니다. 또 모니터링을 자주 하는 것도 있지만 역시 성능에 영향을 줍니다.
다만 이 취약점을 쓰긴 매우 까다롭습니다. 소프트웨어와 하드웨어적인 보안 패치를 모두 우회하고, 비정상적인 특정 공격을 실행해야 합니다.