terça-feira, 19 de abril de 2016

Shred :: Apagando arquivos e discos com segurança no Linux


 O Shred é um utilitário muito bacana dos sistemas GNU/Linux que te permite excluir arquivos, pastas e partições com muito mais segurança. Ele sobrescreve os dados repetidamente, de modo que a recuperação dos mesmos é exponencialmente dificultada, mesmo utilizando tecnologias específicas pra isso.
 Eu consigo tenho o costume de levar comigo o meu certificado da Associação Internacional de Crianças Paranoicas, e tenho o lema de que segurança básica nunca é demais quando se trata de dados pessoais e empresariais, e o shred, que já é nativo de muitas distribuições Linux, facilita a exclusão mais segura de fotos, vídeos, arquivos e até mesmo dados de partições, sendo que suas iterações podem ser customizadas para realizar várias sobrescritas com dados aleatórios no local do arquivo.

Sua utilização é bem simples, e pode ser facilmente entendida pelo helper do pacote.
 matheus@fidelis:~$ shred --help  
 Usage: shred [OPTION]... FILE...  
 Overwrite the specified FILE(s) repeatedly, in order to make it harder  
 for even very expensive hardware probing to recover the data.  
   
 If FILE is -, shred standard output.  
   
 Mandatory arguments to long options are mandatory for short options too.  
  -f, --force  change permissions to allow writing if necessary  
  -n, --iterations=N overwrite N times instead of the default (3)  
    --random-source=FILE get random bytes from FILE  
  -s, --size=N  shred this many bytes (suffixes like K, M, G accepted)  
  -u       truncate and remove file after overwriting  
    --remove[=HOW] like -u but give control on HOW to delete; See below  
  -v, --verbose show progress  
  -x, --exact  do not round file sizes up to the next full block;  
           this is the default for non-regular files  
  -z, --zero   add a final overwrite with zeros to hide shredding  
    --help   display this help and exit  
    --version output version information and exit  
   

Utilização básica:

 # shred nomedoarquivo.extensao -u  

Utilização no modo verbose:

Para ter uma noção maior do que o shred está fazendo, podemos utilizar o verbose. 
 # shred -v -u documento.odt  
 matheus@fidelis:~$ shred -v -u Itil.odt   
 shred: Itil.odt: pass 1/3 (random)...  
 shred: Itil.odt: pass 2/3 (random)...  
 shred: Itil.odt: pass 3/3 (random)...  
 shred: Itil.odt: removing  
 shred: Itil.odt: renamed to 00000000  
 shred: 00000000: renamed to 0000000  
 shred: 0000000: renamed to 000000  
 shred: 000000: renamed to 00000  
 shred: 00000: renamed to 0000  
 shred: 0000: renamed to 000  
 shred: 000: renamed to 00  
 shred: 00: renamed to 0  
 shred: Itil.odt: removed  
   


Especificando o número sobrescritas o arquivo (Default: 3):

Por default, o Shred sobrescreve o espaço do arquivo com dados aleatórios 3 vezes, porém é possível especificar com o parâmetro -n o numero de iterações que será realizada naquele espaço alocado na memória. 
 # shred -n 10 -v -u teste.txt   

Apenas destruindo o conteúdo do arquivo:

É possível somente embaralhar o conteúdo do arquivo. Esse caso é meio inútil, mas de qualquer forma fica o exemplo pra alguma situação.
 # shred teste.odt  





SOBRE O AUTOR

Matheus Fidelis

http://msfidelis.github.io/

Power Ranger, Piloto de Helicópteros e Astronauta da NASA. Desenvolvedor Web PHP com foco em Backend e POO, Linux SysAdmin DevOps e Entusiasta Python. Criou esse site pra contribuir com a comunidade com coisas que aprende dentro de um setor maluco de TI :)

1 comentários:

  1. Algumas observações:

    CUIDADO: Note que shred confia em uma hipótese muito importante:
    que o sistema de arquivos sobrescreve os dados no lugar. Esta é a maneira
    tradicional de se fazer, mas projetos modernos de sistemas de arquivos não
    satisfazem essa hipótese. Os exemplos a seguir são de sistemas de arquivos aos
    quais shred não faz efeito ou não tem eficácia garantida em todos os modos
    do sistema de arquivos:

    * sistemas de arquivos em diário ou estruturado em registros, como os
    fornecidos com AIX e Solaris (e JFS, ReiserFS, XFS, Ext3, etc.)

    * sistemas de arquivos que escrevem dados redundantes e continuam mesmo se
    ocorrerem erros de escrita, tais como os baseados em RAID

    * sistemas de arquivo que fazem "snapshots", tal como o servidor Network
    Appliance's NFS

    * sistemas de arquivos que fazem cache em locais temporários, como os clientes
    de NFS versão 3.

    * sistemas de arquivos comprimidos

    ResponderExcluir

 
Nanoshots | Open Source Security, Linux e Tutoriais © 2015 - Designed by Templateism.com