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.