Forense caso 00
by (C) João Eriberto Mota Filho <eriberto (a) eriberto pro br>
Caso para estudo, ligado diretamente ao artigo perícia forense computacional, existente neste wiki.
Última atualização: veja o rodapé desta página.
Perícia forense computacional é a arte de investigar meios de armazenamento digital, como HDs, memórias, celulares etc. Deveremos sempre tomar todo o cuidado para preservarmos as informações, o que inclui não alterar datas e horas de arquivos e diretórios por acessos de forma errada. Outro fato é que arquivos apagados podem ser recuperados, mesmo depois de uma formatação.
O objetivo deste caso básico será conduzir o iniciante na descoberta de fatos, por meio de perguntas diretas sobre uma imagem de pendrive de 1 GB disponibilizada. Para facilitar a tarefa, inicialmente, foram escritos caracteres "0" sobre toda a superfície do referido pendrive. Ainda, a imagem foi comprimida com bzip2 para diminuir a quantidade de dados para download.
Responda às perguntas a seguir, analisando a imagem de pendrive (5.7 MB comprimidos, 980 MB descomprimidos) disponibilizada.
O hash MD5 da imagem comprimida é a093f2e85a7674ae873b555f31f6def5.
Caso necessite, tome o cuidado de montar a imagem como read-only. Isso poderá ser feito com o comando:
# mount -o loop,ro caso_00.dd /mnt
Algumas sugestões de comandos e programas que poderão ser utilizados (incluindo a suíte The Sleuth Kit - TSK):
- md5sum, sha1sum, sha224sum, sha256sum, sha384sum e sha512sum.
- evince (Gnome)
- file
- find
- fls (TSK)
- foremost
- fsstat (TSK)
- hexedit
- icat (TSK)
- istat (TSK)
- ls (-lua e -lta)
- mactime (TSK)
- metacam
- okular (KDE)
- ooffice (BrOffice.Org)
- pdfinfo (poppler-utils)
- pornview
- sorter (TSK)
- stat
- strings (binutils)
Perguntas básicas:
- Defina Unix Epoch.
- Inicialmente, calcule os hashes SHA1, SHA224, SHA256, SHA384 e SHA512 da imagem descomprimida, colocando os resultados dentro de um arquivo.
- Qual filesystem foi utilizado no pendrive? (file / hexedit / fsstat)
- Quantos setores possui o pendrive? (file / fsstat)
- Quantos arquivos estão acessíveis para usuários? (fls + grep -v / find + wc -l no ponto de montagem)
- Quais tipos de arquivos estão acessíveis para usuários? (sorter / find + egrep + sort)
- Qual é a data da criação ou última modificação do arquivo "Literary Review.doc" no filesystem? (fls ou find para encontrar o arquivo) (ls / stat / fls + istat)
- Qual é o inode do arquivo "Literary Review.doc" dentro da imagem original? (fls)
- Qual é o inode do arquivo "Literary Review.doc" no ponto de montagem, dentro do filesystem do seu HD? (ls / stat)
- Qual é a data do último acesso ao arquivo "Literary Review.doc" no filesystem? (fls ou find para encontrar o arquivo) (ls / stat / fls + istat)
- Quais são as datas de criação e última modificação do conteúdo arquivo "Literary Review.doc"? (dados do próprio arquivo) (ooffice)*
- Quem é o criador do conteúdo do arquivo "Fernando_Porcella.xls"? (dados do próprio arquivo) (ooffice / file)
- Quem foi a última pessoa que modificou conteúdo do arquivo "Fernando_Porcella.xls"? (dados do próprio arquivo) (ooffice / file)
- Quando se deu a última impressão do conteúdo do arquivo "Fernando_Porcella.xls"? (dados do próprio arquivo) (ooffice)*
- Qual foi a data da última modificação do conteúdo da foto "paola-carvalho.jpg"? (dados do próprio arquivo) (strings / strings + grep / hexedit)
- Qual foi o software utilizado para fazer a modificação do conteúdo da foto "paola-carvalho.jpg"? (dados do próprio arquivo) (strings / strings + grep / hexedit)
- Qual foi o software utilizado para produzir o documento "sec-us-networkbasedfirewallservice.pdf"? (evince / okular / strings / strings + grep / hexedit)
- Qual foi a data de modificação do conteúdo do documento "1632-1640.pdf"? (dados do próprio arquivo) (evince / okular / strings / strings + grep / hexedit)
- Quem criou o conteúdo do documento "1632-1640.pdf"? (dados do próprio arquivo) (evince / okular / strings / strings + grep / hexedit)
- Pode-se afirmar que todas as datas levantadas nas perguntas anteriores são verídicas? Por quê?
'''*''' O comando file poderia ser utilizado. No entanto, por bugs, os resultados mostrados nas datas são inconsistentes (bug #631440 no Debian). Ainda, em se tratando de documentos do tipo XML (docx, xlsx etc), o OpenOffice (agora LibreOffice) considera todos os horários como UTC. Em qualquer caso, o OpenOffice descarta os segundos.
Na imagem do pendrive, existem arquivos apagados. Um desses arquivos é a foto de um animal. Com base nisso, responda:
- Qual é o referido animal? (fls + istat + icat)
- Qual foi a provável data da última modificação do conteúdo da foto? (strings + grep)
- Em relação às duas fotos, qual a diferença entre a utilização de flash?
Dados EXIF
Qual máquina fotográfica digital, incluindo o modelo, foi utilizada para produzir a foto disponível em http://bit.ly/cD7loL. Caso a foto não esteja mais disponível, utilize a URL (outra imagem) http://bit.ly/cfeiN8. (metacam / pornview)
Timeline
Utilizando os comandos fls e mactime, crie uma linha do tempo de todo o conteúdo da imagem.