Como posso criptografar meu SSD, mas ainda inicializo sem supervisão (linux)? [fechadas]

6

Eu tenho um sistema que exibe vídeo de um feed de câmera com uma sobreposição, e ele deve inicializar sem qualquer intervenção do usuário (quanto mais rápido, melhor). No entanto, esses sistemas estarão nas mãos dos clientes, por isso estamos preocupados com a engenharia reversa.

O sistema operacional (linux), o software e os logs são armazenados em um SSD mSATA. A CPU é um Core i3 de 4ª geração com 4 GB de RAM.

Basicamente, como podemos impedir que clientes ou concorrentes sem escrúpulos simplesmente removam o SSD e roubem o código do aplicativo? A resposta óbvia é criptografar a unidade, mas ela precisa ser inicializada sem supervisão. O próximo passo lógico é descriptografar o software em tempo de execução, mas você ainda precisa armazenar a chave de descriptografia em algum lugar no texto plano certo?

Há um módulo de TPM onboard, que pode ser uma solução, mas não consegui encontrar uma boa documentação sobre como usá-lo para isso.

Estou aberto a todas e quaisquer sugestões.

    
por Chriszuma 04.02.2015 / 23:38

1 resposta

5

Visão geral

  1. criptografar o disco
    • use dm-crypt e LUKS
  2. seal da chave para um TPM e use as restrições de acesso de acordo com o conhecido PCR set.
  3. use inicialização segura
    • Intel TXT e TBoot são capazes de inicializar com segurança um kernel Linux. Você tem que verificar se a sua CPU e chipset suportam TXT.

Segurança

  • Sem inicialização segura, a única maneira de impedir que o TPM libere a chave para todos é usar uma senha - o que não é viável se uma operação autônoma for necessária.

  • O disco só pode ser descriptografado na máquina com o TPM em particular.

  • A chave só é liberada após uma inicialização segura. Assim, somente o software aprovado por você pode acessar o disco. No entanto, você deve criar uma estratégia de atualização adequada para poder atualizar o sistema. (Se as atualizações são uma preocupação)

  • O TPM pode ser enganado por ataques de hardware de baixo custo (< 100 €) . Isso requer algumas habilidades, mas é totalmente viável.

  • A chave ainda pode ser obtida removendo a RAM e lendo-a usando um dispositivo especial. Mas será apagado durante uma redefinição de formato pela Intel TXT.

  • Os backups são sempre um problema. Se é fácil acessar os dados preciosos nos backups, toda a proteção da sua plataforma não vale nada. Se você armazenar o backup no mesmo sistema, não é um backup.

  • Comportamento em tempo de execução! Se o seu cliente puder obter acesso no sistema em execução (SSH, HTTP, ...), o disco será montado e todos os dados acessíveis.

Links

Alguns anos atrás, um projeto de pesquisa de protótipo foi lançado, e você pode encontrar algumas informações lá também: acTvSM da IAIK Plataforma

    
por 05.02.2015 / 15:10