terça-feira, 1 de setembro de 2009

WTF e Timestamps

WTF não é um termo técnico, mas deve ser a expressão mais usada de 8 entre 10 Peritos e Investigadores em Forense Computacional. Li esse termo hoje em um artigo muito bom, que traduz a essência do que é ser Perito: Analisar bem os vestígios e saber como as ferramentas que temos nas mãos funciona.

A situação ocorre quando, por necessidade de uma ordem judicial, um micro é apreendido para ser investigado. O Perito já está de posse do depoimento do usuário/dono do micro, que entre outras coisas, diz que o micro é novinho em folha. Ele diz que tinha comprado um HD novo e decidiu instalar o Windows XP logo depois de um jogo na TV. Isso tinha acontecido no dia anterior ao micro ser apreendido.

De posse dessas informações, o perito anota no seu caderninho (é um cara bem antigo, não usa CaseNotes):

- Data da operação: Dia 1 de setembro.
- Data da instalação: Dia 31 de agosto, por volta de 18h30.

O Perito prossegue, analisando a imagem que foi feita da máquina, obviamente segundo o processo forense (ou seja, duplicação bit-a-bit). Ao analisar o Registry, encontra lá, dentro de muitas chaves, a que informa a hora exata da instalação do Sistema Operacional:
HKLM/Software/Microsoft/Windows NT/CurrentVersion/InstallDate: 31/08/2009 22h30. Como bom Perito, ele sabe que essa hora está no formato GMT e logo deduz que o vestígio encontrado indica que a instalação do SO ocorreu em 19h30 (Hora de Brasília).

- "Bem", ele pensa, "estamos indo conforme o depoimento, tudo ok até aqui". O próximo passo é olhar timestamps do NTFS, para montar seu timeline. Antes disso, passeando pelo Autopsy, ele decide verificar o timestamp dos objetos do NT ($MFT, $LogFile e outros). Ora, se tudo estiver correto, o timestamp deverá indicar por volta de 18h30, já que entre a criação do sistema de arquivos e a finalização da instalação do SO, temos por volta de uma hora. Ele anota a data/hora e, sabendo que todas estão em notação GMT, converte-as para o nosso fuso horário e tem o resultado: 31/08/2009 15h33.

WTF ???? (O artigo é em inglês, então faça um exercício de imaginação sobre essas siglas aí ...)

O que poderia estar acontecendo ??? Então o dono da máquina iniciou a instalação às 15h33, com a formatação do HD novo, e ela só foi terminada mais tarde, por volta das 19h30 ?? O que houve no meio do caminho ?? Ele teria mentido sobre o que aconteceu ????

A resposta é um sonoro não !

O caso é que, como a formatação é uma das primeiras coisas que acontecem na operação de instalação de um SO novo, no momento da criação dos objetos do NT, o programa de formatação não tem ainda a referencia ao fuso horário. Essa informação só fica estabelecida posteriormente. Por conta disso, ele pega a data da Bios e grava ela nos timestamps diretamente, sem nenhuma conversão. Quando a instalação é finalizada, ao escrever essa informação no Registry, o fuso já é conhecido. Portanto, o SO pega a hora da BIOS e converte para GMT, gravando-a em seguida.

Assim, mesmo que a regra geral seja de que os timestamps do NTFS estão todos em GMT, temos a exceção: Os timestamps dos objetos de NTFS criados em uma formatação antes da instalação do SO estarão em horário local.

Dessa forma, a hora que o Perito viu (18h33) não precisava ser convertida (no nosso caso, subtraindo 3 para usar como hora de Brasília) . 18h33 foi a data/hora correta de formatação do HD, conferindo com o depoimento.

Moral da História: Cuidado com conversões de timestamps, principalmente quando os utilitários as fazem automaticamente.

Pergunta de prova: O que aconteceria se, ao invés de uma instalação novíssima, do zero, estivesse sendo feita uma formatação completa para uma reinstalação ? Comente !

Até o próximo post !

2 comentários:

Fellipe Henrique disse...

Olá, não tem nada a ver com o tópico, mas você pode me ajudar... estou com um laudo pericial para fazer, sobre a constatação de pirataria de código fonte de software. Poderia me indicar algum software que auxiliasse nesse trabalho? Ou como proceder no laudo, já que nunca fiz este tipo de laudo.

att.

Tony Rodrigues disse...

Olá, Fillipe. Entre em contato comigo por email para que eu entenda melhor a sua necessidade, ok ? o email é dartagnham no gmail. []s