O que “type nul> somefile” faz para “somefile” no Windows?

11

Especificamente, type nul > somefilesubstitui o arquivo inteiro no disco? Vi um site de script em lotes recomendar a geração de um script FTP em tempo real e, em seguida, "apagá-lo" com segurança com o comando no título. Existe algum mérito nisso?

nós
fonte

Respostas:

9

O que “type nul> somefile” faz para “somefile” no Windows?

  1. Primeiro, somefileé aberto para gravação - isso automaticamente faz com que o arquivo seja truncado para 0 bytes. Os dados ainda permanecem no disco, apenas marcados como "livres" no bitmap

  2. Em seguida, o conteúdo de nulé gravado em somefile- nesse caso, exatamente zero bytes, pois você não pode ler nada nul. Os dados antigos não são substituídos.

  3. O arquivo está fechado.

Vi um site de script em lotes recomendar a geração de um script FTP em tempo real e, em seguida, "com segurança", apagando-o com o comando no título. Existe algum mérito nisso?

Não é mais "seguro" do que del somefile. Nem sequer remove os dados do disco.

Para apagar um arquivo com segurança, use um utilitário de limpeza como sdelete ou Eraser . No entanto, um script FTP realmente vale a pena limpar com segurança?

user1686
fonte
1
"Um script FTP realmente vale a pena limpar com segurança" - Bem, ele expõe uma senha em texto sem formatação em uma máquina remota.
wes
2
@ wes: Se você não pode garantir a segurança física e do sistema operacional da máquina para impedir a recuperação do referido script, também não pode garantir que o tráfego FTP não esteja sendo detectado ... Mas algumas sugestões. Alterne para um protocolo mais seguro - SFTP ou pelo menos FTP / TLS. Além disso, crie um diretório separado para o arquivo que contém a senha (o script ou o arquivo de configuração do cliente) e ative a criptografia EFS para ele. Todos os novos arquivos dentro seriam criptografados automaticamente no nível do sistema operacional. Ambos os protocolos também oferecem suporte à autenticação de chave pública.
usar o seguinte comando
E observe que nos SSDs todas as apostas estão desativadas; Atualmente, você simplesmente não pode apagar esses bits, pois os bits reais no dispositivo são dissociados por pelo menos uma camada de abstração do sistema operacional.
Joey
Portanto, a única solução é não armazenar credenciais de texto sem formatação no disco em primeiro lugar.
user1686
Existe alguma maneira de recuperar esse arquivo / dados originais que foram atualizados com o tipo nul> filename?
Isaiah4110
2

Ele 'pode' sobrescrever o arquivo com zeros, mas mesmo se o fizer, dificilmente será uma exclusão segura. Você seria melhor usar o SDelete para isso, se puder.

Christi
fonte
1

A exclusão de um arquivo não impedirá a exclusão de utilitários de terceiros, mas você pode transformar qualquer arquivo em um arquivo de zero byte para destruir a cadeia de alocação de arquivos da seguinte forma:

TIPO nul> C: \ examples \ MyFile.txt

DEL C: \ exemplos \ MyFile.txt

Origem na metade da página

Moab
fonte
Como isso difere de apenas DELcriar o arquivo? Em ambos os casos, o sistema operacional substituirá esse espaço no disco, sim?
wes
1
Eventualmente, sim, mas quando, no próximo ano? Não há como saber quando.
Moab
O que quero dizer é determinar quais efeitos imediatos / benéficos "destruir a cadeia de alocação de arquivos" têm em comparação com simplesmente excluir o arquivo.
wes
Destruição imediata dos dados (arquivo), para que você não possa usar o software para recuperá-los da mesma maneira que pode quando você os exclui, pelo menos é o que eu penso.
Moab