A novo papel divulgado por pesquisadores de segurança da Universidade Técnica de Berlim revela que o Trusted Platform Module (fTPM / TPM) baseado em firmware da AMD pode ser totalmente comprometido por meio de um ataque de injeção de falha de tensão, permitindo acesso total aos dados criptográficos mantidos dentro do fTPM. Em última análise, isso permite que um invasor comprometa totalmente qualquer aplicativo ou criptografia, como o BitLocker, que depende exclusivamente da segurança baseada em TPM.
Os pesquisadores conseguiram essa façanha usando componentes prontos para uso que custam cerca de US$ 200 para atacar o Platform Security Processor (PSP) da AMD, presente nos chips Zen 2 e Zen 3. O relatório não especifica se as CPUs Zen 4 são vulneráveis, e o ataque requer acesso físico à máquina por ‘várias horas’. Os pesquisadores também compartilhou o código usado para o ataque no GitHub e uma lista do hardware barato usado para o ataque.
O relatório é especialmente pertinente agora que a Microsoft adicionou TPMs aos seus requisitos de sistema para o Windows 11, um movimento que encontrou resistência devido ao seu impacto deletério no desempenho do jogo, mesmo quando funciona corretamente, e graves problemas de gagueira quando não funciona. Sim, o requisito TPM é facilmente contornado. Ainda assim, a pressão da Microsoft pelo recurso aumentou o número de aplicativos que dependem exclusivamente do TPM 2.0 para recursos de segurança, aumentando assim a seção cruzada de aplicativos vulneráveis ao novo hack faulTPM.
Como lembrete, os TPMs discretos se conectam a uma placa-mãe e se comunicam com o processador para fornecer segurança, mas o barramento externo entre a CPU e o TPM provou ser hackeável com várias abordagens diferentes. Como tal, o firmware TPM, ou fTPM, foi criado para incorporar a funcionalidade dentro do chip, fornecendo assim segurança de classe TPM 2.0 sem uma interface facilmente hackeável exposta a invasores.
Esse ataque se concentra em atacar o fTPM, o que, até onde sabemos, não era possível antes. Como você pode ver na imagem acima do sistema Lenovo Ideapad 5 Pro que os pesquisadores usaram para executar o ataque, este não é um empreendimento simples e exigirá algumas horas de acesso físico à máquina. No caso de estados-nação ou dos níveis mais altos de espionagem ou espionagem corporativa, isso é bastante fácil de realizar.
Aqui podemos ver as múltiplas conexões com a fonte de alimentação, o chip BIOS SPI e o barramento SVI2 (uma interface de gerenciamento de energia) que os pesquisadores usaram no objeto de teste da Lenovo. Essas conexões são usadas para executar um ataque de injeção de falha de tensão contra o PSP presente nas CPUs Zen 2 e Zen 3, adquirindo assim o segredo exclusivo do chip que permite a descriptografia dos objetos armazenados no TPM. Aqui está o método de ataque passo a passo:
- Faça backup da imagem flash do BIOS usando um programador flash SPI
- Conecte o hardware de injeção de falhas e determine os parâmetros de ataque (4.1)
- Compile e implante a carga extraindo o segredo de derivação de chave (4.3)
- Inicie o analisador lógico para capturar os segredos de derivação de chave extraídos via SPI
- Inicie o ciclo de ataque na máquina de destino até que a carga útil seja executada com sucesso
- Analise e descriptografe a NVRAM usando o backup da ROM do BIOS e a saída de carga útil com amd-nv-tool
- Extraia e descriptografe objetos TPM protegidos por este fTPM com amd ftpm unseal
Os pesquisadores obtiveram com sucesso acesso total ao TPM e aos dados lacrados, permitindo assim que eles comprometessem a Criptografia de Disco Cheio BitLocker (FDE) no dispositivo. Como seria de imaginar, isso levaria ao acesso e controle total do dispositivo e de todos os dados nele contidos em um prazo relativamente curto.
Por padrão, o BitLocker usa um mecanismo somente TPM para armazenar as chaves, mas os usuários podem ativar manualmente uma configuração de PIN que permite ao usuário atribuir um código PIN que funcione em conjunto com os mecanismos baseados em TPM. No entanto, esses códigos PIN não são ativados por padrão e são vulneráveis a métodos de ataque de força bruta. PINs numéricos simples são relativamente fáceis de quebrar, mas senhas baseadas em texto mais rigorosas são mais difíceis de quebrar.
Conforme mencionado, esse ataque também expõe aplicativos que usam apenas segurança baseada em TPM, enquanto aplicativos com várias camadas de segurança serão mais seguros.
Os pesquisadores afirmam que esse vetor de ataque não é fácil de mitigar devido à injeção de falha de tensão, portanto, o primeiro ponto de interceptação para a AMD corrigir o problema seria presumivelmente com suas microarquiteturas de CPU de última geração. De acordo com os pesquisadores, o Converged Security and Manageability Engine (CSME) da Intel evita esses tipos de ataques.
Não vimos nenhuma comunicação oficial da AMD sobre o assunto, então o lançamento não parece fazer parte de uma divulgação coordenada padrão do setor. Entramos em contato com a AMD para obter mais detalhes sobre o ataque e para ver se a empresa tem um plano de mitigação. Atualizaremos conforme necessário.