TPM2_HMAC, 보안 강화? 아니면 장식일 뿐?

by DD
4개월 전
조회수 14

TPM2_HMAC 기능은 TPM 버스 통신 보안을 위해 설계되었으나, 사용자 공간의 취약점으로 인해 무력화될 수 있음.

핵심은 키 관리의 문제로, 암호화가 실제 보안을 보장하려면 신뢰할 수 있는 키 관리가 필수적임을 강조함.

커뮤니티에서는 '장식적인 암호화'라는 표현에 공감하며, CPU 내장형 TPM의 필요성을 제기함.

TPM2_HMAC의 기술적 취약점

TPM2_HMAC는 HMAC암호화를 사용하여 TPM 버스 통신을 보호하려 시도한다. 구체적으로, 커널은 Null Primary Key를 사용하여 세션을 설정하고, PCR 확장 및 난수 생성 시 세션 키를 생성한다. 따라서, 공격자는 사용자 공간의 취약점을 악용하여 Null Primary Key를 위조하고, 측정값 조작을 시도할 수 있다.

장식적인 암호화와 키 관리의 중요성

저자는 TPM2_HMAC를 '장식적인 암호화'로 비판하며, 키 관리의 중요성을 강조한다. 구체적으로, 암호화는 키 관리 문제를 해결하지 못하면 무의미하다는 것이다. 반면, CPU 내장형 TPM과 같은 신뢰할 수 있는 하드웨어를 통해 키 관리 문제를 해결해야 실질적인 보안을 확보할 수 있다.

실제 시스템 적용 시 고려사항

TPM2_HMAC를 포함한 보안 기능을 사용할 때는 위협 모델을 명확히 정의해야 한다. 따라서, 사용자 공간의 보안을 강화하고, 신뢰 체인을 정확히 이해해야 한다. 결과적으로, Caliptra와 같은 내장형 Root of Trust를 활용하여 하드웨어 수준의 보안을 확보하는 것이 중요하다.

Decorative Cryptography