Coleta de Evidências
Identificação de possíveis fontes de dados:
●
Computadores Pessoais
●Notebooks
●CDs e DVDs
●Pen-drives
●Máquinas fotográficas
●Celulares
●Cartões de memória
●Servidores corporativos
●Provedores
●etc...
Coleta de Evidências
Após a identificação das possíveis origens dos dados, o perito
necessita adquiri-los.
ƒ Para a aquisição dos dados, é utilizado um processo composto por
três etapas:
●
Identificar a prioridade da coleta:
● o perito deve estabelecer a ordem (prioridade) na qual os dados
devem ser coletados
●
Copiar dados:
● envolve a utilização de ferramentas adequadas para a duplicação
dos dados
●
Garantir e preservar a integridade dos dados:
● após a coleta dos dados, o perito deve garantir e preservar a
Coleta de Evidências
Identificar a prioridade da coleta: o perito deve estabelecer a
ordem (prioridade) na qual os dados devem ser coletados
●
Volatilidade: dados voláteis devem ser imediatamente coletados pelo
perito. Ex.: o estado das conexões de rede e o conteúdo da memória
●
Esforço: envolve não somente o tempo gasto pelo perito, mas também
o custo dos equipamentos e serviços de terceiros, caso sejam
necessários. Ex.: dados de um roteador da rede local x dados de um
provedor de Internet
●
Valor estimado: o perito deve estimar um valor relativo para cada
provável fonte de dados, para definir a seqüência na qual as fontes de
dados serão investigadas
Coleta de Evidências
Coleta de Evidências
Exemplo:
investigação de invasão de rede, ordem da coleta de dados:
dados voláteis: conexões da rede, estado das portas TCP e UDP e
quais programas estão em execução;
dados não-voláteis: a principal fonte de dados não-voláteis é o
sistema de arquivos que armazena arquivos:
●
ƒ temporários;
●ƒ de configuração;
●ƒ de swap;
●ƒ de dados;
●ƒ de hibernação;
●ƒ de log.
Coleta de Evidências
Copiar dados: envolve a utilização de ferramentas adequadas para
a duplicação dos dados
Ex.: utilitário dd (Linux) -pode ser usado para coletar os dados
voláteis como os contidos na memória e para realizar a duplicação
das fontes de dados não-voláteis.
Garantir e preservar a integridade dos dados: após a coleta dos
dados, o perito deve garantir e preservar a integridade dos mesmos.
Se não for garantida a integridade, as evidências poderão ser
invalidadas como provas perante a justiça
A garantia da integridade das evidências consiste na utilização de
ferramentas que aplicam algum tipo de algoritmo hash
Coleta de Evidências
Dead Acquisition
● Máquina pode ser desligada ● Faz imagem do HD
● O HD não está sendo escrito em instante algum ● É possível atestar a validade da cópia (hash) ● Pode ser usado em juízo
Live Acquisition
● Máquina não pode ser desligada ● Faz imagem com HD sendo escrito
● Hashs não são possíveis, cópias não podem ser validadas
● Idem para dados voláteis (memória RAM, buffers de placas de rede e de
vídeo)
● Útil em investigações particulares
Mídias e Sistemas de Arquivos
Dispositivo mais utilizado para armazenamento de dados
Dados gravados em “trilhas” e “setores” de forma magnética
Principais Componentes:
• Cylinder
• Head
• Platter
Mídias e Sistemas de Arquivos
Memória flash do tipo NAND com interface USB
Vantagens:
• Menor e mais leve
• Regravável
• Rápido e com alto poder de armazenamento
• Não requer fonte externa de energia
Principais usos:
• Dados Pessoais
• Aplicações e Sistemas Operacionais
• Players de audio e vídeo
Mídias e Sistemas de Arquivos
●
Organiza os dados de forma hierárquica
●
Facilita a navegação e a manutenção dos arquivos
●
Utilizado em todos os dispositivos de armazenamento
●Organização dos arquivos em árvore
●
Estrutura de diretórios e sub-diretórios
●Permissões e controles de acesso
Mídias e Sistemas de Arquivos
● O sistema de arquivos mantém um journal (ou log) onde são armazenadas todas
as mudanças feitas em arquivos do disco. Quando qualquer erro inesperado surge, ou o sistema é desligado incorretamente é possível localizar todas as operações que não haviam sido completadas, restaurando a consistência do sistema de
arquivos sem a necessidade de vasculhar arquivo por arquivo, como faz o scandisk do Windows ou o FSCK no Linux.
Mídias e Sistemas de Arquivos
Sistemas de arquivos para Linux:
• EXT: primeiro file system para o Linux
• EXT2: Implementou MAC times, superblocos, mais estável
• EXT3 : ext2 + journaling
• EXT4 : ext3 melhorado
• ReiserFS : primeiro com suporte a journaling
• XFS: Mais rápido que os outros (IRIX)
• ZFS: file system combinado com logical volume management
(SOLARIS)
Mídias e Sistemas de Arquivos
Sistemas de arquivos para Windows:
• FAT (File Allocation Table)
• Desenvolvido para MS-DOS
• Usado em todas as versões do Microsoft Windows. • Minimalista e de fácil implementação
● FAT32
• Algumas correções e melhorias em relação ao FAT.
● NTFS (New Technology File System)
• Informações como nome do arquivo, data de criação, permissões são gravadas como metadados.
Mídias e Sistemas de Arquivos
• ISO 9660 (International Organization for Standardization)
• Sistema de arquivos para CDs e DVDs
• Compatibilidade com diversos sistemas operacionais:
Microsoft Windows, Mac OS, e UNIX-like
Dados, Informações e Evidências
>> Ordem de Volatilidade
Principais fontes de informação de um sistema:
●
Dispositivos da CPU (registradores e caches)
●Memória de periféricos (ex: memória de vídeo)
●Memória principal do sistema
●
Tráfego de rede (pacotes em trânsito na rede)
●Estado do sistema operacional
Dados, Informações e Evidências
•
Aquisição de uma imagem de um HD é, em muitos casos, o ponto de partida de uma investigação• A técnica conhecida como "dead analysis" determina que o HD a ser analisado deve ser clonado bit a bit e qualquer análise deve ser feita nessa cópia, de forma a manter o HD íntegro
• A imagem deve copiar todos os dados do HD, incluindo as partes não utilizadas • A técnica conhecida como “live analysis” é quando evita-se desligar o computador (em geral, servidores) por redução do prejuízo ou ainda porque, ao desligá-lo, importantes evidências voláteis desaparecerão. Nesse caso, faz se a captura da memória e de outras informações voláteis, também.
Dados, Informações e Evidências
O que utilizar ?
• Existem várias ferramentas para esta tarefa
• A maioria implementa o mesmo formato (raw)
• Esse é, literalmente, uma cópia fiel do HD
• Formato gerado pela ferramenda dd (padrão)
• Entretanto não é o único formato disponível
Dados, Informações e Evidências
Imagens RAW :
Pontos Positivos
• Formato facilmente “montável”
• Independe de ferramentas específicas
• Muitas ferramentas disponíveis, em linha de comando (CLI) ou interface gráfica (GUI) • Disponível em utilitários tanto para Linux quanto para Windows
Pontos Negativos
• Arquivos muito grandes e sem suporte a compactação
• Não é possível adicionar dados da investigação ao arquivo raw (metadados) • Não monta facilmente se estiver dividido
• Algumas operações são mais lentas devido ao grande tamanho
Dados, Informações e Evidências
>> Coleta
Imagens RAW
Uma imagem lógica é uma imagem forense de uma partição apenas.
Uma imagem física contém todas as partições do dispositivo mais a
tabela de partições.
Imagem física => /dev/hda
Dados, Informações e Evidências
Outros Tipos de Imagens:
•
Expert Witness (E01) (http://www.guidancesoftware.com/forensic.htm)●Formato proprietário do Encase ●Permite compactação (sem perda) ●Metadados
●Arquivos divididos
•
Advanced Forensic Format (AFF) (http://afflib.org) ●Tentativa de padronização (open source)●Usa compactação e tratamento de erros ●Formato muito jovem
●Tratamento de Erros Conversores:
● afcat: converte de aff para raw
● aimage: converte de raw para aff
● ewfacquire: converte de dd para e01 e vice-versa
Dados, Informações e Evidências
• Plano de contingência para eventuais erros causados por algum
procedimento da análise
• Recomenda-se o uso de pelo menos três cópias
Dados, Informações e Evidências
• Principal ferramenta “dd”
• Cópia bit-stream
• Faz cópia de qualquer dispositivo que possa ser montado e
acessado no Linux
• Outras ferramentas podem ler e analisar arquivos gerados pelo
“dd”
Sintaxe: dd if=/*origem* of=/*destino*
●
Existe dd para Windows
Dados, Informações e Evidências
• Exemplos:
Copiando partição para outro disco:
• dd if=/dev/sda2 of=/dev/sdb2 bs=4096 conv=notrunc,noerror Criando uma imagem de CD:
• dd if=/dev/hdc of=/tmp/mycd.iso bs=2048 conv=notrunc Restaurando uma partição a partir de um arquivo de imagem:
• dd if=/tmp/imagem.iso of=/dev/sdb2 bs=4096 conv=notrunc,noerror Copiando a memória para um arquivo:
• dd if=/dev/mem of=/tmp/mem.bin bs=1024
Dados, Informações e Evidências
Cópia remota:
Máquina origem
• dd if=/dev/hda | netcat IP_destino 1234
Máquina destino
• netcat -l -p 1234 > imagem.dd
Cópia através da rede pública: trocar netcat por ssh
Dados, Informações e Evidências
dcfldd: versão aprimorada do dd, com mais funcionalidades:
●geração do hash dos dados durante a cópia dos mesmos ●visualização do processo de geração da imagem
●divisão de uma imagem em partes ●Sintaxe idêntica ao dd
# dcfldd if=/dev/sda1 of=1GB_de_particao-windows.img bs=1MB count=128 hash=md5,sha1,sha512
Total (md5): 7967be906cf636a47cccf1fae753ec27
Total (sha1): 8764f7bb5a8e7ffce331c20f24480523ac0a406c
Total (sha512):2537e2268ad55533741317806c99d774461f7d3c045619785 9410eff6a782135f99161d543c981d9b62d1bf6021be9caad8318dde422e7e2d37 71c4793365b8 128+0 records in 128+0 records out
>> Duplicação e Preservação
Dados, Informações e Evidências
AutomatedImage& Restore (AIR): interface gráfica para os
comandos dd/dcfldd
●
gera e compara automaticamente hashes MD5 ou SHA
●
produz um relatório contendo todos os comandos utilizados
durante a sua execução
●
elimina o risco da utilização de parâmetros errados por usuários
menos capacitados
Dados, Informações e Evidências
Linux:
●ewfacquire, ewfacquirestream : criam arquivos no formato do EnCase e do
FTK.
● ddrescue e dd_rescue: mídias danificadas (bad blocks, CDs com defeito etc) ● rdd ● sdd ● EnCase LinEn Windows: ● AccessData ● Encase ● FTK ● Ghost
Alguns aplicativos servem tanto para duplicação quanto para análise dos dados (EnCase, FTK).
Dados, Informações e Evidências
• usar o comando mount com opção de montagem read-only
# mount -o ro,loop,noexec imagem.dd /mnt/img
onde:
-o ro -> Monta a imagem read-only
loop -> usa o loopback - mecanismo que torna possível montar um arquivo como um dispositivo
noexec -> nenhum código executável contido na imagem pode ser acionado/executado.
imagem.dd -> é a imagem raw de uma partição.
/media/img -> é um diretório existente que serve de mounting point. Isso significa que a raiz da partição que a imagem contém vai aparecer em /mnt/img.
Dados, Informações e Evidências
● a montagem deve ser uma partição por vez ● para achar as partições usar sfdisk
# sfdisk -luS imagem.dd
Units = sectors of 512 bytes, counting from 0 Device boot Start End #sectors Id System
imagem.dd1 * 32 1712127 1712096 6 FAT16 imagem.dd2 0 --- 0 0 Empty
imagem.dd3 0 --- 0 0 Empty imagem.dd4 0 --- 0 0 Empty
● A partição 1 começa no setor 32, cada setor com 512 bytes → 32 * 512 = 16384
bytes de offset
# mount -o ro,loop,noexec,offset=16384 imagem.dd /mnt/img ● regra geral para todas as partições:
●Offset em bytes = (Setor onde a partição inicia - start) * (tamanho em bytes de
cada setor)
Dados, Informações e Evidências
● Para montar uma imagem AFF usamos o affuse:
# affuse imagem.aff /mnt/affdisk onde:
imagem.aff é a imagem no formato AFF
/mnt/affdisk é o mounting point, que já deverá estar criado.
● Cria no diretório um arquivo no formato raw (chamado imagem.aff.raw) ● Depois tem que montar o arquivo usando mount
● Para montar uma imagem EWF usamos: ● LinEN : ferramenta ideal, proprietária ● pacote libewf
● Mount-ewf ● Pyewf