- Artigo sobre como contornar o BitLocker, o recurso de criptografia de volume completo do Microsoft Windows, em notebooks Lenovo usando um analisador lógico barato
- A chave de criptografia de volume completo (FVEK) do BitLocker é criptografada com a chave mestra do volume (VMK) e armazenada no disco. A VMK é armazenada no Módulo de Plataforma Confiável (TPM), permitindo que o disco seja descriptografado apenas ao inicializar no mesmo computador.
- A vulnerabilidade está no fato de que, durante o processo de boot, a VMK é transmitida sem criptografia entre o TPM e a CPU, o que permite capturá-la e usá-la para descriptografar o disco.
- O autor capturou a troca com o TPM usando um analisador lógico DSLogic Plus comprado em 2021 por menos de 100 dólares.
- O barramento SPI (Serial Peripheral Interface) foi amostrado a uma frequência mínima de 100 MHz para capturar os sinais com folga.
- Foi constatado que a chave VMK era usada no fim da etapa POST, cerca de 14 segundos após o início do processo de boot.
- Os sinais capturados foram decodificados em três camadas: SPI, TIST (TPM Interface Specification) e TPM 2.0.
- O comando TPM que solicita o retorno da chave é o comando
TPM2_Unseal, usado para obter a VMK.
- Depois disso, o disco foi montado e um backdoor foi instalado sobrescrevendo o programa Sticky Keys com
cmd, fornecendo um shell SYSTEM ao pressionar a tecla Shift cinco vezes durante o boot.
- O autor observa que usar o DSLogic para esse trabalho foi desafiador, pois muitas capturas eram ruins e a frequência de amostragem mal conseguia fornecer um clock consistente.
- O artigo conclui que o uso de um TPM discreto (físico) não aumenta a segurança do sistema como se espera, mas cria uma falsa sensação de segurança. Para se defender desse ataque, recomenda-se usar TPM por firmware (fTPM) ou configurar um PIN ou senha no BitLocker.
1 comentários
Comentários no Hacker News
TPM2_StartAuthSessione especificando criptografia para cada comando da sessão