Computação forense – Aquisição de dados

Hoje vou apresentar apenas duas ferramentas que podem ser utilizadas para se fazer a aquisição de dados de um dispositivo de armazenamento de dados, este processo é muitas vezes chamado de aquisição ou imagem, elas são o FTK Imager e o dd.

Ambas ferramentas são extremamente úteis e simples, no entanto elas devem ser utilizadas com um certo cuidado pois as mesmas podem se tornar destrutivas quando mal utilizadas.

FTK Imager

FTK Imager é um programa desenvolvido pela Access Data, este é apenas um dos produtos que eles desenvolveram, eles possuem soluções que permitem fazer uma analise forense completa, no entanto este é um dos seus produtos que permite fazer a aquisição de dados de um dispositivo de armazenamento de dados para um arquivo virtual ou para um outro dispositivo de armazenamento de dados. Esta ferramenta somente funciona no Windows.

Faça o download da ferramenta no website do fabricante e de seguida prossiga com a instalação.

Ao abrir o programa pela primeira vez esta é a tela inicial.Para fazer a cópia de um dispositivo devemos seleccionar a opção “Create Disk Image”.

De seguida escolhemos o tipo de dispositivo que desejamos criar uma cópia, neste exemplo eu vou fazer uma cópia do disco local “C:” que neste caso é identificado como “VBOX HARDDISK” e escolhemos a pasta de destino e o nome do ficheiro de destino. O FTK Imager suporta diferentes formatos de imagem, neste caso eu escolhi o tipo “dd(raw)” que é suportado pela maior parte das ferramentas de analise. Alguns outros formatos permitem coisas como compressão, no entanto para este exemplo escolhi um formato padrão suportado por quase todas as ferramentas de analise de dados. Após concluído o processo de aquisição da imagem podemos carregar a mesma no programa para começar a nossa análise escolhendo a opção “Add Evidence Item”.Agora podemos ver alguns dos dados que a ferramenta conseguiu copiar, em alguns casos podemos ainda ver os arquivos apagados que ainda se encontram no disco.

dd

O dd é um utilitário para sistemas da familia Unix (Unix, BSD, Linux, Minix, etc). Esta simples mas poderosa ferramenta permite fazer cópias e conversões de arquivos, criar imagens de dispositivos de armazenamentos ou ainda criar arquivos de swap. Ela encontra-sem que quase todos os sistemas da família Unix, principalmente as principais distribuições Linux (Debian, Ubuntu, Fedora, CentOS, RedHat, openSUSE, Arch, etc).

Os dispositivos de armazenamento no Linux (e na maior parte dos sistemas da família Unix) aparecem para o sistema como arquivos normais, isto permite que o dd faça a leitura e a escrita sem problemas desde que os drivers necessários para realizar tais operações estejam instalados no sistema (o que na maior parte das vezes já vem instalado por padrão no kernel  do sistema operativo).

O modo de operação básico do dd não é muito complexo, ele exige apenas dois argumentos que são o arquivo de leitura “if” (dispositivo que se deseja criar a imagem) e o arquivo de escrita “of” (dispositivo ou ficheiro com os dados lidos).

rickinho@:~$ dd if=/dev/urandom of=/dev/null
1+0 registos dentro
1+0 registos fora
512 bytes copiados, 0,000184662 s, 2,8 MB/s

No entanto alguns argumentos adicionais nos permitem especificar melhor aquilo que queremos copiar, como por exemplo o tamanho do bloco de leitura ou o número de iterações que se deve copiar.

rickinho@:~$ dd if=/dev/urandom of=/dev/null bs=1024 count=1
1+0 registos dentro
1+0 registos fora
1024 bytes (1,0 kB, 1,0 KiB) copiados, 0,000135283 s, 7,6 MB/s

O tamanho do bloco de arquivos permite que o dd faça uma cópia bit-a-bit do tamanho especificado no argumento, no exemplo acima fizemos uma cópia de um bloco de 1024 bytes uma única vez (especificado no parâmetro count).

Em sistemas Unixos dispositivos de armazenamento muitas vezes são atribuidos com o nome “sd<dispositivo><partição>”, isso quer dizer que o primeiro dispositivo de armazenamento vai ter o nome “sda” e dentro deste dispositivo as partições terão a seguinte nomenclatura “sda1” (primeira partição do dispositivo), “sda2” (segunda partição), “sda3” (terceira partição), etc.

Neste caso o comando para fazer a cópia de um disco duro com o nome “sdb” (segundo disco identificado pelo sistema) para um outro dispositivo como nome “sdc” executariamos o comendo da seguinte forma.

rickinho@:~$ dd if=/dev/sdb of=/dev/sdc 

O comando acima cria uma cópia exacta do disco “sdb” para o disco “sdc”, isso inclui tabela de partições e camada de dados não indexados, caso somente se deseje copiar uma partição devemos especificar o dispositivo como “sdb1” por exemplo.

Não deixe de ler o artigo anterior que fala um pouco sobre computação forense.

Espero que o artigo tenha sido útil, até a próxima.

Notas: Os dispositivos /dev/urandom, /dev/zero e /dev/null são dispositivos especiais criados pelo sistema operativo. Eles foram utilizados somente para fins didácticos.
/dev/urandom - contêm conteúdo aleatório
/dev/zero - contêm somente zeros
/dev/null - não possui conteúdo, vazio

A ferramenta dd não mostra nenhum tipo de progresso enquanto esta em execução, somente mostra o resumo quando termina de executar.
Caso queira verificar o progresso da execução do programa utilize a opção "status=progress".

 

Compartilhe... :)

Um comentário em “Computação forense – Aquisição de dados”

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

Este site utiliza o Akismet para reduzir spam. Fica a saber como são processados os dados dos comentários.