[하루한줄] Software-based Power Side-Channel Attack on x86

URL

PLATYPUS

Target

Xen

Intel Processor 다수

Linux

Explain

side-channel 정보(power consumption / electro magnetic emission)를 이용해 시스템의 operation 및 data를 유추하는 공격 방법은 세계 2차 대전 때부터 존재했습니다. 지금까지 2가지 한계가 존재했는데 다음과 같습니다.

  1. 고성능의 Desktop이나 server용 CPU 보단 임베디드 마이크로 컨트롤러를 타겟으로 잡음.
  2. 오실로스코프 등을 이용한 하드웨어 기반 공격이 많았고, 소프트웨어 기반 공격의 x86 적용은 크게 성공적이지 못함. ex) RSA key 복구 시도가 2번 있었지만 실패.

PLATYPUS attack은 소프트웨어 기반 side-channel 공격입니다. Intel RAPL interface에 접근해 power consumption에 대한 정보 축적 후 x86 시스템을 타겟으로 다음과 같은 행위를 할 수 있습니다.

  1. instruction 분별, control flow monitoring
  2. AES-NI key 추출(26시간 이내)
  3. RSA key 복구(100분 이내)
  4. KASLR 무력화(20초 이내)

Intel RAPL(Running Average Power Limit)의 데이터에 누구나 접근할 수 있고 악용할 수 있습니다. 따라서 power monitoring interface들의 접근권한이 패치됐습니다.

Reference

https://seclists.org/oss-sec/2020/q4/109

https://seclists.org/oss-sec/2020/q4/110

https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00389.html

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=949dd0104c496fa7c14991a23c03c62e44637e71