Recuperação de arquivos sem assinaturas (números mágicos)

Recuperação de arquivos sem assinaturas (números mágicos)

É possível recuperar um arquivo de uma imagem de disco (imagem dd) se o cabeçalho/rodapé do arquivo e a assinatura foram alterados/modificados ou removidos?

Quero dizer, por exemplo, se a assinatura da imagem bitmap (0x42 0x4d) ou mesmo os primeiros 30 bytes foram removidos ou alterados?

Se não, qual é a forma alternativa de recuperar esse arquivo não baseado na assinatura do arquivo? Se for possível, como isso é feito?

Responder1

Você pode analisar a estrutura residual do sistema de arquivos.

Por exemplo, oa família FAT de sistemas de arquivosindica que um arquivo foi excluído substituindo o primeiro byte do nome do arquivo em uma entrada de diretório com o valor de byte 0x3F. O restante dos metadados (incluindo a maior parte do nome do arquivo) ainda estará lá imediatamente após a exclusão, portanto, um programa que acessa o disco diretamente, em vez de através do sistema operacional, pode encontrar facilmente o arquivo, que é como funciona o comando "undelete" do DOS. .

Outros sistemas de arquivos são semelhantes, embora geralmente haja menos informações disponíveis - a família FAT é especialmente fácil de recuperar arquivos.

Responder2

Você poderia se tivesse alguma ideia do que procurar e onde procurar. Um bitmap (descompactado) possui propriedades estatísticas específicas e você poderá reconstruí-lo.

Saber de antemão um intervalo provável para a largura da imagem seria, por exemplo, imensamente benéfico. Conhecer sua cromaticidade aproximada também ajudaria.

O verdadeiro problema provavelmente será que o próprio arquivo pode ser dividido em setores não contíguos e as informações necessárias para reuni-lo novamente também podem ter sido apagadas. Um bitmap pequeno o suficiente para caber em um único cluster de sistema de arquivos teria as melhores chances.

Outra possibilidade muito real a ser considerada é que o que quer que tenha apagado os primeiros bytes também apagou os restantes, ou uma parte suficientemente significativa deles, tornando a recuperação inútil, se possível.

Para tentar uma recuperação de um bitmap DIB não compactado, você procuraria sequências de bytes com a propriedade de que os valores variam em trigêmeos (ou seja, dada uma sequência de N bytes, a correlação entre pixels obtidos com o módulo de índice três é significativamente maior do que com qualquer outro índice não múltiplo de três). Em seguida, você verificaria se existe uma correlação semelhante com um índice mais alto, que é a largura da linha arredondada para o múltiplo mais próximo de quatro. Mais análises são necessárias para determinar o início/parada da linha.

Sem saber mais sobre o caso específico (sistema de arquivos, formato de bitmap real usado, tamanho do bitmap,como foi excluído/substituído, dd tamanho da imagem, motivo da operação), não poderia dar mais do que um "talvez" quanto às chances de recuperação.

informação relacionada