- 레노버 노트북에서 저렴한 로직 분석기를 사용하여 Microsoft Windows의 전체 볼륨 암호화 기능인 BitLocker를 우회하는 방법에 대한 기사
- BitLocker의 전체 볼륨 암호화 키(FVEK)는 볼륨 마스터 키(VMK)로 암호화되어 디스크에 저장됩니다. VMK는 신뢰할 수 있는 플랫폼 모듈(TPM)에 저장되어, 같은 컴퓨터에서 부팅할 때만 디스크를 복호화할 수 있습니다.
- 취약점은 부팅 과정에서 VMK가 TPM과 CPU 사이에서 암호화되지 않은 상태로 전송되어, 이를 캡처하고 디스크를 복호화하는 데 사용할 수 있다는 사실에 있습니다.
- 저자는 2021년에 100달러 미만으로 구입한 DSLogic Plus 로직 분석기를 사용하여 TPM 교환을 캡처했습니다.
- SPI(Serial Peripheral Interface) 버스는 신호를 편안하게 획득하기 위해 최소 100MHz의 주파수로 샘플링되었습니다.
- VMK 키는 POST 단계 후반, 즉 부팅 과정에서 약 14초 후에 사용되었다는 것이 밝혀졌습니다.
- 캡처된 신호는 SPI, TIST(TPM Interface Specification), TPM 2.0의 세 가지 계층에서 디코딩되었습니다.
- 키를 반환하도록 요청하는 TPM 명령은 TPM2_Unseal 명령으로, 이를 사용하여 VMK를 획득했습니다.
- 디스크는 그 후 마운트되어 스티키 키 프로그램을 cmd로 덮어쓰는 방식으로 백도어가 설치되었으며, 부팅 중에 시프트 키를 다섯 번 누르면 SYSTEM 쉘을 제공합니다.
- 저자는 이 작업을 위해 DSLogic을 사용하는 것이 많은 캡처가 불량이었고, 샘플링 주파수가 겨우 일관된 클럭을 제공했기 때문에 도전적이었다고 지적했습니다.
- 기사는 이산(물리적) TPM의 사용이 예상대로 시스템 보안을 높이지 않고 보안의 착각을 만들어낸다는 결론을 내립니다. 이 공격을 방어하기 위해서는 펌웨어 TPM(fTPM)을 사용하거나 BitLocker에 PIN이나 암호를 설정하는 것이 권장됩니다.