Criptografia de disco completa com TPM, não sujeita a ataque de inicialização a frio


9

Aqui está uma passagem da Wikipedia no BitLocker

Depois que uma máquina protegida pelo BitLocker está em execução, suas chaves são armazenadas na memória, onde podem ser suscetíveis a ataques por um processo capaz de acessar a memória física, por exemplo, através de um canal 1394 DMA. Qualquer material criptográfico na memória corre risco deste ataque, que, portanto, não é específico do BitLocker.

Entendo que os TPMs (Trusted Platform Modules) , que o BitLocker supostamente está usando, são feitos para proteger especificamente contra esses ataques:

... uma chave ainda estaria vulnerável enquanto um aplicativo que a obteve do TPM a estiver usando para executar operações de criptografia / descriptografia, conforme ilustrado no caso de um ataque de inicialização a frio. Esse problema é eliminado se as chaves usadas no TPM não estiverem acessíveis em um barramento ou em programas externos e toda a criptografia / descriptografia for feita no TPM

O diagrama do TPM implica que o mecanismo de armazenamento de chaves e criptografia / descriptografia deve fazer parte do módulo. Então, por que não há produto de criptografia de disco completo que use esse recurso? Por exemplo: por que não há software FDE, não vulnerável a ataques de inicialização a frio?

Respostas:


3

O diagrama do TPM implica que o mecanismo de armazenamento de chaves e criptografia / descriptografia deve fazer parte do módulo. Então, por que não há produto de criptografia de disco completo que use esse recurso? Por exemplo: por que não há software FDE, não vulnerável a ataques de inicialização a frio?

Se você quiser que sua chave não esteja presente fora do TPM, ele precisará fazer toda a criptografia. Isso não é possível porque o TPM não possui o seguinte:

  1. criptografia simétrica

    O próprio TPM não pode executar uma criptografia simétrica como o AES nos dados externos fornecidos.

  2. desempenho

    Mesmo se fosse capaz de criptografar, o desempenho do chip não atenderia aos requisitos de um FDE. Um TPM foi projetado para ter custos muito baixos. Desempenho não é objetivo do projeto.

  3. largura de banda

    Um TPM em um sistema de PC é conectado via barramento LPC, que pode transferir 6,67 MB / s no máximo. (sem full duplex)

Portanto, o TPM não foi projetado para executar o FDE.

A solução é deixar o próprio HDD fazer a criptografia. Se você deseja seguir esse caminho, deve consultar o grupo de trabalho de armazenamento de dados do TCG . Sua solução é baseada em unidades de criptografia automática (SED), que armazenam suas chaves no TPM. Portanto, a chave nunca deve estar visível na RAM do sistema e apenas por um curto período de tempo no barramento do sistema .

Portanto, não é uma solução para FDE, mas exige hardware especial (= as SEDs).


Isso ainda não deixaria o sistema vulnerável a farejar ao longo do barramento, seja PCI ou USB (se externo)? A chave de descriptografia precisa percorrer esse caminho até a unidade, e os dados sempre retornam - e ficam na memória do PC - de forma clara.
— 17006 Deitch

@ sim sim, mas isso é um ataque diferente. Se você quer se defender de alguém capaz de cheirar seu barramento PCIe - boa sorte com isso.
— Scolytus 17/02

Entendi. Em outras palavras, se eu quiser me defender contra o ataque de dados não criptografados (não a chave), preciso proteger o barramento físico.
— 17006 Deitch

Mas, então, qual é o valor de nunca ter as chaves das unidades visíveis na RAM? Afinal, os dados não criptografados estarão lá.
— 17006 Deitch

Ah, sim (desculpe por vários comentários). Eu já vi muitos SEDs; você conhece algum que armazene nativamente suas chaves no TPM?
— 17006 Deitch

4

No artigo da Wikipedia sobre TPM , a especificação do TPM detalha "um processador criptográfico seguro que pode armazenar chaves criptográficas que protegem as informações" - em outras palavras, uma peça de hardware generalizada que executa operações criptográficas para o usuário.

O TPM é generalizado para ser acessível no SO e no software subseqüente e, portanto, é inerentemente limitado em segurança devido ao seu design - os programas devem ser executados em algum lugar e, portanto, devem ser carregados na RAM. Vários outros programas usam o módulo TPM para fins de autenticação (por exemplo, algumas redes de segurança corporativa) ou para impedir que computadores não autorizados acessem uma rede específica.


Isso não se limita ao BitLocker e outras soluções que usam o TPM também devem ter cuidado para reduzir os riscos de ataques de inicialização a frio / cópia de RAM.

Em teoria, seria possível ter um disco rígido auto-criptografado de maneira semelhante a um módulo TPM auto-incluso. No entanto, isso representa uma limitação muito grave: o usuário final não pode conhecer a chave de descriptografia (caso contrário, um vírus ou outro software também pode determiná-la); portanto, seria impossível recuperar os dados, se necessário, conforme necessário. não tem como obter a chave para descriptografá-la.

Este documento que ilustra ataques de inicialização a frio em quase todos os esquemas de criptografia de disco completo pode ser útil:

Em seu "modo básico" padrão, o BitLocker protege a chave mestra do disco apenas com o Trusted Platform Module (TPM) encontrado em muitos PCs modernos. Essa configuração é [...] particularmente vulnerável ao nosso ataque, porque as chaves de criptografia de disco podem ser extraídas com nossos ataques, mesmo que o computador esteja desligado por um longo tempo. Quando a máquina inicializar, as chaves serão carregadas na RAM automaticamente (antes da tela de login) sem a introdução de segredos.

Parece que a Microsoft está ciente e recomenda [...] configurar o BitLocker no "modo avançado", onde protege a chave do disco usando o TPM junto com uma senha ou uma chave em um dispositivo USB removível. No entanto, mesmo com essas medidas, o BitLocker fica vulnerável se um invasor chegar ao sistema enquanto a tela estiver bloqueada ou o computador estiver dormindo (embora não esteja se estiver hibernando ou desligado).

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.