Olá!
Por meio dessa série de postagens farei uma introdução de como extrair e analisar dados do navegador, do e-mail, e de artefatos IM.
Atualmente, os PCs e laptops quase sempre estão conectados à Internet e a maior parte do uso está relacionada a qualquer tipo de atividade online. Portanto, é fácil entender que a extração e análise de artefatos da Internet desempenham um papel primordial na análise forense digital.
Nas postagens, veremos como tirar proveito das ferramentas instaladas no Kali Linux para extrair e analisar artefatos relacionados às atividades mais comuns da Internet: Navegação na Web, e-mail e Mensagens Instantâneas (IM).
Vamos examinar artefatos dos navegadores mais comuns, como Internet Explorer, Firefox e Chrome. Em seguida, mostraremos como recuperar mensagens de email para programas de email comuns como Outlook e Thunderbird. Por fim, veremos como extrair artefatos de um cliente popular de mensagens instantâneas: o Skype. Uma infinidade de dados pode ser extraída dos navegadores.
Os artefatos mais relevantes para a investigação forense são cache, histórico, favoritos, cookies e arquivos baixados.
PARTE 1 – NAVEGADORES
ARTEFATOS DO MS INTERNET EXPLORER
Começaremos dando uma olhada no Internet Explorer (ou IE) pré-instalado por padrão no Windows. Considero ser ainda seja o navegador mais difundido no mundo.
- O IE armazena seus dados nas chaves do registro e nos arquivos no diretório de perfil do usuário.
- URLs digitados, preenchimentos automáticos de formulário e preferências são armazenados nas chaves do Registro em: HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\
- Favoritos estão localizados na mesma pasta em todas as versões do Windows: {PERFIL DO USUÁRIO}\Favoritos.
- Antes da versão 10 do IE, o histórico do navegador, o cache e os cookies são armazenados nos arquivos index.dat nos seguintes locais:
Histórico (History)
- No Win XP:
Documents and Settings\{PERFIL DO USUÁRIO}\Local Settings\History\History.IE5\index.dat
2 – Win Vista e acima:
Users\{PERFIL DO USUÁRIO}\AppData \Local\Microsoft\Windows\ History\History.IE5\index.dat
Cache
3 – No Win XP:
Documents and Settings\{PERFIL DO USUÁRIO}\Local Settings\ Temporary Internet Files\Content.IE5\index.dat
4 – No Win Vista e acima:
Users\{PERFIL DO USUÁRIO}\AppData\Local\Microsoft\Windows\ Temporary Internet Files\Content.IE5\index.dat
Cookies
5 – No Win XP:
Documents and Settings\{PERFIL DO USUÁRIO}\Cookies\index.dat
6 – No Win Vista e acima:
Users\{PERFIL DO USUÁRIO}\AppData\Roaming\Microsoft\ Windows\ Cookies\index.dat
Agora vamos apresentar duas ferramentas de CLI pré-instaladas com o Kali Linux para analisar arquivos e cookies index.dat, respectivamente Pasco e Galleta.
O uso do Pasco não poderia ser mais fácil, pois leva apenas um parâmetro de entrada, o arquivo index.dat, e não possui outras opções. Vou executá-lo no arquivo index.dat para mostrar um exemplo prático. Caso não saiba como extrair imagens de sistema Windows, fazer a junção e a montagem, leia as postagens anteriores. Com essas duas consegue executar:
- Extraindo imagem para análise forense com a ferramenta DC3DD:
https://douglasmendes.code.blog/2020/05/02/extraindo-imagem-para-analise-forense-com-a-ferramenta-dc3dd/ - Análise de registros do Windows – Análise Forense:
https://douglasmendes.code.blog/2020/05/21/analise-de-registros-do-windows-analise-forense/
Para facilitar montagem de laboratório, estou disponibilizando no link abaixo uma imagem do Windows XP SP3 Truefaster. Claro que ela por si só não resolve, pois será necessário navegar em sites compatíveis com o navegador e salvar alguns nos favoritos. Hoje em dia são poucos sites compatíveis com o Internet Explorer sem recursos atuais de TLS e SSL:
https://mega.nz/file/rR0gwYqY#3x_6FsJcuF0W8a0BI-vUbZ1Ow7RzNC_PBBq6Qd68uIw
Continuando, agora entre no diretório onde a imagem foi montada. Em seguida, execute o comando pasco index.dat em alguma das pastas relacionadas. Como exemplo, utilizei a pasta Cookies no Windows XP:

IMAGEM: Do Autor
A saída mostra dados de um arquivo de histórico. Mostra o local mais visitado, o tempo de acesso e assim por diante.
Agora vou dar uma olhada no Galleta, que é uma palavra em espanhol que significa Cookie.
Então, vamos ao diretório em que os cookies são armazenados novamente e listar o conteúdo do diretório:

IMAGEM: Do Autor
Agora, escolheremos um dos cookies em formato .txt para explorar. Como exemplo, selecionei o cookie1JG7CSZX.txt:

IMAGEM: Do Autor
O uso do Galleta é muito semelhante ao do Pasco, porém ele recebe um arquivo .txt como entrada, não um arquivo .dat. A saída é muito mais legível do que se abrisse diretamente o arquivo de cookies, e mostra afirmações como o site, o nome da variável e seu valor. Também os tempos de criação e validade.
A partir da versão 10 e posterior, o IE armazena dados nos arquivos de banco de dados ESE (Extensible Storage Engine ou Mecanismo de Armazenamento Extensível). Sua localização:
Users\{PERFIL DO USUÁRIO}\AppData\Local\Microsoft\Windows\ WebCache\WebCacheV01.dat
Esse tipo de arquivo não é acessível usando o Pasco para ler e extrair bancos de dados ESE. Para ler e extrair bancos de dados ESE, precisamos instalar um pacote chamado Libesedb, que contém bibliotecas e ferramentas desenvolvidas especificamente para esse propósito.
Como este pacote não está pré-instalado com o Kali Linux, portanto, deve ser instalado através do comando apt-get install libesedb* :

IMAGEM: Do Autor
A saída mostra que o pacote já está instalado.
Para montar essa postagem, como em um laboratório, utilizei o comando affuse, depois o comando mount com funções somente leitura. Partindo desse princípio, não foi possível adicionar diretórios, nem arquivos dentro da imagem utilizada, mas o comando esedbexport exige esses privilégios. Portanto, tomei como saída mais segura e prática, copiar o diretório WebCache dentro do diretório Root ( /root/WebCache ). E, entrando no diretório, fiz uso do utilitário esedbexport no arquivo WebCacheV01.dat :

IMAGEM: Do Autor
Como você pode ver no diretório usando o comando ls, uma pasta com o mesmo nome do arquivo de entrada e o sufixo export foi criada. Se listarmos esse diretório …

IMAGEM: Do Autor
… podemos ver um monte de arquivos de texto gerados.
Algumas ferramentas gratuitas foram desenvolvidas para Windows pela NirSoft e Mandiant. Elas podem ser executadas no Linux pelo programa Wine, como vimos com o RegRipper na última postagem. Fica a dica.
Agora que cobrimos o IE, vamos cobrir outros dois navegadores muito comuns: Firefox e Chrome.
ARTEFATOS DO MOZILLA FIREFOX
O Firefox e o Chrome armazenam a maioria dos dados em arquivos de banco de dados SQLite. O Firefox armazena seus dados nos seguintes arquivos:
- History e Bookmarks: places.sqlite
- Cookies: cookies.sqlite
- Downloads: downloads.sqlite
O Firefox armazena seus arquivos de banco de dados nos locais:
- Win XP e mais antigos:
Documents and Settings\{PERFIL DO USUÁRIO}\Application Data\Mozilla\Firefox\Profiles\{PERFIL}\ - Win Vista e mais novos:
Users\{PERFIL DO USUÁRIO}\ AppData\Roaming\Mozilla\Firefox\ Profiles\{PERFIL}\ - Linux:
/home/{NOME DO USUÁRIO}/.mozilla/firefox

IMAGEM: Do Autor
ARTEFATOS DO GOOGLE CHROME
O Google Chrome também armazena seus dados em um local específico:
- Win XP e mais antigos:
Documents and Settings\{PERFIL DO USUÁRIO}\ Local Settings\ Application Data\Google\Chrome\User Data\Default\ - Win Vista e mais novos:
Users\{PERFIL DO USUÁRIO}\AppData\Local\Google\ Chrome\User Data\Default\ - Linux:
/home/{NOME DO USUÁRIO}/.config/google-chrome
O nome dos arquivos de interesse é autoexplicativo. Por exemplo, Cookies para cookies e History para histórico.
ANALISANDO OS ARTEFATOS DO FIREFOX E DO CHROME
Para ler e extrair dados do arquivo SQL, podemos usar o navegador SQLitebrowser instalado por padrão no Kali Linux. Os dados são armazenados em várias tabelas nos bancos de dados. Portanto, as consultas SQL devem ser executadas para extrapolar os dados de seu interesse.
Veremos como extrair dados da atividade do navegador de um exemplo de arquivo do histórico do Firefox e do Chrome. Primeiro, abra o navegador digitando no terminal o comando sqlitebrowser :

IMAGEM: Do Autor

IMAGEM: Do Autor
Em seguida, clicar em Abrir banco de dados, ir na pasta onde encontram os arquivos do Firefox, e selecionar o arquivo de histórico:

IMAGEM: Do Autor

IMAGEM: Do Autor
Observe que o banco de dados é composto por 13 tabelas. Duas tabelas armazenam os dados básicos do histórico de navegação. Moz_historyvisits e moz_places.

IMAGEM: Do Autor
Podemos executar uma consulta SQL oposta que eu salvei por conveniência em um arquivo de texto, repassando para esta postagem. A consulta é bastante longa para digitá-la manualmente. Você pode copiar e colar. Segue:
SELECT
datetime(moz_historyvisits.visit_date/1000000.’unixepoch’),
moz_places.url
FROM moz_places, moz_historyvisits
WHERE moz_places.id = moz_historyvisits.place.id

IMAGEM: Do Autor
Agora, depois de selecionar e copiar a consulta, cole-a na janela Execute SQL e execute-a:

IMAGEM: Do Autor
Pudemos ver na saída as visitas ordenadas pela data e hora.
Para o Chrome, o procedimento é muito semelhante. Abrimos o arquivo de histórico e vemos que existem doze tabelas das quais os usuários armazenam os dados de atividade do navegador.

IMAGEM: Do Autor
Para exibir os dados, execute uma consulta semelhante à do Firefox:
SELECT urls.url, urls.title, urls.visit_count, visits.visit_time
FROM urls, visits
WHERE urls.id = visits.url

IMAGEM: Do Autor
Copie a consulta e cole-a na aba Executar SQL:

IMAGEM: Do Autor
Para extrair outros tipos de dados, como Cookies e Bookmarks, podemos executar consultas semelhantes nos bancos de dados e tabelas relativos.
Até agora, vimos como extrair artefatos dos navegadores mais comuns.
Na próxima postagem falarei sobre os aplicativos de e-mail.
Até mais.
3 comentários em “COMO EXTRAIR E ANALISAR DADOS DO NAVEGADOR, DO E-MAIL, E MENSAGENS INSTANTÂNEAS (PARTE 1) – ANÁLISE FORENSE”