quarta-feira, 15 de abril de 2009

Frag_Find

Recentemente, Simson Garfinkel, um dos papas da Forense Computacional mundial anunciou mais uma ferramenta que será de extrema utilidade para peritos e investigadores: o frag_find.

O conceito desse software, em si, é bastante simples. Ele recebe como parâmetros uma imagem forense e um arquivo. Baseado no tamanho de cluster da imagem, ele quebra o arquivo em pedaços do mesmo tamanho, calcula hashs de cada pedaço e por fim sai a procura desses hashs pela imagem. Para fazê-lo, ele usa um algoritmo de busca em conjuntos conhecido como filtro de Bloom.

A utilidade maior e imediata dessa ferramenta é determinar se um arquivo esteve (ou está) em uma imagem. Quando um arquivo é apagado, algumas situações distintas podem ocorrer:

- Ele pode estar completamente intacto, incluindo todas as suas entradas de metadados;
- Ele pode estar completamente intacto, mas algumas de suas entradas na camada de metadados do sistema de arquivos pode ter sido sobreposta;
- Ele pode estar órfão;
- Ele pode estar com partes de seus clusters sobrepostos;
- Ele pode já ter sido completamente sobreposto.

Com exceção da última situação, e que em discos grandes é a que tem a menor probabilidade de ocorrer, o frag_find pode ajudar em todas as demais. Obviamente que as primeiras situações é facilmente tratada por softwares que recompõem os metadados e refazem as ligações entre os dados, recuperando os arquivos. No entanto, isso já não é completamente possível em algumas situações, fora que alguns sistemas de arquivos eliminam informações importantes dos metadados quando um arquivo é apagado (ext3, por exemplo), tornando a recuperação de um arquivo uma tarefa MUITO complicada. No nosso caso, o objetivo não é recuperar o arquivo (até porque temos cópia dele, certo ?), mas sim determinar se ele está ou esteve na mídia.

Imagine um caso onde uma investigação conduziu a uma suspeita de que um indivíduo está mantendo conteúdo impróprio em sua máquina. Temos alguns desses conteúdos impróprios como amostragem, já que podem ter sido publicados por ele anonimamente em um fórum qualquer. O suspeito, sabendo que tem "culpa no cartório", apaga o conteúdo logo após o envio. Mesmo com uma alta frequência desse tipo de operação, o frag_find pode registrar e encontrar pedaços do arquivo procurado, indicando assim a existência prévia dele.

Outro exemplo: Há uma suspeita de que um funcionário descontente tenha desviado informações internas para um concorrente usando um pendrive. Ao vasculhar o pendrive, nada é encontrado, pois o tal funcionário já apagou o conteúdo e logo em seguida gravou outras coisas sem importância. Um conjunto dos arquivos suspeitos de terem sido copiados pode ser usado pelo frag_find para determinar se eles estiveram presentes no pendrive.

Alguém o utiliza ou já o utilizou e gostaria de compartilhar a experiência ?

Até o próximo post !

Um comentário:

V7 disse...

Gostei muito!!!! Ótimo blog!