domingo, 21 de dezembro de 2008

What Programs Do

A parte de Análise em Informática Forense pode ser, dentre tantas técnicas, resumida a você poder contar como foi que algo aconteceu. Fazemos isso observando a imagem forense (ou as imagens) das mídias envolvidas e mesmo da memória. Observamos artefatos deixados pelo sistema operacional e pelos diversos programas instalados para poder determinar aspectos do caso e definir a análise.

Trazendo isso para uma análise da cena do crime, sabemos que uma pessoa deixa impressões digitais ao tocar determinados objetos; sabemos que um disparo de arma de fogo deixa resíduos de pólvora. Em um acidente de carro, podemos saber quem estava ao volante percebendo a direção da marca (hematoma) deixado pelo cinto de segurança.

O que isso significa ? Que na prática, nossa atuação e nossa análise será cada vez mais facilitada pelo conhecimento dos artefatos deixados pelo SO e pelos utilitários/aplicativos.

Pois bem. Uma turma da SANS deu um passo importante nessa direção. O projeto, cujo nome é o título desse post, está no blog na SANS e tem por objetivo postar todos os artefatos gerados por um programa qualquer.

O projeto ainda se encontra em fase inicial, e não tenho idéia de como vai ser disponibilizado para consulta, mas imagino dois usos específicos para ele.

1) Você está verificando se um tal programa XYZ foi usado na máquina, e se pergunta quais artefatos e onde procurar. Faz a busca no site do projeto e ... voilá ! Sabe onde procurar cada item para determinar o uso (ou não) do XYZ.

2) Você encontrou uma chave de registry ou um arquivo de log e não tem idéia de que utilitário teria criado o item. Uma rápida busca no site do projeto e imediatamente você fica sabendo que o tal item misterioso foi criado pela aplicação XYZ, que não mais existe naquela máquina ...

Fiquem de olho, esse projeto promete ser tão útil quanto o da NSRL, que publica o database com os hashes de programas. Um ponto importante é que estava em voga ampliar esse projeto para fornecer hashes dos arquivos por grupos de 512 bytes, normalmente bate com os setores dos sistemas de arquivos mais comuns. Por que ? Com os hashes, seria possível descobrir que um determinado setor é na verdade o n-ésimo bloco do programa XYZ, e isso facilitaria uma operação de carving onde há fragmentação. Alguém sabe se esse projeto andou ?

Comentários ?

Até o próximo post !

Nenhum comentário: