Carregadores de boot do Linux suportando criptografia de disco completo?

26

Há algum carregador de boot do Linux suportando criptografia de disco completo (a TrueCrypt ). Eu sei que houve trabalho para adicionar suporte de criptografia ao GRUB2, mas isso não parece estar pronto ainda. Alguma outra opção?

(Observe que estou realmente me referindo à criptografia total de disco aqui, incluindo /boot )

A maioria das respostas descrevem uma configuração em que /boot não é criptografado e alguns deles tentam explicar por que um /boot não criptografado deve ser OK.

Sem entrar em uma discussão sobre porque eu realmente preciso / boot para ser criptografado, aqui está um artigo que descreve exatamente o que eu preciso, com base em uma versão modificada do GRUB2:

O problema com isso é que essas modificações aparentemente não são suportadas na base de código atual do GRUB2 (ou talvez eu esteja negligenciando algo).

    
por Grodriguez 14.11.2010 / 20:57

8 respostas

17

Eu acho que a versão atual do GRUB2 não tem suporte para carregar e descriptografar partições LUKS por si só (ele contém algumas cifras, mas eu acho que elas são usadas apenas para seu suporte a senhas). Não consigo verificar o ramo de desenvolvimento experimental, mas há algumas dicas na página do GRUB de que algum trabalho está planejado para implementar o que você deseja fazer.

Atualização (2015) : a versão mais recente do GRUB2 (2.00) já inclui código para acessar as partições criptografadas LUKS e GELI. (O link xercestch.com do OP forneceu as primeiras correções para isso, mas agora elas estão integradas na última versão).

No entanto, se você estiver tentando criptografar todo o disco por motivos de segurança, observe que um carregador de boot não criptografado (como TrueCrypt, BitLocker ou um GRUB modificado) não oferece mais proteção do que uma partição /boot não criptografada (conforme observado por JV em um comentário acima). Qualquer pessoa com acesso físico ao computador pode facilmente substituí-lo por uma versão personalizada. Isso é mencionado no artigo em xercestech.com que você vinculou:

To be clear, this does not in any way make your system less vulnerable to offline attack, if an attacker were to replace your bootloader with their own, or redirect the boot process to boot their own code, your system can still be compromised.

Observe que todos os produtos baseados em software para criptografia de disco completo têm essa fraqueza, independentemente de usarem um carregador de boot não criptografado ou uma partição de inicialização / pré-inicialização não criptografada. Mesmo produtos com suporte para chips TPM (Trusted Platform Module), como o BitLocker, podem ser enraizados sem modificar o hardware.

Uma abordagem melhor seria:

  1. descriptografar no nível do BIOS (na placa-mãe ou no adaptador de disco ou hardware externo [cartão inteligente], com ou sem um chip TPM) ou
  2. carregue o código PBA (autorização de pré-inicialização) (a partição /boot neste caso) em um dispositivo removível (como um cartão inteligente ou um pendrive).

Para fazer isso da segunda maneira, você pode verificar o projeto Linux Full Disk Encryption (LFDE) em: link que fornece uma versão posterior script para mover a partição /boot para uma unidade USB externa, criptografando a chave com GPG e armazenando-a no USB também. Dessa forma, a parte mais fraca do caminho de inicialização (a partição /boot não criptografada) está sempre com você (você será o único com acesso físico ao código de descriptografia E à chave). ( Nota : este site foi perdido e o blog do autor também desapareceu, mas você pode encontrar os arquivos antigos em link apenas note que o último desenvolvimento foi feito há 6 anos). Como alternativa mais leve, você pode instalar a partição de inicialização não criptografada em um dispositivo USB durante a instalação do sistema operacional.

Atenciosamente, MV

    
por 18.05.2011 / 16:15
4

Faça o seu disco RAM inicial e a pasta / boot não use criptografia.

Isso trará um kernel "mínimo", com drivers e suporte para mudar para o sistema de arquivos raiz "real" que é criptografado.

Antes de afirmar que "isso é um hack" - lembre-se - a maioria (se não todas) as distribuições do Linux são inicializadas dessa maneira hoje por padrão. Isso permite explicitamente que seu sistema inicialize e carregue seu FS raiz, usando módulos que ele precisa para carregar de um sistema de arquivos. (Tipo de um problema de galinha e ovo). Como, por exemplo, se o seu sistema de arquivos raiz estava em um volume RAID de hardware e você precisava carregá-lo antes de montar seu FS raiz.

    
por 15.11.2010 / 04:17
3

Eu revisei o link que você postou - embora não haja uma partição de inicialização, ainda há um gerenciador de inicialização não criptografado no disco rígido que pode ser acessado e comprometido usando um ataque maligno de limpeza. Eu estive procurando por uma configuração semelhante, na qual não há dados não criptografados no disco rígido, mas até agora eu só criei um gerenciador de inicialização de uma unidade removível.

    
por 28.04.2011 / 09:51
1

Eu acredito que a maioria deles, o que você precisa é de instruções sobre como instalar o sistema operacional com HD criptografado em primeiro lugar.

O Ubuntu tem uma boa página com instruções sobre como fazer partições criptografadas, LMVPs, pastas, etc., apenas google your distros version of isso ...

    
por 14.11.2010 / 21:05
0

Não, acho que não há.

Você realmente precisa criptografar / inicializar? Eu suspeito que não. O restante do sistema de arquivos pode ser criptografado pelo software normal do Linux, que reside em um initramfs em / boot e avisa o usuário de acordo.

    
por 15.11.2010 / 10:49
0

Você parece estar pedindo algo que é impossível fazer e comparando-o a uma solução do Windows que oculta a implementação de você , mas na realidade está fazendo a mesma coisa que o Linux está fazendo.

A solução mais próxima que eu posso pensar é usar um disco rígido que implementa uma senha de segurança e criptografia. Alguns dos laptops Thinkpad usam essas soluções de hardware.

    
por 15.11.2010 / 20:35
0

A resposta é sugerida pelo artigo. "Isso agora é possível com extensões para o carregador de inicialização GRUB2 da próxima geração, que foi corrigido para suportar não apenas" e "nós desejamos instalar nossa nova imagem do grub2 habilitada luks mais tarde" e "Agora nós compilamos a fonte GRUB2 habilitada para LUKS. " Parece que há um patch ou extensão que você precisa obter e incluir com o GRUB2 ou uma fonte do GRUB2 bifurcada.

    
por 27.01.2012 / 04:11
0

A versão 2.02 ~ beta3 do Grub2 pode fazer muitas coisas que a versão 2.02 ~ beta2 do Grub2 não pode fazer, testada por mim:

  1. Inicialize usando o disco Super Grub 2
  2. Digite a tecla 'c' para ir para a linha de comando
  3. Digite os comandos para montar a partição criptografada que eu quero
    • insmod luks
    • cryptomount (hd0, #) // onde # representa a partição criptografada
  4. Digite a frase secreta e digite alguns comandos mais
    • multiboot (crypto0) /grub/i386-pc/core.img
    • inicializar

Isso carregará outro Grub2 que está dentro de uma partição criptografada, um ataque malvado não tem nenhum sentido aqui ... eu estou inicializando de um CD (somente leitura médio), então montando uma partição criptografada (sem a frase secreta como Ousar alguém pode injetar qualquer coisa!), em seguida, arrancar a partir de dentro da partição criptografada e carregar um Grub2 com o seu próprio menu, etc.

Nota: Essa inicialização do Grub 2.02 ~ beta3 (eu uso o Super Grub 2 cd) pode estar em um dispositivo USB, USB HDD, etc.

Atenção: A versão 2.02 ~ beta2 do Grub2 não pode fazer o mesmo, já que alguns BUGs (que parecem estar corrigidos no Grub2 versão 2.02 ~ beta3) relacionados ao comando cryptomount ...

bugs beta2, eu falo, são:

  1. Ele não monta realmente a partição criptografada, portanto, não permite acesso (crypto0) / *
  2. Se houver mais de uma partição criptografada, usar cryptomount -a só solicitará uma frase secreta
  3. Depois de executar o cryptomount uma vez, ele é executado novamente, não faz nada

no beta 3:

  1. Ele realmente monta a partição criptografada e permite que você acesse arquivos através de (crypto0) / * ou (crypto1) / * etc se mais de um montado ao mesmo tempo
  2. Ele solicita cada frase secreta (uma por partição criptografada)
  3. Permite que você o execute quantas vezes precisar, você pode montar um, depois outro, etc.

Nota: Eu não imaginei como desmontá-los, exceto reiniciar ou inicializar outro ou mesmo carregador de inicialização grub2 / other, etc.

Espero que isso ajude a esclarecer as coisas, e esperamos que a versão 2.02 ~ beta3 do Grub2 seja integrada nos LiveCDs, então tudo que pudermos instalá-lo sem precisar compilá-lo por nós mesmos.

P.D .: Com o disco Super Grub 2 eu não consigo ver nenhuma maneira de instalar o Grub2 versão 2.02 ~ beta3 na partição MBR / boot etc.

    
por 12.05.2016 / 13:28