Forense Digital

Sistemas Operacionais Forensics

SISTEMA OPERACIONAL

URL

Helix3 Free

--

SANS Investigative Forensics Toolkit (SIFT)

Santoku Linux (Perícia Móvel)

https://santoku-linux.com/

Métodos de Captura

Captura Física

É criado uma cópia da unidade de disco bit a bit / setor a setor. Metadados do sistema de arquivos, arquivos excluídos, fragmentos de arquivos excluídos e espaço não alocados são capturados. A imagem resultado é um cópia exata.

Captura Lógica

Neste, espaço não alocado, dados do sistema de arquivos e arquivos excluídos e/ou parcialmente apagados, arquivos ocultos e espaço não usado, não são capturados

Captura Esparsa

Semelhante a Captura Lógica, porém este captura dados excluídos e seus fragmentos. Normalmente é usado em sistemas RAID

gdb (com Script Bash)

Crie um aquivo chamado dump-memory.sh (pode ser o nome que preferir) e insira o seguinte conteúdo:

#!/bin/bash
grep rw-p /proc/$1/maps \
| sed -n 's/^\([0-9a-f]*\)-\([0-9a-f]*\) .*$/\1 \2/p' \
| while read start stop; do \
        gdb --batch --pid $1 -ex \
                 "dump memory $1-$start-$stop.dump 0x$start 0x$stop"; \
done

Dê permissão de execução para o arquivo sh.

chmod +x dump-memory.sh

E para executar, primeiro precisamos pegar o PID do processo em questão.

ps aux

Agora que já sabemos o PID, podemos executar nosso script.

./dump-memory.sh <pid>

Feito isso, note que no mesmo diretório do script, foram criados alguns arquivos com extensão .dump. Filtre esse arquivo com palavras-chave com um dos comandos abaixo:

grep -irn password
strings *.dump | grep -i password

Mozilla Firefox

Despejo de Memória

# Aceita os termos contrato. Obrigatório fazer isso pela primeira vez que for usar
procdump64.exe -accepteula

# Realizando o Dump
procdump64.exe -ma <service_or_pid>

Lendo Histórico e Favoritos

sqlite3 /home/<user>/.mozilla/firefox/<profile.default>/places.sqlite

# Histórico
SELECT * FROM moz_places;

# Favoritos
SELECT * FROM moz_bookmarks;

E-mail utilizados em Formulários

sqlite3 /home/<user>/.mozilla/firefox/<profile.default>/formhistory.sqlite
SELECT DISTINCT(value) FROM moz_formhistory WHERE instr(`value`, '@') > 0;

Quantidade de Perfis

Cada [Profile<num>] é um perfil. Note que em cada profile existe um campo chamado Path e no mesmo diretório de profiles.ini, deve ter um diretório com o mesmo nome do valor de Path. Caso não exista esse diretório, significa que o perfil foi excluído.

cat /home/<user>/.mozilla/firefox/profiles.ini

Verificando addons que foram adicionados

cat /home/<user>/.mozilla/firefox/<profile.default>/addons.json | jq

Capturando senhas com firepwd

Antes de executar o comando abaixo, certifique-se de os arquivos login.json, key3db ou key4.db estão no diretório correto.

python firepwd.py -d </path/directory/>

Capturando Detalhes de Senhas Salvas

cat /home/<user>/.mozilla/firefox/<profile.default>/logins.json | jq

Brute Force para Descobrir Senhas

for x in $(cat firefox_decrypt.py) ; do echo $x | python firefox_decrypt.py ; done

Cookies

sqlite3 /home/<user>/.mozilla/firefox/<profile.default>/places.sqlite

# Cookies de todos os sites
SELECT * FROM moz_cookies;

# Cookies de um determinado site
SELECT * FROM moz_cookies WHERE baseDomain = "<site.com>";

# Cookies acessados recentemente
SELECT * FROM moz_cookies WHERE (lastAccessed) in (SELECT MAX(lastAccessed) FROM moz_cookies);

# Retornando os cookie que não expiraram
SELECT * FROM moz_cookies WHERE expiry > <timestamp_now>;

Google Chrome

Vendo Histórico de Sites

sqlite3 /home/<user>/.config/google-chrome/Default/History
SELECT * FROM urls;

URL de Arquivos baixados

sqlite3 /home/<user>/.config/google-chrome/Default/History
SELECT * FROM downloads_url_chains;
SELECT * FROM downloads;

Pesquisas realizadas no site do Google.

sqlite3 /home/<user>/.config/google-chrome/Default/History
SELECT * FROM keyword_search_terms;

Cookies

sqlite3 /home/<user>/.config/google-chrome/Default/Cookies
SELECT host_key FROM cookies WHERE expires_utc > <timestamp_now>;

Lendo BMC

Carregue o arquivo no BMC Viewer, selecione o tamanho do BPP (tile) e clique em LOAD. OBS.: O tamanho do tite é uma questão de tentativa a erro

Lendo Arquivos Apagados do Pendrive

Primeiro veja onde está o Filesystem do pendrive

df -h

Agora vamos ler o seu conteúdo

strings </dev/filesystem>

USB

usbrip events violations <auth_file.json> --file <syslogfile>

Imagens de Disco

img_stat

Verificando os tipos de formato imagens que o img_stat trabalha.

img_stat -i list

Verificando o tipo de formato de uma determinada imagem de disco.

img_stat -t <file.img>

fsstat

Verificando o tipo de sistema de arquivos. Utilize o img_stat acima para pegar o tipo de formato de imagem.

fsstat -i <image_type> -t <file.img>

Buscando detalhes sobre o SO.

fsstat -i <image_type> -f <type_system_file> <file.img>

fls

Listando diretórios da imagem.

fls -i <image_type> -f <type_system_file> <file.img>

Agora que já sabemos os nomes dos diretórios, podemos listar os arquivos desse diretório utilizando o seu número de indicação. Vamos supor que na saída acima tenha retornado d/d 17: photos em uma das linhas, então 17 é o número que irá identificar o diretório photos.

fls -i <image_type> -f <type_system_file> <file.img> 17

Assim como os diretórios possuem um número para identificá-los, os arquivos também possui, então ler um arquivo utilizando seu número de identificação com icat, logo abaixo.

icat

Lendo arquivos

icat -i <image_type> -f <type_system_file> <file.img> <numero_identificao_arquivo>

Sites

# Blogs / Fóruns / Tutoriais
https://lifeinhex.com
https://resources.infosecinstitute.com
https://www.us-cert.gov/ncas/alerts

http://www.darknessgate.com
https://osint.link 
http://www.edrm.net
https://www.secjuice.com
http://cyberforensicator.com
https://www.darkreading.com/
https://www.dfir.training

# Despejo de memória com ProcDump
https://support.microsoft.com/pt-br/help/4294410/how-to-use-procdump-to-troubleshoot-virtual-machine-manager-service-vm  

# Protegendo a unidade de disco contra gravações. Utilize caso não tenha um hardware para isso
www.darknessgate.com/computer-forensic/computer-forensic-prerequisites/windows-os-write-protection-with-usb-devices

# Lista de assinaturas de arquivos
https://filesignatures.net

# firefox_decrypt
https://github.com/unode/firefox_decrypt

# firepwd
https://github.com/lclevy/firepwd

# Lista de extensões e seus formatos
https://fileinfo.com/filetypes/common

# Identifica tipos de arquivos (extensão) e o programa utilizado para executar
https://www.openwith.org

# Trabalha com Binários, Hexas, Decimais, etc
https://hexed.it

# Diversos tipos de assinaturas para determinar o tipo real do arquivo
https://www.garykessler.net/library/file_sigs.html

Last updated