Como apagar arquivo (s) de maneira segura?

193

Existe uma maneira de garantir que um arquivo excluído não possa ser recuperado?

Como você sabe, excluir um arquivo pressionando shift-del ou usando a lixeira não significa que o arquivo se foi para sempre. Ela reside em algum lugar no computador.

No dia-a-dia, os policiais ou ladrões usam programas de recuperação para revelar nossos dados privados ou qualquer outra coisa.

Eles podem recuperar todos os dados que residem no disco rígido, na RAM e até em USB.

Para nos proteger dessas pessoas, o que devemos fazer? Qual programa deve ser usado?

Observação: não quero uma resposta como primeiro usar um programa de recuperação e apagar esse arquivo com fragmento. Com apenas um programa, quero apagar todos os arquivos não utilizados / excluídos do meu computador.

    
por Braiam 18.08.2011 / 10:22

10 respostas

182

Fragmentar

Esta ferramenta de linha de comando já está instalada a partir dos utilitários principais no Ubuntu para apagar e sobrescrever arquivos individuais com segurança usando o método Gutman .

Retalhamento rápido

shred -vzn 0 /dev/sdc1

apaga partições inteiras sobrescrevendo tudo com 0 s em uma única iteração. Se nenhum aspecto legal exigir outro procedimento, é mais provável que seja seguro excluir com segurança seus dados privados Notas de Palestra Craig Wright em Informática Science, 2008, 5352 , 243-257 .

Fragmentação segura

shred -vzn 3 /dev/sdc1

apaga toda a partição usando 3 iterações com números aleatórios. Além disso (opção -z ) isto escreve zeros para esconder o processo de destruição no final. Isso levará 4 vezes mais do que o método rápido.

OBSERVAÇÃO: Ao fragmentar uma partição, sobrescreveremos essa partição com 0 ou números aleatórios. Portanto, elimina eficientemente tudo, incluindo os caches do sistema de arquivos nessa partição para sempre. Isso também pode ser usado para remover restos indesejados de arquivos excluídos. Os arquivos que queremos manter precisarão ser salvos antes da destruição.

Limpe

Mais opções , e a possibilidade de apagar diretórios além de arquivos únicos, são oferecidos por este utilitário de linha de comando.

wipe filename
wipe -r dirname

Notas adicionais sobre sistemas de arquivos de registro no diário e SSDs:

  • Por favor, leia as anotações nas manpages relacionadas sobre questões de segurança decorrentes de backups ainda recuperáveis em sistemas de arquivos de registro no diário ao apagar arquivos únicos. A substituição de partições inteiras, em vez de arquivos únicos, apaga efetivamente todos os dados, mesmo quando se usa um sistema de arquivos de registro no diário.

  • Apagar dados em um disco de estado sólido (SSD) pode, se for feito, sobrescrever a unidade inteira (não apenas partições simples) com várias iterações. Alguns SSDs podem ter um recurso embutido para apagar dados, mas isso pode nem sempre ser eficiente (consulte este link do comentário). No momento, não há recomendações gerais sobre os processos de limpeza ou o número de iterações de apagamento necessárias para remover com segurança todos os remanescentes de dados em todos os SSDs disponíveis.

Estas opções podem ser adicionadas no menu de contexto do Nautilus e do Thunar.

  • No Thunar, abra "Editar" e depois "Configurar ações personalizadas"

Adicione (o sinal de mais)

Nome "Arquivo Shred"

Descrição do que você quiser

Ação "shred -u% f"

Similarmente para wipe .

Selecione "Condições de aparência" e selecione "Outros arquivos"

    
por Takkat 18.08.2011 / 10:53
38

Não há um comando que você possa executar, o que facilitará a limpeza de todos os arquivos já excluídos. No entanto, existem várias coisas que você pode fazer para reduzir sua vulnerabilidade a esse tipo de ataque no futuro.

Como outros já disseram, usando ferramentas como fragmentos ou srm permite que você apague um arquivo específico, sobrescrevendo-o, em vez de apenas removê-lo do sistema de arquivos. Se você estiver em negrito, poderá substituir o comando rm por shred ou srm para excluir arquivos com segurança no futuro. Isso significa que sempre que você (ou outro programa) tentar excluir algo usando rm , o comando secure delete será executado.

No entanto, se você estiver usando um disco de estado sólido, ou até mesmo alguns discos mecânicos mais novos, o fragmento e outros métodos baseados em sobrescrita podem não ser efetivos, pois o disco não pode realmente escrever onde você está escrevendo ( source ).

Criptografia de discos completos

Uma opção mais conveniente é a criptografia de disco completo. Se você usa o instalador alternativo , o Ubuntu pode automaticamente configurar um disco totalmente criptografado para você, mas você também pode personalizar e definir as configurações por conta própria. Uma vez instalada, a criptografia é quase invisível para você: depois de inserir a senha (certifique-se de escolher uma boa e longa) quando o computador é inicializado, tudo parece e se parece com o Ubuntu normal.

Você também pode criptografar mídia externa, como unidades USB, usando o Utilitário de Disco do Ubuntu. A configuração de um disco externo criptografado é tão simples quanto verificar a caixa "criptografar o sistema de arquivos subjacente" ao formatar o disco. Você pode até armazenar a frase secreta em seu chaveiro (criptografado), para que você não precise inserir a frase toda vez que conectar o disco ao computador.

Se todo o seu disco - e todas as suas mídias removíveis - estiver criptografado, há muito menos com o que se preocupar. Um ladrão ou policial precisaria roubar seu computador enquanto ele estiver ligado (ou dentro de um ou dois minutos depois de desligá-lo se ele estiver muito bom ) para acessar seus dados. Se você hibernar (ao invés de suspender) seu computador quando não estiver em uso, então você deve estar bem seguro.

Se você precisar destruir completamente todos os seus dados, não será necessário fazer um apagamento de Gutmann do seu disco inteiro. Basta sobrescrever o início do disco para destruir os cabeçalhos do volume criptografado. Ao contrário de um sistema de arquivos regular, isso realmente impossibilitará a recuperação dos dados.

Então, como você vai da sua configuração atual para um disco criptografado com segurança? É um grande desafio adaptar um sistema operacional atualmente instalado para usar um disco criptografado. A abordagem mais fácil é fazer backup de todos os seus dados e configurações e, em seguida, reinstalar com um disco criptografado. Ao fazer backup, certifique-se de fazer backup de seus dados em uma unidade externa criptografada, mas não salve a frase secreta no chaveiro.

Depois de ter feito o backup de tudo, você pode querer limpar agressivamente seu disco rígido, para ter certeza de que nenhum de seus dados existentes podem ser recuperados no futuro. Se você estiver usando um SSD, o processo é ainda mais desafiador, portanto, dependendo do quanto você deseja investir no processo, pode valer a pena destruir seu disco atual (a proposta desafiadora ) e começar com uma nova.

Ao reinstalar o sistema operacional, se você ainda não tiver limpado agressivamente o disco, certifique-se de preencher completamente a nova partição criptografada, que substituirá todos os seus dados antigos. Uma vez que você tenha restaurado seu backup, você pode querer limpar agressivamente o início do disco de backup, para destruir o cabeçalho de criptografia, para que ele não possa ser recuperado novamente.

    
por flamsmark 23.08.2011 / 22:30
19

Atualização: Se você ainda não excluiu o arquivo que deseja que não seja recuperável, use a resposta aceita. Se, no entanto, você já apagou o (s) arquivo (s), então este é o melhor método que conheço.

Se eu o ler corretamente, você quer apagar todos os seus arquivos excluídos anteriormente. Aqui está uma maneira simples de fazer isso:

$ dd if=/dev/zero of=/path/to/mounted/partition/tmp_file bs=1M count=999999999999

Deixe que seja executado até reclamar até obter um erro de gravação de disco [sem espaço]. Então apague o arquivo! O que isto faz é apenas preencher o seu disco vazio com 000s, então todos os seus arquivos anteriores são sobrescritos. Certifique-se de excluir o arquivo agora ou você não terá mais nenhum disco. Você pode querer fazer isso algumas vezes, se você é realmente paranóico. Ou, se você quiser escrever aleatoriamente em seu disco, sugiro substituir /dev/zero por /dev/urandom .

No entanto, isso levará muito mais tempo, então eu o executaria durante a noite. Além disso, se você quiser um medidor de progresso, faça isso:

$ free=$( df {PARTITION OR MOUNTPOINT}  |awk '{print $3}'|tail -1 )
$ dd if=/dev/zero bs=1M count=999999999999 | pv -s "$free" > /path/to/mounted/partition/tmp_file

Primeiro você está obtendo seu espaço livre em disco com du, awk e tail, depois usando dd para obter / dev / zero, canalizando para pv que significa "visualizador de pipe", que redireciona tudo para tmp_file Mais uma vez, exclua o arquivo depois. $ rm tmp_file

De qualquer forma, espero que alguém ache isso útil! :)

    
por Matt 25.08.2011 / 15:12
12

Primeiro, exclua arquivos com rm no terminal ou com shift-delete no nautilus. Melhor ainda, use srm , do Secure-Delete ferramentas .

Você pode instalar as ferramentas de exclusão segura assim:

apt-get install secure-delete

Em segundo lugar, use sfill para eliminar o espaço não utilizado no seu disco:

sudo sfill -f <directory>

Isso levará algum tempo, já que está usando técnicas de criptografia para preencher o disco.

Warning : isto está passando por todo o seu sistema de arquivos, e você é o root. Use com cuidado!

Isso criará um arquivo que apagará todos os dados existentes anteriormente. O arquivo será criado em <directory> .

    
por dangonfast 18.08.2011 / 10:34
10

Um programa GUI para isso é BleachBit (também está nas fontes). Versão mais recente (arquivo deb) na página do BleachBit Sourceforge .

Além de excluir arquivos, ele inclui recursos avançados, como destruição de arquivos para evitar a recuperação, limpeza de espaço livre para ocultar rastreamentos de arquivos excluídos por outros aplicativos. p> % bl0ck_qu0te%

O BleachBit tem vários produtos de limpeza avançados:

  • Limpe a memória e troque no Linux
  • Excluir atalhos corrompidos no Linux
  • Exclua o histórico da URL do Firefox sem excluir o arquivo inteiro - com a destruição opcional
  • Encontre lixo amplamente espalhado, como os arquivos Thumbs.db e .DS_Store.
  • Exclua a lista de documentos recentes do OpenOffice.org sem excluir todo o arquivo Common.xcu
  • Substituir espaço livre em disco para ocultar arquivos anteriores
  • Limpe os bancos de dados Firefox, Google Chrome, Liferea, Thunderbird e Yum: reduza arquivos sem remover dados para economizar espaço e melhorar a velocidade
  • Remova cirurgicamente informações privadas dos arquivos de configuração .ini e JSON com a exclusão de todo o arquivo

Para obter detalhes sobre como usar o Bleachbit para excluir arquivos e pastas com segurança específica veja esta resposta .

    
por valadao 25.08.2011 / 01:21
6

Se você quer uma solução que não pode ser frustrada por um indivíduo obcecado patologicamente, então você deve considerar alguma combinação (limitada por recursos monetários) de:

  • desmagnetização - apagando magneticamente o disco rígido
  • desabilitando fisicamente o disco rígido - ou seja, furador industrial
  • banho de ácido < - você não pode obter pedaços de uma pilha de gosma

Essas soluções variam drasticamente em custo & amp; ingenuidade. Alguns:

por M. Tibbits 26.08.2011 / 08:05
3

Eu diria que a solução é uma combinação de várias respostas dadas aqui. Para arquivos e partições já excluídos, ainda em uso, concordo com Matt.

Então, para o futuro, eu sugiro que você comece a usar ferramentas de exclusão segura em vez de simples 'rm'.

Por fim, quando for possível reformatar a partição, a opção de criptografar a partição deve ser considerada. Talvez usando alguma abordagem que ofereça Denegação plausível como na Truecrypt

    
por bitwelder 26.08.2011 / 07:42
2

Para SSDs e outras mídias de armazenamento flash

Os SSDs e muitas outras mídias de armazenamento flash usam uma técnica chamada "wear leveling" que atribui blocos de células de armazenamento não utilizados com base no número de ciclos de gravação anteriores para prolongar o tempo de vida da unidade. Consequentemente, a sobreposição de intervalos de blocos não funciona como um método para apagar o conteúdo de armazenamento com segurança (ou mesmo com eficiência), como acontece com os discos rígidos. Por outro lado, o armazenamento flash permite um apagamento seguro muito mais rápido e eficiente de blocos, intervalos de blocos ou unidades inteiras.

Apagar toda a unidade

% bl0ck_qu0te%

( fonte )

Se a saída do comando na etapa 1 estiver vazia, a unidade não suporta o apagamento seguro, mas ainda poderá suportar o comando TRIM necessário para a seção abaixo.

Apagar uma partição do disco

A blkdiscard(8) 2 pode apagar dispositivos de bloco com segurança se a unidade suportar 1 :

sudo blkdiscard --secure /dev/sdXN

em que /dev/sdXN é o caminho para o nó do dispositivo de bloco referente à unidade ou partição a ser apagada.

1 Se a sua unidade estiver dentro de um invólucro externo com uma conexão USB ou FireWire, o chipset de tradução pode bloquear o suporte de alguns recursos opcionais, como o apagamento seguro e o TRIM, mesmo que a unidade fornecida ofereça suporte. p>

2 Disponível e instalado por padrão desde o Ubuntu Xenial Xerus (16.04).

    
por David Foerster 19.07.2018 / 12:47
1

Eu uso uma imagem de arquivo truecrypt para esses dados essenciais. Não é prático, gratuito, crossplatform e eu não preciso de um disco inteiro nem usar qualquer software extra para "realmente excluir" o arquivo.

Apenas certifique-se de ter uma senha strong e faça backup do arquivo de imagem. Eu mantenho backup em uma nuvem.

    
por Michał Šrajer 23.08.2011 / 22:41
0
  1. A primeira opção é triturar. A resposta anterior em relação ao fragmento está faltando alguns detalhes necessários. Você não vai superar o cache do sistema de arquivos, instantâneos e registro no diário, etc., se você executar o fragmento na partição (como no exemplo de sdc5 ), e os dados permanecerão, muitos potencialmente.

    Para que o shred seja eficaz, especialmente em SSDs modernos, etc, você deve executá-lo no dispositivo e não na partição. Isso seria /dev/sdc ... sem um número no final (número da partição).

    Você precisará fazer isso de um USB ativo se a unidade que deseja limpar for o dispositivo principal do seu computador. Nesse caso, você será melhor adicionar persistência ao USB ao vivo ao criá-lo para que você possa fazer o download de algumas ferramentas extras para fazer o trabalho corretamente também.

    Execute o comando: sudo shred -vfxz /dev/sdc ou sda ou qualquer que seja o nome do dispositivo. Se não tiver certeza do nome, abra Discos ou GParted para identificar seu dispositivo ou execute o comando lsblk no terminal e identifique o nome do seu dispositivo lá.

    Adicionar as letras f e x ao comando é importante como f = forçar permissões e x = tamanho exato dos arquivos. Sem esses dados, você pode perder dados que exigiam permissão para ler ou gravar ou perder dados quando o arquivo é arredondado para o tamanho do bloco.

    Você pode adicionar um número desejado de passagens de gravação adicionando -n (número desejado). Exemplo: sudo shred -vfxz -n 5 /dev/sdc

    Este é o primeiro porto de escala para limpar sua unidade. Pode ajudar a executar ferramentas semelhantes, como shrub, secure-delete e nwipe. Todos eles funcionam da mesma maneira com comandos muito semelhantes e métodos e padrões ligeiramente diferentes. Vá para a página de manual do Linux ou use o Google para se familiarizar rapidamente com o uso dos comandos. Não é provável que você precise de mais do que os passes padrão de 4 tiros, mas se for importante, você pode ir além, pois isso pode ajudar.

  2. Sua RAM pode ter dados. Depois de instalar secure-delete, execute o comando para sdmem. Isso limpará sua memória RAM. No entanto, os primeiros dados que você já preencheu a RAM, além de quaisquer dados que ficaram na RAM por períodos prolongados, podem muito bem ter deixado um traço.

    Ao comprar novas RAM (ou HDs / SSDs), é melhor preencher o disco algumas vezes. Você poderia usar o fragmento, mas o dd provavelmente é melhor aqui. Comando:

    sudo dd if=/dev/urandom of=/dev/ # (insert your device partion name)
    

    Também é melhor com a RAM repetir esse procedimento antes de usar dados confidenciais, se você quiser aumentar sua segurança, e depois limpar os dados confidenciais da RAM o mais rápido possível. É desta vez deixado no lugar que é o maior responsável pela sua capacidade de deixar um rastro.

    A única coisa a fazer é criar uma partição ou instalar sua próxima distro.

  3. Criptografia - As pessoas costumam afirmar isso como um método confiável, mas se você for continuar a usar seu disco rígido ou passá-lo para outra pessoa, essa não é uma opção eficaz. Com relação a problemas legais, não conseguir desbloquear um dispositivo criptografado não é uma opção e pode ser considerado uma culpa ou uma ofensa real em muitos lugares. Pode parar um ladrão, etc. (roubar dados apenas lol).

    Observe também que uma pasta pessoal criptografada é muito diferente e não protege nada de ser fisicamente examinada em seu computador, é essencialmente para segurança online / do sistema e pode ser evitada.

  4. Se descartar o dispositivo - Depois de limpar com o fragmento, em seguida, criptografar com uma senha longa que contenha caracteres especiais como * etc. para quebrar as letras e números da sua senha, use shred novamente, mas você pode especificar apenas o primeiro 10gig da unidade (depende do tamanho, mas este é um número grande e seguro). Exemplo: sudo shred -vfxzs10G /dev/sdc Isso é mais rápido e tão eficaz quanto destruir todo o disco nessas circunstâncias.

    Então, para ter certeza, pegue o disco rígido e a memória RAM, a RAM é fácil de quebrar e destruir, os SSDs também são. Você pode ser criativo e liberar essa energia paranóica enquanto os quebra.

por Jay 31.12.2017 / 12:26