24 de mar. de 2010

Destruindo arquivos e sistemas de arquivos de forma segura

Destruindo arquivos/partições de forma mais segura.
Esta seção tem a intenção de conscientizar o administrador do uso devido de técnicas para garantir que dados sensíveis sejam apagados de forma segura em seu sistema.
Quando um arquivo é apagado, apenas a entrada na tabela de inodes é mexida, e ele pode ainda ser recuperado com o debugfs e um pouco de paciência e engenharia. O mesmo acontece com as partições, que podem ser recuperadas com facilidade (isto é explicado no nível Intermediário do guia). Esta recuperação é proporcionada pelas regras de funcionamento do sistema de arquivos e do esquema de particionamento, ou seja, são permitidas pelo SO.
Vou um pouco mais além: O disco rígido é uma mídia magnética e opera de forma mecânica para ler/gravar dados. Quando um arquivo é apagado, seja por qualquer motivo, ainda é possível recupera-lo. O que permite isto é porque o HD nem sempre tem a precisão de gravar exatamente no mesmo lugar (pois a cabeça é movida mecanicamente), gravando em trilhas microscópicamente vizinhas a anterior. Então a imagem do arquivo que foi apagada continua lá. Segundo ouvi falar, a NASA possui recursos para recuperar até 60 regravações posteriores no disco. É claro que isto pode ocorrer em pouco tempo, dependendo do tamanho de sua partição e se esta for uma /var/spool em um servidor de e-mails :-)
Baseado nesta teoria, você poderá apagar os dados de forma destrutiva usando o programa shred, que regrava o arquivo repetidamente com dados aleatórios. Sua sintaxe é a seguinte:
shred -n 70 -v -u arquivo
Isto faz com que ele regrava o conteúdo do arquivo 70 vezes com dados aleatórios. O -u trunca e remove o arquivo após concluído.
Note que o uso de dados aleatórios serve para destruir as possibilidades de uma recuperação simples, este é o motivo de se recomendar sempre o uso de /dev/urandom ao invés de /dev/zero para destruição de arquivos.
OBS1: Saiba exatamente o que está fazendo pois estes procedimentos servem para dificultar ao máximo a recuperação de dados.
OBS2: Caso esteja usando um sistema de arquivos criptografado, estes procedimentos são praticamente desnecessários (dependendo do nível de segurança e algorítmos que você utiliza).
Texo extraído do Guia Foca/Linux http://focalinux.cipsga.org.br/

Nenhum comentário:

Postar um comentário