Gravar disco antes da criptografia

1

Vou criar o lvm criptografado no meu disco. Como mecanismo de criptografia, escolho dmcrypt com LUKS.

Esta é a minha pergunta - devo substituir (por motivos de segurança) todo o disco antes de criar um contêiner criptografado ou substituir o contêiner já criptografado (há algumas informações em FAQ cryptsetup - passo 6 ) ou ambos? Isso importa?

    
por Mateusz Jagiełło 11.02.2013 / 13:06

1 resposta

5

Se você não sobrescrever o conteúdo anterior do disco, qualquer informação antiga permanecerá em um formato legível (somente software) até que seja sobrescrita, o que pode ser muito longo tempo (beirando para sempre).

Se você fizer substituir o conteúdo anterior do disco com zeros antes de criar as estruturas de dados LUKS no disco, você removeu a possibilidade de ler dados antigos o disco (será uma tarefa decididamente não trivial usando software, mas pode ser possível com hardware especializado, muito tempo e muito dinheiro), mas como as chances de qualquer tamanho de criptografia de dados para todos os zeros é insignificante, é trivialmente fácil determinar quais partes do disco contêm dados criptografados reais. Assim, um adversário determinado pode se concentrar nas partes do disco que realmente contêm dados.

Se você fizer sobrescrever o conteúdo anterior do disco com aleatório dados antes de criar as estruturas de dados LUKS no disco, ele será É muito difícil determinar quais áreas do disco contêm dados reais e quais são, simplesmente, ruído, porque elas parecerão basicamente as mesmas. (Sem a chave, os dados corretamente criptografados são indistinguíveis do ruído.) Um invasor pode ser capaz de informar que há um contêiner de dados LUKS devido a suas estruturas de dados inerentes, mas não saberá quais partes do disco são vale a pena atacar criptograficamente.

Se você fizer preencher o contêiner criptografado com zeros ou dados aleatórios, qualquer coisa fora desse contêiner ainda conterá os dados anteriores e estará suscetível aos mesmos riscos, como se você não tivesse sobrescrito o conteúdo do disco. Com um contêiner criptografado cobrindo todo o disco, essa será uma quantidade de dados trivial, mas ainda não-zero.

Qual deles é apropriado para você é uma questão de análise de risco. Qualquer sobregravação demora um bom tempo, mas a diferença de tempo entre sobrescrever com zeros e com dados pseudo-aleatórios é relativamente pequena em comparação.

Sobrescrever o disco tem um benefício adicional: ele exercita toda a área física do disco, permitindo que a unidade identifique e realoque áreas danificadas antes que qualquer coisa importante seja gravada nela. Como com dados criptografados (como compactados), qualquer erro de bit único vai se multiplicar rapidamente, o benefício potencial disso é não-trivial e tem um custo relativamente modesto.

Sobrescrevo todo o disco com dados aleatórios, como é óbvio, antes inicializando-o como um dispositivo LUKS, porque sinto que os benefícios dessa abordagem superam o custo (com o custo sendo principalmente de tempo primeiro uso da nova unidade).

Se você sobrescrever todo o disco (usando algo como dd if=/dev/urandom of=/dev/sdb bs=1M - aviso , não executará esse comando a menos que você saiba exatamente por que está fazendo isso!) , então você não precisa fazer uma sobrescrita separada da partição LUKS criptografada, porque ela já é bastante aleatória.

E, é claro, a obrigatória referência XKCD: drogue-o e acerte-o com essa chave de US $ 5 até que ele nos informe a senha. Mas Tenho certeza de que você está ciente de que nem a criptografia completa do disco é uma panacéia.

    
por 11.02.2013 / 13:29