perícia forense em sistemas operacionais open source

72
CENTRO PAULA SOUZA FATEC OURINHOS ANÁLISE DE SISTEMAS E TECNOLOGIA DA INFORMAÇÃO Luan Ambrosio PERÍCIA FORENSE EM SISTEMAS OPERACIONAIS OPEN SOURCE OURINHOS (SP) 2012

Upload: luan-ambrosio

Post on 08-Aug-2015

326 views

Category:

Documents


22 download

TRANSCRIPT

Page 1: Perícia Forense em Sistemas Operacionais Open Source

CENTRO PAULA SOUZA

FATEC OURINHOS

ANÁLISE DE SISTEMAS E TECNOLOGIA DA INFORMAÇÃO

Luan Ambrosio

PERÍCIA FORENSE EM SISTEMAS OPERACIONAIS OPEN SOURCE

OURINHOS (SP)

2012

Page 2: Perícia Forense em Sistemas Operacionais Open Source

Luan Ambrosio

PERÍCIA FORENSE EM SISTEMAS OPERACIONAIS OPEN SOURCE

Trabalho de Conclusão de Curso apresentado a

Faculdade de Tecnologia de Ourinhos como

requisito parcial para obtenção do grau de

Tecnólogo em Segurança da Informação.

Orientador: Prof. Me. Fabio Eder Cardoso.

OURINHOS (SP)

2012

Page 3: Perícia Forense em Sistemas Operacionais Open Source

Luan Ambrosio

PERÍCIA FORENSE EM SISTEMAS OPERACIONAIS OPEN SOURCE

Trabalho de Graduação - TG apresentado a Faculdade de Tecnologia de Ourinhos

como requisito para a conclusão do Curso de Análise de Sistemas e Tecnologia da

Informação.

Data da aprovação: 15/12/2012

_______________________________________________ (assinatura) - ___________(nota)

Orientador: Prof. Me. Fabio Eder Cardoso – Fatec – Ourinhos

_______________________________________________ (assinatura) - ___________(nota)

Prof. Jean D. H. M. Andreazza – Fatec – Ourinhos

_______________________________________________ (assinatura) - ___________(nota)

Prof. Robson Leite – Fatec – Ourinhos

Page 4: Perícia Forense em Sistemas Operacionais Open Source

RESUMO

Esse trabalho tem como objetivo, demonstrar o estudo sobre a perícia forense

computacional em sistemas operacionais open source. A perícia forense é uma área

relativamente nova e que vem se tornando cada dia mais importante devido ao alto

crescimento de crimes eletrônicos durante os anos, sua principal função é investigar crimes

digitais em busca de evidências para serem utilizadas como provas.

A perícia forense basicamente é dividida em quatro procedimentos, as evidências

precisam ser identificadas, preservadas, analisadas e apresentadas. Para que uma evidência se

torne uma prova válida em um caso, regras e procedimentos precisam ser seguidos, pois um

único erro durante uma etapa poderá prejudicar todo o restante do processo. Quando uma

perícia é realizada, todas as fases necessitam ser documentadas, por exemplo, a cadeia de

custódia é um documento que contribui para a validação da prova pericial, nela é registrado o

responsável pela evidência no momento, onde ela se encontra, em caso de transferência da

evidência qual o seu destino, as ferramentas utilizadas em uma determinada análise, os

comandos utilizados, entre outras informações, tudo deve ser registrado mesmo que um erro

tenha sido cometido, a cadeia de custódia precisa ser mantida do inicio ao fim para que se

mantenha a integridade das evidências. A cadeia de custódia é só uma parte da regra, uma

perícia efetiva deve contar com peritos bem treinados, não só tecnicamente, mas

principalmente em boas práticas, por isso, é importante que o perito receba um treinamento de

programas das melhores práticas na perícia forense computacional.

A forense computacional pode ser aplicada a qualquer tipo de sistema operacional,

esse trabalho aborda especificamente a perícia forense em sistemas operacionais open source.

Sistemas operacionais que utilizam o núcleo Linux são grandes portadores de evidências, pois

são sistemas recheados de informações, o que facilita o trabalho dos peritos.

As evidências e ferramentas para perícia forense em sistemas operacionais open

source são diversas, pode-se encontrar evidências digitais investigando os sistemas de

arquivos com ferramentas e comandos nativos do Linux, verificando o MACtime dos arquivos,

usando kit de ferramentas de processamento digital de provas, como, ferramentas para cópia

bitstream, geração de hashes, recuperação de dados apagados, recuperação de dados em

dispositivos voláteis, análise de arquivos de log, análise do tráfego da rede e outras

informações referentes ao sistema que está sendo investigado.

Palavras chave: Perícia Forense, Evidências, Provas, Crimes.

Page 5: Perícia Forense em Sistemas Operacionais Open Source

ABSTRACT

This work aims to demonstrate the studies about computer forensics in open source

operating systems. The forensics is a relatively new area and it is becoming increasingly

important because of the high growth of electronic crimes over the years, its main function is

to investigate digital crimes for evidence to be used as proofs.

The forensics is basically divided into four procedures; the evidence must be

identified, preserved, analyzed and presented. For evidence becomes a valid proof in a case,

rules and procedures need to be followed, because a single error during a step could harm the

rest of the process. When a skill is performed, all phases need to be documented, for example,

the chain of custody is a document that contributes for the validation of expert evidence, in it

the responsible is recorded for the evidence at the time, where it is, in case of transference of

the evidence which your destination, the tools used in a given analysis, the commands used,

among other information, everything should be registered even if a mistake has been

committed, the chain of custody must be maintained from beginning to end so that if keep the

integrity of the evidence. The chain of custody is only a part of the rule, an effective skill

must have well-trained experts, not only technically, but mainly in practice, so it is important

that the expert receives a best practices training program in forensic computing.

A computer forensics can be applied to any type of operating system, this work

specifically approach the forensics on open source operating systems. Operating systems that

use the Linux kernel are big holders of evidence; they are replete with information systems,

which facilitate the work of experts.

The evidence and forensic tools to open source operating systems are diverse, you

can find digital evidence investigating file systems with tools and native Linux commands,

checking the MACtime files using toolkit processing digital evidence, as tools for bitstream

copy, hashes generating, deleted data recovery, data recovery in volatile devices, analysis of

log files, network traffic analysis and other information about the system being investigated.

Key Words: Forensics, Evidence, Proofs, Crimes.

Page 6: Perícia Forense em Sistemas Operacionais Open Source

LISTA DE ILUSTRAÇÕES

Figura 1: Disco rígido apreendido como evidência .................................................................. 15

Figura 2: Cadeia de custódia – preservação começa antes de os dados serem coletados e

termina na disposição final. ...................................................................................................... 18

Figura 3: Exemplo do documento de uma cadeia de custódia. ................................................ 19

Figura 4: Bloqueador físico de gravação entre as unidades de disco rígido............................. 25

Figura 5: Disco rígido sendo copiado sem proteção................................................................. 25

Figura 6: Um valor de hash é calculado e armazenado para cada dado copiado.. ................... 26

Figura 7: Representação de um diretório e o seu inode associado.. ......................................... 29

Figura 8: Visão geral dos sistemas de arquivos Linux.............................................................. 29

Figura 9: Conteúdo do inode do diretório raiz.. ....................................................................... 30

Figura 10: inode do arquivo /etc/passwd.. ................................................................................ 31

Figura 11: Utilizando o Sleuth Kit e o Autopsy Forensic Browser.. ........................................ 40

Figura 12: Visão geral do programa PTK.. ............................................................................... 41

Figura 13: File Slack Space.. .................................................................................................... 42

Figura 14: Processo de recuperação de arquivos apagados usando o SMART.. ....................... 45

Figura 15: Montando a partição do sistema a ser periciado... .................................................. 56

Figura 16: Criando imagem do disco e arquivos de hash com a ferramenta dcfldd................. 57

Figura 17: Imagem do disco e arquivos de hash gerado.. ........................................................ 57

Figura 18: Formulário de cadeia de custódia preenchido.. ....................................................... 58

Figura 19: Montando a imagem em uma interface de loopback.. ............................................ 58

Figura 20: Exibição da imagem montada em uma interface de loopback.. .............................. 59

Figura 21: Procurando, copiando e gerando hash dos arquivos do tipo imagem.. ................... 59

Figura 22: Exibindo as imagens copiadas.. .............................................................................. 60

Figura 23: Hash e pasta de origem das imagens copiadas.. ..................................................... 60

Figura 24: Procurando, copiando e gerando hash dos arquivos do tipo vídeo.. ....................... 61

Figura 25: Exibindo os vídeos copiados.. ................................................................................. 61

Figura 26: Hash e pasta de origem dos vídeos copiados.. ........................................................ 62

Figura 27: Recuperação de dados utilizando o foremost.. ........................................................ 62

Figura 28: Arquivos jpg recuperados usando o foremost.. ....................................................... 63

Figura 29: Arquivos flv recuperados usando o foremost.. ........................................................ 63

Figura 30: Gerando o MAC Time das evidências.. ................................................................... 64

Page 7: Perícia Forense em Sistemas Operacionais Open Source

Figura 31: Arquivo contendo o MAC Time das evidências.. .................................................... 64

Figura 32: Verificando o conteúdo do arquivo xferlog.. .......................................................... 65

Figura 33: Verificando a integridade da imagem do disco.. ..................................................... 65

Page 8: Perícia Forense em Sistemas Operacionais Open Source

LISTA DE SIGLAS

ACE Departamento de Computação da Universidade Federal de São Carlos

BIOS Basic Input Output System

CCE Computer Certified Examiner

CD-ROM Compact Disk Read Only Memory

CFCE Computer Forensics Certified Examiner

CPU Central Processing Unit

ENCE EnCase Certified Examiner

EXT2 Extended File System 2

EXT3 Extended File System 3

GCFA GIAC Certified Forensic Analyst

GPS Global Positioning System

IOCE International Organization of Computer Evidence

MD5 Message Digest 5

NTFS New Technology File System

POST Power On Self Test

RAM Random Access Memory

SHA1 Secure Hash Algorithm 1

SWGDE Standard Working Group on Digital Evidence

TCT The Coroner’s Toolkit

TSK The Sleuth Kit

UFS Unix File System

USB Universal Serial Bus

Page 9: Perícia Forense em Sistemas Operacionais Open Source

SUMÁRIO

1. INTRODUÇÃO ........................................................................................................ 11

Objetivos. ................................................................................................................... 11

Justificativa. ................................................................................................................ 12

2. CONCEITO DE PERÍCIA FORENSE COMPUTACIONAL ............................ 13

3. PROCEDIMENTOS ................................................................................................ 14

3.1 Identificando as evidências. ....................................................................................... 14

3.2 Preservando as evidências.. ........................................................................................ 14

3.3 Analisando as evidências............................................................................................ 16

3.4 Apresentando a análise.. ............................................................................................. 17

3.5 Cadeia de custódia.. .................................................................................................... 18

4. MELHORES PRÁTICAS NA FORENSE COMPUTACIONAL ....................... 20

4.1 Quem estabelece as melhores práticas. ...................................................................... 20

4.2 Quem deve seguir as melhores práticas.. ................................................................... 20

4.3 Resumo das melhores práticas.. ................................................................................. 21

4.3.1 Dados voláteis e forenses ao vivo.. ............................................................................ 21

4.3.2 Melhores práticas na preservação de provas.. ............................................................ 22

4.3.3 Melhores práticas na aquisição de provas.. ................................................................ 23

4.4 O que acontece em muitos casos ................................................................................ 27

5. EVIDÊNCIAS DIGITAIS ....................................................................................... 28

5.1 Sistemas de arquivos .................................................................................................. 28

5.1.1 MACtimes ................................................................................................................... 32

5.2 Ferramentas de processamento digital de provas ....................................................... 33

5.2.1 The Coroner’s Toolkit e Sleuth Kit............................................................................. 39

5.3 Recuperação de dados ................................................................................................ 41

5.3.1 Ferramentas baseadas em Linux ................................................................................. 42

5.3.2 Data Carving .............................................................................................................. 47

5.3.3 Dump de memória ...................................................................................................... 49

5.4 Arquivos de log .......................................................................................................... 50

5.5 Tráfego de rede ........................................................................................................... 52

5.5.1 Captura e análise do tráfego de rede .......................................................................... 53

6. ESTUDO DE CASO ................................................................................................. 56

7. METODOLOGIA .................................................................................................... 67

Page 10: Perícia Forense em Sistemas Operacionais Open Source

8. RESULTADOS ......................................................................................................... 68

9. CONCLUSÕES ........................................................................................................ 69

10. REFERÊNCIAS ....................................................................................................... 70

Page 11: Perícia Forense em Sistemas Operacionais Open Source

11

1. INTRODUÇÃO

Problema da pesquisa

A popularização e a revolução computacional como eram de se esperar atingiram

também o mundo dos crimes. As tecnologias dos computadores estão envolvidas cada vez

mais em atividades ilícitas, como invasão de sistemas, disseminação de pornografia infantil,

fraudes, roubos entre outros. Como a perícia forense computacional pode colaborar na

solução de crimes virtuais?

Hipótese

A perícia forense computacional possui procedimentos, programa de melhores

práticas, alguns sistemas operacionais, diversas ferramentas e hardwares específicos que são

capazes de adquirir e analisar dados, cujo objetivo é o de transformar evidências em provas

para a solução de um crime virtual.

Objetivos

O objetivo desse trabalho é apresentar um conteúdo que permita o entendimento

sobre a perícia forense computacional, a fim de compreender como age a perícia

computacional em busca de provas para se chegar à solução de um crime virtual. Pretende-se

demonstrar de forma clara e objetiva os fundamentos teóricos, os procedimentos padrões, as

melhores práticas aplicadas na forense computacional, às evidências digitais mais comuns

encontradas nos sistemas operacionais que utilizam o núcleo do Linux, as ferramentas para

preservação, aquisição, análise e recuperação de evidências que podem ser utilizadas como

provas.

O objetivo específico desse trabalho é descrever como se deve lidar com evidências

encontradas em sistemas operacionais que utilizam o núcleo do Linux, para um maior

entendimento será realizado um estudo de caso que visa identificar, preservar e analisar as

principais evidências de um sistema que estaria envolvido com algum tipo de delito cometido

virtualmente, para a realização será utilizado técnicas e ferramentas específicas para a perícia

forense computacional, aplicadas em um ambiente de teste.

Page 12: Perícia Forense em Sistemas Operacionais Open Source

12

Justificativa

Nos dias atuais praticamente tudo em um mundo informatizado funciona a base de

softwares e hardwares, desde celulares até simples eletrodomésticos que possuem um

programa lógico para mostrar as horas.

Com o crescimento desenfreado da tecnologia, veio os criminosos que aproveitam de

todos os tipos de tecnologia para cometer delitos a todas e quaisquer pessoas e empresas. Por

esse motivo, surgiu à área de perícia forense computacional, que apesar de ser um campo de

pesquisa relativamente novo e estar em expansão, ainda é pouco divulgada e é carente de

profissionais e pesquisas na área, principalmente no Brasil.

A perícia forense é um campo muito amplo, são diversas ferramentas e técnicas que

podem ser utilizadas, porém, muitos dos procedimentos e ferramentas são difíceis de serem

aplicados na prática por falta de material explicativo, pois na perícia forense, cada caso requer

uma forma de se analisar e obter evidências.

A perícia forense torna-se a cada dia mais importante na vida das empresas, pessoas

e autoridades, isso devido ao enorme crescimento de crimes cibernéticos que afetam a vida

das pessoas e geram prejuízos incalculáveis para as empresas.

No Brasil conta-se ainda com poucos profissionais e pesquisadores na área, o que

acaba dificultando o estudo e conhecimento para muitas pessoas, já que os materiais, como

livros e artigos em língua portuguesa são poucos, mas a tendência é que a perícia forense se

torne cada vez mais popular, com mais pesquisas e profissionais na área para atuarem no

combate a crimes cibernéticos.

Page 13: Perícia Forense em Sistemas Operacionais Open Source

13

2. CONCEITO DE PERÍCIA FORENSE COMPUTACIONAL

A perícia forense também chamada de computação forense, forense computacional,

criminalística computacional, forense digital, investigação eletrônica e perícia eletrônica é a

ciência que estuda a aquisição, preservação, recuperação e análise de dados armazenados em

mídias eletrônicas, com a utilização de conhecimentos computacionais, juntamente com

técnicas de investigações, a fim de se obter evidências (FREITAS, 2006).

O objetivo da perícia forense é a busca e coleta de evidências relacionadas com o

caso investigado, que permitam uma formulação de conclusões acerca da infração. O objetivo

final da perícia forense é composta por duas abordagens. A primeira é a análise em busca de

informações que tenham valores coerentes de acordo com as leis vigentes, e serem utilizadas

no processo criminal. Na segunda análise o exame é realizado dentro de uma corporação, com

o objetivo de determinar a causa do incidente e assegurar que não ocorra novamente, sem que

haja preocupações com as formalidades legais (ESPINDULA, 2009).

Mesmo que não haja intenção de um processo criminal ser instituído, toda

investigação deve considerar por padrão a utilização de protocolos e metodologias que

garantam uma possível aceitação na corte de justiça (KRUSE; HEISER, 2002).

O problema de resolver um mistério computacional nem sempre é fácil, existe a

necessidade de não se observar o sistema como um usuário comum e sim como um detetive

que examina a cena de um crime. Nesse quesito os programadores levam alguma vantagem

neste assunto, pois muita das habilidades necessárias para se procurar um erro em um código

fonte, são também necessárias para uma análise forense, tais como: raciocínio lógico,

entendimento das relações de causa e efeito em sistemas computacionais e talvez a mais

importante, ter uma mente aberta. (FARMER; VENEMA, 2007).

Assim como em uma investigação criminal normal, existem procedimentos segundo

Freitas (2006), que devem ser seguidos pela perícia para que as evidências não sejam

comprometidas, substituídas ou perdidas, caso isso não ocorra, os juízes poderão considerar

as evidências inadmissíveis e os advogados de defesa poderão contestar a legitimidade da

evidência, podendo o processo ser prejudicado.

Page 14: Perícia Forense em Sistemas Operacionais Open Source

14

3. PROCEDIMENTOS

Basicamente a forense computacional em sua essência é composta por quatro

processos básicos, as evidências precisam ser identificadas, preservadas, analisadas e

apresentadas. Em uma investigação forense, as tarefas a serem desenvolvidas podem percorrer

todos os elementos básicos acima, ou, somente alguns deles (FREITAS, 2006).

3.1 Identificando as evidências

As evidências em um crime virtual podem ser diversas, tudo depende do tipo de

delito cometido, em um caso de disseminação de pornografia infantil, o perito pode realizar

buscas por imagens armazenadas no computador do suspeito, arquivos temporários do

navegador de Internet e o histórico de sites visitados, já em uma ocorrência de acesso não

autorizado, os arquivos de log podem ser uma evidência muito valiosa. (FREITAS, 2006).

A identificação das provas vai depender da competência do perito e seu

conhecimento sobre o tipo de crime envolvido, juntamente com sua habilidade em programas

de computadores e sistemas operacionais. Segundo Freitas (2006), para serem encontradas

evidências concretas deve-se:

Realizar uma busca por todos os dispositivos eletrônicos que possam conter possíveis

evidências armazenadas;

Buscar por qualquer tipo de informação que possa ser relevante para o caso: telefones,

nomes, documentos, anotações, etc.;

Diferenciar as evidências que possam ser úteis e não úteis para o caso, através de uma

análise ao vivo.

3.2 Preservando as evidências

De acordo com Freitas (2006), a regra essencial durante uma investigação é a de que

o perito em hipótese alguma altere ou destrua as provas. Neste caso, para que as evidências

não tenham sua veracidade contestada é importante que as provas sejam preservadas.

Algumas regras importantes precisam ser seguidas para que as provas não sejam

comprometidas, substituídas ou perdidas durante o transporte ou análise no laboratório. As

seguintes etapas devem ser seguidas:

Page 15: Perícia Forense em Sistemas Operacionais Open Source

15

Para as evidências serem analisadas de forma segura, deve-se criar uma imagem do sistema

que será periciado, comumente conhecido como duplicação pericial;

Em caso de necessidade, aplicar a técnica de análise ao vivo, realizando a gravação das

evidências em mídias que permitam o bloqueio contra regravação;

Se necessário realizar uma análise ao vivo, gravar as evidências em mídias que permitam o

bloqueio contra regravação;

As evidências deverão ser colocadas em sacos e etiquetadas, após isso o saco deve ser

lacrado;

A etiqueta deverá conter informações importantes para que não haja nenhum tipo de

fraude, como o número para identificação das evidências, o número do caso, a data e o

horário em que a evidência foi coletada e o nome da pessoa que está levando para custódia;

Os componentes e cabos do computador devem ser etiquetados, assim o perito conseguirá

realizar a montagem de forma correta quando for realizar a perícia;

Para evitar possíveis danos ou dados corrompidos, o disco rígido deve ser colocado em

saco antiestática;

Prevenir-se de possíveis fatores que possam comprometer as provas durante o transporte,

como umidade, líquidos, sujeira, eletricidade e etc.;

Após ter sido transportada, as evidências devem ser colocadas em um local seguro que não

permita ninguém alterar as provas, para posteriormente serem analisadas;

Ser for necessário realizar alguma mudança durante essa etapa, é preciso que seja

documentado e justificado através da cadeia de custódia.

Figura 1: Disco rígido apreendido como evidência

Fonte: World of Forensic Science (2006)

Page 16: Perícia Forense em Sistemas Operacionais Open Source

16

3.3 Analisando as evidências

Na etapa de análise, Daniel Larry (2012) e Daniel Lars (2012), descrevem que é o

processo onde se deve localizar e recolher elementos que sirvam de provas a partir de

evidências que foram coletadas durante um caso. Em um caso envolvendo infidelidade

conjugal, a evidência que deve ser localizada pode incluir registros de e-mails e bate-papo

entre o cônjuge e o amante. Já em um caso de fraude, registros financeiros seria o alvo da

análise, bem como a eventual eliminação de registros envolvendo transações financeiras. Em

outro caso como o de pedofilia, o alvo da análise seria a localização de vídeos e imagens.

Cada caso é único, por esse motivo as circunstâncias podem variar amplamente, não só na

evidência pretendida, mas também na abordagem para realizar a análise. Uma parte da análise

é constituída por habilidades individuais, ferramentas utilizadas, bem como a formação do

perito forense, essa parte é a que tem mais impacto no resultado de um exame. Considerando

que as provas eletrônicas podem aparecer em muitas formas e virem de tantos lugares

diferentes e dispositivos, que a formação e a experiência do perito começam a ter um impacto

cada vez maior no sucesso do exame.

A fase de análise é também onde a disparidade passa a se tornar um fator importante

entre as competências e abordagens de um perito de informática e os de um perito forense

computacional. Enquanto um perito de computador pode entender sobre muitos aspectos do

uso do computador e a manipulação de dados, um especialista forense devidamente treinado

vai ser muito competente em recuperação de dados, assim como nas técnicas de análises

adequadas (DANIEL, Larry; DANIEL, Lars, 2012).

Análise de evidências digitais é mais do que somente determinar se algo como um

arquivo existe em um disco rígido, ela também é composta em descobrir o porquê do arquivo

estar no disco rígido e, se possível, quem as colocou lá (DANIEL, Larry; DANIEL, Lars,

2012).

Quando um perito vai analisar um sistema comprometido para Burdach (2010), antes

de realizar qualquer atividade no sistema comprometido é obrigatório criar uma cópia em

papel todo o procedimento de coleta de dados. Este procedimento ajuda a evitar erros durante

a análise de um incidente. Devem-se fazer anotações complementares após cada etapa final,

mesmo que algo tenha dado errado. A documentação é muito importante se a pretensão for de

levar o caso para um tribunal.

Page 17: Perícia Forense em Sistemas Operacionais Open Source

17

O próximo passo é registrar os resultados dos comandos executados durante a coleta

de informações. A partir daí o perito liga um host1 de destino para a mesma rede local em que

estará enviando informações a partir do host comprometido. Nessa etapa o perito não está

autorizado a escrever quaisquer resultados no sistema comprometido. Gravando dados

localmente na máquina comprometida o perito pode excluir quaisquer sinais de invasão. Para

o impacto ser menor, é necessário enviar todos os dados digitais a um computador remoto ou

um host de destino, esta é uma das regras mais importantes na análise forense que nem

sempre são fáceis de cumprir (BURDACH, 2010).

Após a análise das evidências estarem concluídas, o perito poderá responder algumas

perguntas segundo (FREITAS, 2006):

Qual era o sistema operacional do computador suspeito?

Qual usuário estava ativo na hora que ocorreu o crime?

Que tipos de arquivos o criminoso utilizou?

Quais as portas de comunicação estavam abertas?

Quais os últimos usuários que efetuaram logon no sistema?

Quantos e quem eram os usuários do sistema operacional, eles pertenciam a algum

grupo?

Que tipos de arquivos foram deletados?

3.4 Apresentando a análise

A apresentação dos resultados do perito para Daniel Larry (2012) e Daniel Lars

(2012) é o passo final no processo de análise forense de provas digitais. Esta etapa inclui não

apenas os resultados escritos ou relatórios, mas também a apresentação dos depoimentos dos

peritos e testemunhas da corte. Não existem regras severas, rápidas ou padrões para relatar o

resultado de um exame, cada órgão ou entidade privada pode ter suas próprias diretrizes

específicas para o relatório, dessa forma, relatórios de exame forense devem ser escritos de

forma clara, precisa e objetiva, explicando o que foi examinado, as ferramentas utilizadas

durante a investigação, os processos utilizados e os resultados da perícia. O relatório deverá

1 Por definição, host é qualquer computador ou máquina conectado a uma rede, que conta com número

de IP e nome definidos, podendo oferecer informações, recursos, serviços e aplicações aos usuários ou

outros nós na rede. Disponível em: http://www.techtudo.com.br/artigos/noticia/2012/02/o-que-e-um-

host.html

Page 18: Perícia Forense em Sistemas Operacionais Open Source

18

incluir também os métodos de coletas utilizados, incluindo medidas específicas tomadas para

proteger e preservar a prova original e como a verificação da prova foi realizada. De forma

geral um relatório forense digital deve incluir os seguintes itens:

Formação e experiência do perito;

Ferramentas utilizadas durante a análise;

Os métodos utilizados para verificar os dados;

Processo utilizado para recuperar e extrair os dados;

Os dados reais recuperados para apoiar na decisão final do processo.

3.5 Cadeia de custódia

A cadeia de custódia é um documento que tem como função provar onde as

evidências encontravam-se em certo momento e quem era o responsável por tais durante o

processo de perícia. Ao serem documentadas essas informações, é possível ter certeza que a

integridade das evidências não foram comprometidas (FREITAS, 2006).

Um aspecto fundamental da preservação de dados digitais na descoberta de provas é

iniciar e manter a cadeia de custódia e controle de dados eletrônicos. Um processo de custódia

bem documentado permite que os dados a serem submetidos sirvam como provas em um

tribunal, em um processo judicial ou administrativo (HOLLEY et al., 2011).

Uma cadeia de custódia bem documentada será necessária no processo para

demonstrar que os dados coletados e preservados não mudaram e que as impressões dos dados

são cópias precisas do original (HOLLEY et al., 2011).

Figura 2: Cadeia de custódia – preservação começa antes de os dados serem coletados e termina na

disposição final.

Fonte: Larry Daniel e Lars Daniel (2012, p. 27)

Page 19: Perícia Forense em Sistemas Operacionais Open Source

19

Figura 3: Exemplo do documento de uma cadeia de custódia.

Fonte: FREITAS (2006, p. 6)

Page 20: Perícia Forense em Sistemas Operacionais Open Source

20

4. MELHORES PRÁTICAS NA FORENSE COMPUTACIONAL

Para uma perícia forense ser eficiente, é necessário que se tenha um programa de

melhores práticas, para que não ocorra algum procedimento errado que possa prejudicar todo

o restante do processo. (DANIEL, Larry; DANIEL, Lars, 2012).

4.1 Quem estabelece as melhores práticas

O Instituto Nacional de Justiça e a Associação de Chefes de Polícia definem padrões

mínimos para o recolhimento e preservação de provas digitais. Essas diretrizes são

desenvolvidas com a participação da aplicação da lei, governo, acadêmicos e profissionais da

indústria. As melhores práticas são propagadas para a indústria através de publicações e

programas de treinamentos forenses digitais. Existem algumas certificações para os

profissionais que atuam na área de perícia forense como o EnCase Certified Examiner

(EnCE), Computer Certified Examiner (CCE), Access Certified Examiner (ACE), Computer

Forensics Certified Examiner (CFCE) e o GIAC Certified Forensic Analyst (GCFA) com o

intuito de reforçar essas práticas, garantindo que a pessoa a ser certificada tenha uma

compreensão dos procedimentos adequados para receber corretamente e preservar provas

eletrônicas (DANIEL, Larry; DANIEL, Lars, 2012).

4.2 Quem deve seguir as melhores práticas

Toda pessoa que se propõe a trabalhar com um computador ou um perito forense

digital deve sempre seguir as melhores práticas estabelecidas na área atuante. Isso é de vital

importância em um campo onde os resultados das ações do perito devem ser usados para

fornecer resultados de prova com base na identificação, preservação e análise de provas. Caso

não siga as melhores práticas o trabalho do perito forense fica aberto ao desafio e a

possibilidade de as evidências coletadas não servirem como provas. O resultado de não aderir

nem o mínimo das melhores práticas, é a dúvida sobre a competência e qualificações do

perito, que por esse motivo, pode prejudicar a totalidade do trabalho. Também é altamente

provável que um perito forense será interrogado sobre as melhores práticas quando for depor

em um tribunal (DANIEL, Larry; DANIEL, Lars, 2012).

Page 21: Perícia Forense em Sistemas Operacionais Open Source

21

4.3 Resumo das melhores práticas

As melhores práticas são aplicáveis à coleta e preservação de provas. Estas são as

duas partes críticas para garantir que as provas serão aceitas em um tribunal como sendo

autênticas e uma representação precisa da evidência original. Modificação de provas,

intencionalmente ou acidentalmente, pode ter um efeito devastador sobre todo o processo.

(DANIEL, Larry; DANIEL, Lars, 2012).

Analisando a preservação das provas como a parte essencial da coleta e aquisição de

evidências digitais, pode-se notar que a necessidade de proteger e preservar as provas começa

antes mesmo de os dados serem coletados, copiados ou analisados, e só termina na disposição

final das provas. Seja essa disposição para devolver os itens coletados ao proprietário, a

apreensão definitiva dos itens ou a destruição das provas através de uma ordem de destruição,

a preservação das provas devem permanecer. Na área de forense computacional, a

preservação é a proteção geral das provas, enquanto a aquisição é o ato de fazer cópias

forenses de evidências digitais a partir de discos rígidos, outras mídias físicas ou de

dispositivos voláteis (DANIEL, Larry; DANIEL, Lars, 2012).

4.3.1 Dados voláteis e forenses ao vivo

Algumas evidências só estão presentes no momento em que um computador ou

servidor estão em funcionamento e serão perdidas caso o equipamento seja desligado. Provas

que estão presentes somente quando o computador está em execução são chamadas de

evidências voláteis e devem ser coletadas ao vivo usando métodos forenses. Isto inclui as

evidências que estão na memória RAM (Random Access Memory), tal como um programa que

só está presente na memória RAM do computador (DANIEL, Larry; DANIEL, Lars, 2012).

Muitos tipos de malware, tais como programas de cavalo de tróia, vírus e worms são

projetados para ficarem hospedados na memória RAM, e só aparecem quando o computador

está em execução e desaparecem quando o computador é desligado, em muitos casos, sem

deixar nenhum tipo de vestígio. Há também muitos tipos de evidências voláteis que só estão

disponíveis quando o computador está em execução, incluindo determinados arquivos

temporários, arquivos de log, arquivos de cache e senhas. A memória RAM é apagada quando

um computador é desligado e os dados presentes são perdidos. Este pode ser um passo crítico,

se houver suspeita de que haja algum tipo de criptografia de dados que impeça o disco rígido

ou partes dele de serem visualizados. Em muitos casos, a única maneira de recuperar a senha

Page 22: Perícia Forense em Sistemas Operacionais Open Source

22

necessária para remover a criptografia de um disco rígido é coletar a “memória ao vivo” antes

que o computador seja desligado. Além disso, se o computador está sendo executado, a parte

criptografada do armazenamento de dados seria acessível, mas só até o computador ser

desligado, tornando-se essencial que o disco rígido do computador seja copiado enquanto ele

estiver ligado. Existem ferramentas disponíveis para fazer cópias da memória RAM e discos

rígidos em computadores ou servidores que estejam em execução (DANIEL, Larry; DANIEL,

Lars, 2012).

4.3.2 Melhores práticas na preservação de provas

Quando uma prova é coletada segundo Daniel Larry (2012) e Daniel Lars (2012), ela

deve ser preservada em um estado que possa ser usada como defesa em um tribunal.

Preservação é o processo de criação de uma cadeia de custódia, que começa antes da coleta e

termina quando a evidência é liberada para o proprietário ou destruída. Os passos de

preservação incluem:

Identificação: identificar o tipo e a localização de uma prova digital pode ser um desafio. O

perito precisa de um mandado de intimação ou de busca, que é fundamental para coleta de

provas digitais em qualquer local, como, discos rígidos de computadores, telefones

celulares, câmeras digitais, aparelhos de GPS, dispositivos de armazenamento portáteis,

como discos rígidos USB e até mesmo iPods. Este é o primeiro passo que precede as

etapas. Não é aceitável simplesmente coletar tudo quando você chega a um local suspeito,

o que você está indo recolher deve ser previamente identificado, e depois ser solicitado um

mandado de busca, senão, as evidências não servirão como provas durante o processo no

tribunal. Caso ocorra a coleta de itens não identificados previamente, as provas poderão ser

contestadas em uma ação legal. A linguagem durante a identificação deve ser específica e

possuir terminologia correta, usando termos como “CPU” em vez de computador, significa

que você pode recolher apenas a unidade central de processamento de um computador e

não o próprio computador. Utilizando um termo em que você especifica a coleta do disco

rígido, será permitida a remoção e coleta do disco rígido, mas não o computador inteiro.

Somente com o disco rígido você seria capaz de analisar as provas, porém, não seria capaz

de identificar datas relativas aos arquivos por não possuir o computador por completo, isso

acaba se tornando um problema para a investigação;

Page 23: Perícia Forense em Sistemas Operacionais Open Source

23

Coleta: A etapa de coleta é crucial, pois este é o primeiro contato real com a evidência.

Não seguir corretamente a etapa de coleta pode levar a destruição ou alteração das provas.

Se alguém tentar coletar dados de um dispositivo e não conhece os métodos adequados,

como operar o computador antes de desliga-lo ou desligar um servidor de negócios críticos

inadequadamente, pode levar a perda de provas críticas que poderiam ser coletadas antes

do encerramento. Coleta pode incluir um ou todos os itens seguintes:

Fotografar a prova no lugar antes da coleta ou duplicação;

Completar o inventário de cada item, incluindo a identificação das informações,

tais como números de série, fabricante e descrições;

Marcar cada item para rastreamento e identificação;

Proteger cada item para evitar operação ilegal;

Ensacar cada item em um recipiente seguro que deve ser selada com fita a prova

de violação, para assegurar que a evidência não seja modificada ou danificada

durante o transporte;

Colocar itens coletados em áreas de armazenamento seguro;

Procedimentos adequados de check-in e check-out, com uma cadeia de custódia

mantida para qualquer acesso ou transporte das provas;

Disposição final das provas, registradas em uma cadeia de custódia para qualquer

evidência que for liberada ou destruída.

4.3.3 Melhores práticas na aquisição de provas

A aquisição de provas segundo Daniel Larry (2012) e Daniel Lars (2012), é a parte

do processo judicial, durante o qual as informações originais são copiadas ou duplicadas. É

fundamental seguir os procedimentos adequados para garantir a integridade das provas. A

parte de aquisição pode ainda ser dividida em duas etapas: a duplicação e a verificação.

Duplicação: Este é um passo que é facilmente executado incorretamente, especialmente se

for feita por alguém que não é treinado corretamente para realizar a duplicação de provas

eletrônicas. O único método aceito para duplicação de provas eletrônicas é que a prova seja

protegida contra qualquer possibilidade de alteração durante o processo de duplicação. Isto

Page 24: Perícia Forense em Sistemas Operacionais Open Source

24

requer a utilização de ferramentas e técnicas forenses. Usando métodos não forenses pode-

se levar a modificação da evidência original ou cópias incompletas.

Método forense: O método adequado para duplicação de evidências em um disco

rígido de computador ou outro dispositivo de armazenamento de mídia requer o

uso do bloqueio de gravação do dispositivo de armazenamento original. O

bloqueio contra gravação pode ser conseguido pelo uso de um dispositivo de

hardware físico que é ligado entre o original e a cópia do disco rígido, conforme

figura 4, ou usando uma mídia especial de inicialização que pode iniciar um

computador de forma forense. A melhor opção para fazer uma cópia forense de

um disco rígido é remover o mesmo do computador, conecta-lo a um bloqueador

físico contra gravação, e em seguida, utilizar uma estação de trabalho forense e

softwares forenses para realizar a cópia. No entanto, em alguns casos, a remoção

da unidade de disco rígido não é fácil, especialmente em computadores portáteis.

Quando este for o caso, o método mais adequado é realizar a cópia do disco

usando um software que permita o bloqueio contra gravação. Quando um

computador é ligado pela primeira vez, ele passa por um conjunto de etapas,

começando com um Power On Self Test (POST), seguido pela carga do Basic

Input Output System (BIOS). O BIOS é um software que fica armazenado na placa

principal do computador, ele diz ao computador quais os tipos de discos rígidos

estão presentes, inicializa o teclado e outras portas de entrada e saída, tais como as

portas USB, inicializa a placa de vídeo do computador e, basicamente, prepara os

hardwares do computador para operar antes do sistema operacional ser carregado.

Podem ser efetuadas configurações no BIOS para dizer ao computador onde

procurar o sistema operacional para ser iniciado, como em um disco rígido, a

partir de um disquete, um CD-ROM ou um dispositivo USB. Durante o processo

normal o computador irá carregar o sistema operacional instalado no disco rígido,

mudando as configurações do BIOS é possível impedir o computador de iniciar o

sistema operacional pelo disco rígido e carregar um sistema operacional a partir

de um CD-ROM, disquete ou pelo dispositivo USB. Ao se preparar para realizar

uma cópia do disco rígido, o perito forense carrega um sistema operacional

forense especial a partir de uma mídia de inicialização. Mídias de inicialização

especiais são mídias que contém um sistema operacional que é capaz de inicializar

um computador, mas não permite gravação de dados no disco rígido original,

esses sistemas operacionais forenses são modificados para efetivamente desativar

Page 25: Perícia Forense em Sistemas Operacionais Open Source

25

a capacidade de um computador realizar modificações nos arquivos originais

gravados no disco rígido. Uma vez que o computador é iniciado, ou com um

hardware de bloqueio de gravação ou por meio de um sistema operacional

forense, o examinador consegue fazer uma cópia exata da superfície de gravação

do disco rígido inteiro;

Figura 4: Bloqueador físico de gravação entre as unidades de disco rígido.

Fonte: Larry Daniel e Lars Daniel (2012, p. 29)

Método não forense: As pessoas não treinadas pata atuar com métodos forenses

adequados para a duplicação de provas digitais podem iniciar um computador de

forma errada e então realizar cópia de dados no disco rígido. Quando o

computador é iniciado de forma normal, o sistema operacional pode escrever no

disco rígido e acabar realizando alterações nos arquivos de datas, arquivos de log

e outros tipos de arquivos de forma definitiva, ele acaba modificando e destruindo

provas críticas. A figura 5 mostra dois discos rígidos conectados sem qualquer

proteção no disco rígido que contém as evidências originais, esse processo coloca

as provas contidas ali em risco.

Figura 5: Disco rígido sendo copiado sem proteção.

Fonte: Larry Daniel e Lars Daniel (2012, p. 31)

Page 26: Perícia Forense em Sistemas Operacionais Open Source

26

Métodos não forenses incluem geralmente, cópias simples de arquivos de um

disco rígido para outro dispositivo de armazenamento ou utilizando um programa

de backup como o Norton Ghost. O Norton Ghost tem a capacidade de fazer uma

cópia completa do disco rígido, porém, geralmente não é aceita como um método

forense, porque cópias fantasmas dificultam a verificação e o uso de valores de

hash. A razão para isso é que o Norton Ghost não possui um método para criação

de um valor de hash da evidência que está sendo copiada durante o processo de

cópia. Além disso, uma cópia não utilizando os métodos forenses fará com que se

consigam apenas os dados armazenados no disco rígido, tais como documentos,

planilhas e histórico da Internet. A cópia não utilizando métodos forenses, não

permitirá a recuperação de arquivos apagados ou análise das áreas do disco rígido,

onde a evidência que não é visível para o usuário ainda pode residir.

Verificação: Este é o passo final no processo de cópia forense. A fim de que a prova seja

admissível, deve haver um método para verificar que a evidência apresentada seja

exatamente a mesma que a original recolhida. A verificação é realizada por meio de um

algoritmo matemático que calcula um número com base no conteúdo da prova. A figura 6

ilustra a unidade e o processo de geração de hashes para os arquivos copiados. Isto é

chamado de criação de um valor de hash e é realizada utilizando o algorítmo Message

Digest 5 (MD5) ou o Secure Hash Algorithm (SHA). O MD5 é o método mais comum

utilizado para verificação na computação forense. Ferramentas forenses de duplicação

criam automaticamente uma verificação de hash para o original e a cópia durante o

processo de duplicação. Se estes valores de hash não coincidirem, surge à dúvida sobre a

autenticidade da prova.

Figura 6: Um valor de hash é calculado e armazenado para cada dado copiado.

Fonte: Larry Daniel e Lars Daniel (2012, p. 32)

Page 27: Perícia Forense em Sistemas Operacionais Open Source

27

4.4 O que acontece em muitos casos

Com a propagação de telefones celulares, computadores e outros dispositivos digitais

como evidência potencial em condenações por crimes, os recursos de aplicação da lei se

tornaram cada vez mais aprimorados, o que acaba por se tornar de extrema importância que o

perito seja treinado para seguir as melhores práticas (DANIEL, Larry; DANIEL, Lars, 2012).

O que ocorre em muitos casos, porém, é que agentes acabam por modificar

acidentalmente a evidência por falta de treinamento, ou o departamento responsável não teve

a oportunidade de estabelecer os procedimentos para lidar com evidências digitais (DANIEL,

Larry; DANIEL, Lars, 2012).

Do lado civil, devido à falta de peritos qualificados para contratação, advogados

particulares estão utilizando o pessoal de suporte de tecnologia da informação, em vez de

peritos forenses para coletar a analisar evidências. Os suportes de tecnologia da informação

não estão treinados para seguirem as melhores práticas, consequentemente não seguem

qualquer metodologia para proteger e preservar a evidência original, além de não usarem as

ferramentas adequadas para coleta e preservação das provas. Falta de conhecimento das

melhores práticas anda junto com a não utilização de ferramentas adequadas para a coleta

segura de provas (DANIEL, Larry; DANIEL, Lars, 2012).

Page 28: Perícia Forense em Sistemas Operacionais Open Source

28

5. EVIDÊNCIAS DIGITAIS

Evidências digitais para Casey (2000) são quaisquer dados que podem provar que um

crime tenha sido cometido, ou que possa fornecer uma ligação entre um crime e sua vítima ou

um crime e seu autor. A definição proposta pelo Standard Working Group on Digital

Evidence (SWGDE) para evidência digital, é qualquer informação de valor probatório, que é

armazenado ou transmitido em forma digital. Outra definição proposta pela International

Organization of Computer Evidence (IOCE), é qualquer informação armazenada ou

transmitida de forma binária que pode ser utilizada em um tribunal. No entanto, essas

definições focam demais na negligência de provas e dados do que simplesmente em uma

investigação. Além disso, a definição do termo binário é muito vaga, descrevendo apenas uma

das muitas representações comuns de dados informatizados. Uma definição mais ampla

proposta pela Association of Chief Police Officers, é a informação e dados transmitidos ou

armazenados por um computador que possuem algum valor para a investigação. Uma

definição mais geral proposta por Carrier (2006) para evidências eletrônicas: são dados que

suportam ou refutem uma hipótese sobre eventos digitais ou o estado dos dados digitais.

5.1 Sistemas de arquivos

Existem diversos sistemas de arquivos em sistemas operacionais open source,

incluindo Unix File System (UFS), Reiser, Extended File System 2 (EXT2) e Extended File

System 3 (EXT3) que possuem estruturas parecidas. Embora os diretórios desempenhem um

papel em sistemas de arquivos Linux, eles são muito mais simples do que os existentes no

sistema operacional Windows, no Linux eles contém apenas uma lista de nomes de arquivos e

seu número de inode2 associado. Cada arquivo possui uma entrada associada na tabela de

inode, identificado pelo número de inode, que contém todas as informações sobre o arquivo,

além de seu nome. Na figura 7 é possível visualizar o conteúdo de um inode que incluem data

e hora, número de bytes do ficheiro e quais os clusters no disco contêm esses dados (CASEY,

2011).

2 Em sistemas operacionais, um nó-i (inode, ou index node) é uma estrutura de dados constituinte de

um sistema de arquivos que segue a semântica UNIX. O nó-i armazena informações sobre um arquivo,

tais como o dono, permissões e sua localização.

Page 29: Perícia Forense em Sistemas Operacionais Open Source

29

Figura 7: Representação de um diretório e o seu inode associado.

Fonte: CASEY (2011, p. 553)

Os sistemas de arquivos Linux quebram cada partição em grupos de blocos, cada um

com o seu próprio inode e blocos de dados. Dividir os dados desta forma evita danos

catastróficos dos arquivos de sistema, porque não há um ponto único de falha. Se a área do

disco que contém um grupo de blocos que está danificado, apenas os dados desse grupo são

afetados, deixando os dados de outros grupos intactos (CASEY, 2011).

Figura 8: Visão geral dos sistemas de arquivos Linux.

Fonte: CASEY (2011, p. 554)

Além de conter dados, cada grupo de blocos possui uma duplicação dos componentes

essenciais dos arquivos de sistema, isto é, o superbloco e o descritor de grupo, para facilitar a

recuperação se a cópia primária for danificada. O superbloco contém informações sobre os

arquivos de sistema, tais como o tamanho do bloco, número de blocos por grupo de bloco, a

última vez que os arquivos de sistema foram montados, última vez que foi escrito e

informações do setor de inode do diretório raiz (CASEY, 2011).

Page 30: Perícia Forense em Sistemas Operacionais Open Source

30

Descritores de grupo contêm as informações mais importantes para cada grupo de

bloco, incluindo a localização da tabela de inode. Em todos os grupos de blocos os descritores

são duplicados, em caso de haver danos nos arquivos de sistema. Caso o descritor de grupo

primário de qualquer grupo de blocos for danificado, uma cópia de backup do descritor de

grupo poderá ser usada para reparar o dano. Se a tabela de inode em si está danificada, torna-

se mais difícil reconstruir os arquivos do grupo de blocos (CASEY, 2011).

Resumindo, quando um sistema é comandado para acessar um arquivo como

“/etc/passwd”, ele procura primeiro no superbloco para o setor de inode número 2 para

encontrar o diretório raiz, conforme mostrado na figura 10. O sistema lê o diretório raiz até

encontrar a entrada para o “etc” com seu número de inode associado (inode 0x00038001 =

229377 na figura 10), ele lê os blocos de dados referenciados pelo inode 229377 até encontrar

a entrada para o “passwd”, e acessa o inode associado para identificar os blocos de dados

ocupados pelo arquivo de senha (CASEY, 2011).

Figura 9: Conteúdo do inode do diretório raiz.

Fonte: CASEY (2011, p. 555)

Se um arquivo possui mais dados que podem ser referenciados pelo campo de blocos

diretos em seu inode, blocos indiretos adicionais são utilizados para armazenar informações,

de forma mais clara, os blocos indiretos possuem listas de blocos de dados que contêm os

Page 31: Perícia Forense em Sistemas Operacionais Open Source

31

arquivos. Mesmo arquivos maiores podem exigir blocos indiretos adicionais, exceto quando

os blocos indiretos contiverem mais listas (secundárias ou 2x) ou blocos indiretos que

contenham listas dos blocos de dados que contêm o arquivo. Alguns sistemas de arquivos

permitem ainda um terceiro nível de blocos indiretos, conforme figura 11 (CASEY, 2011).

O Linux mantém um selo de data e hora de cada arquivo quando ele é excluído. No

caso da figura 11 o arquivo não foi excluído e o valor definido é um valor padrão. Quando um

arquivo é excluído, o Linux contabiliza seu tempo de exclusão em forma de tempo em vez de

época, é contabilizado o número de segundos desde 1 de Janeiro de 1970, 00:00:00 UTC

(CASEY, 2011).

Figura 10: inode do arquivo /etc/passwd.

Fonte: CASEY (2011, p. 556)

Quando um arquivo é apagado em um sistema Linux, a entrada de arquivo do

diretório fica escondida e as notas do sistema que possuem um inode associado estarão

disponíveis para reutilização. A entrada de arquivos do diretório, o inode e os dados

permanecem no disco até que sejam substituídos. Alguns sistemas como o Solaris, ext3 e

versões mais recentes do ext2 removem o número de inode do diretório, quebrando assim a

ligação entre as entradas de diretórios e inodes, tornado mais difícil à recuperação de arquivos

Page 32: Perícia Forense em Sistemas Operacionais Open Source

32

apagados. O sistema HP-UX apaga as entradas de diretórios completamente, tornando os

arquivos ainda mais difíceis de serem recuperados, os sistemas de arquivos mais novos

também quebram a ligação entre o inode e os setores que continham os dados, eliminando

assim todas as referências do sistema de arquivos para os dados (CASEY, 2011).

O sistema de arquivos ext3 Linux é semelhante ao ext2, mas o ext3 tem a capacidade

de executar registros no diário para facilitar a recuperação do sistema de arquivos e reparação

após uma falha de sistema. Assim como ocorre com o New Technology File System (NTFS),

atualmente não há ferramentas disponíveis para interpretar o arquivo de diário em ext3 para

determinar quais alterações foram feitas. Esta é uma fonte potencialmente rica de informações

para a perícia forense computacional que certamente será explorado no futuro (CASEY,

2011).

5.1.1 MACtimes

Na perícia forense computacional, muitas vezes, é mais importante identificar

quando algum evento ocorreu do que saber o que aconteceu. Informações relacionadas ao

tempo são muito relevantes em uma investigação (FARMER E VENEMA, 2007).

MACtimes são campos de metadados que registram a data e hora do último

acontecimento em um determinado arquivo ou diretório no (Windows, Linux ou outros tipos

de sistemas de arquivos, ele é um conjunto de três atributos de tempo, mtime, atime e ctime. O

mtime corresponde à data e hora da última vez que o arquivo ou diretório foi modificado, já o

atime corresponde à data e hora da última vez que o arquivo foi acessado, e o ctime registra

quando um conteúdo sobre um arquivo muda, como o proprietário, grupo, permissões e etc

(FARMER E VENEMA, 2007).

Para visualizar essas datas e horas no Linux basta utilizar o simples comando ls, ou

ainda através da utilização de outros tipos de ferramentas, como por exemplo, o mactime que

está presente no Coroner’s Toolkits (FARMER E VENEMA, 2007).

Os MACtimes são informações valiosas, porém muito frágeis, pois se alteram com

muita facilidade, ferramentas que gerenciam sistemas de arquivos por exemplo alteram o

atributo atime, assim como uma simples leitura de uma pasta ou arquivo também alteram esse

atributo, por isso é importante o perito trabalhar sempre com cópia das evidências originais, e

também desativar as atualizações de atime para que não corra o risco de alterar

acidentalmente os dados (FARMER E VENEMA, 2007).

Page 33: Perícia Forense em Sistemas Operacionais Open Source

33

5.2 Ferramentas de processamento digital de provas

Segundo Casey (2011) o Linux possui varias características que o tornam ideal para

aquisição de provas digitais e um sistema de exame forense. O sistema operacional Linux

contém muitos utilitários que são projetados para trabalharem em conjunto, a saída de

informações de uma ferramenta pode ser alimentada facilmente em outra ferramenta. O pipe

(representado por uma barra vertical “|”) permite a saída de um programa para outro criando

uma grande flexibilidade. Por exemplo, após um disco passar por uma sanitização, a

combinação de comandos a seguir pode ser usado para verificar se todos os setores estão

preenchidos com zeros:

dd if=/dev/hda | xxd | grep –v "0000 0000 0000 0000 0000 0000 0000 0000"

Este comando procura por algo que não é zero e deve retornar nada, desde que o

disco tenha sido limpo corretamente. O Linux suporta muitos tipos de sistemas de arquivos e

pode ser usado para examinar a mídia de um sistema UNIX, Windows, Macintosh e outros

sistemas. O Linux permite também acesso a dispositivos, tornando mais fácil a aquisição de

dados em mídias danificadas e burlar a proteção contra cópia em determinados cartões de

memória (CASEY, 2011).

Antes de realizar uma cópia de um fluxo de bits do disco, pode ser necessário

realizar uma busca por palavras chave para determinar se existem evidências digitais

importantes no sistema. Isto é útil quando é necessário procurar por itens específicos em um

grande número de sistemas. O modo mais eficiente para pesquisa em muitos computadores é

inicia-los usando um disco de inicialização de aquisição de evidência e executar um utilitário

de pesquisa no disco no prompt do Linux. O comando grep fornece a capacidade de busca de

palavras chave. Uma vez que um sistema com provas úteis tenha sido identificado, uma cópia

bitstream3 completa pode ser feita (CASEY, 2011).

O principal elemento para adquirir provas digitais usando o Linux é o comando dd. O

exemplo mais simples é usando o dd para realizar uma cópia bitstream de um disco rígido:

“dd if=/dev/hda of=copiadodiscorigido.dd”. O comando dd conta com muitas opções,

permitindo ao usuário especificar o tamanho do bloco de unidade das provas e salvar

segmentos de uma cópia bitstream em vários arquivos, em casos que é preciso gravar os

dados em discos compactos. A saída do dd pode ser salva em um arquivo, conforme mostrado

3 Cópia bitstream na forense computacional é uma cópia bit a bit dos dados da mídia de

armazenamento original. Disponível em:

http://www.pcrforensics.com/index.php?option=com_glossary&letter=B&id=52&Itemid=132

Page 34: Perícia Forense em Sistemas Operacionais Open Source

34

acima, ou em um disco rígido em branco para criar um clone, ou podem ser enviadas através

de uma conexão de rede a um sistema de coleta remoto usando netcat.

Quando se precisa lidar com discos rígidos que possuem varias partições, é

aconselhável realizar uma cópia bitstream de todo o disco primeiro e posteriormente extrair

partições individuais conforme necessidade (CARRIER, 2003). Desta forma para Casey

(2011), uma cópia completa do disco original é preservada. Além disso, antes de realizar uma

cópia bitstream, é de extrema importância para a perícia calcular o valor MD5 da unidade,

para documentar o disco rígido que está sendo copiado. Para obter informações sobre um

disco rígido e as partições no disco, utilizar os seguintes comandos em Linux:

Comando:

grep hd /var/log/dmesg

Exemplo de saída:

ide0: BM-DMA at 0xa890-0xa897, BIOS settings: hda:DMA, hdb:pio

ide1: BM-DMA at 0xa898-0xa89f, BIOS settings: hdc:pio, hdd:pio

hda: HITACHI_DK23DA-20, ATA DISK drive

hda: 39070080 sectors (20004 MB) w/2048KiB Cache, CHS=2584/240/63,

UDMA(100)

hda: hda1 hda2 hda3 hda4 < hda5 >

Comando:

/sbin/hdparm -I /dev/hda

Exemplo de saída:

/dev/hda:

ATA device, with non-removable media

Model Number: HITACHI_DK23DA-20

Serial Number: 14RM3D

Firmware Revision: 00J2A0F3

Standards:

Used: ATA/ATAPI-5 T13 1321D revision 3

Supported: 5 4 3 2 & some of 6

Configuration:

Logical max current

cylinders 16383 16383

Page 35: Perícia Forense em Sistemas Operacionais Open Source

35

heads 16 16

sectors/track 63 63

––

CHS current addressable sectors: 16514064

LBA user addressable sectors: 39070080

device size with M = 1024*1024: 19077 MBytes

device size with M = 1000*1000: 20003 MBytes (20 GB)

Capabilities:

<cut for brevity>

Comando:

/sbin/sfdisk -l -uS /dev/had

Exemplo de saída:

Disk /dev/hda: 2584 cylinders, 240 heads, 63 sectors/track

Units = sectors of 512 bytes, counting from 0

Device Boot Start End #sectors Id System

/dev/hda1 * 63 211679 211617 83 Linux

/dev/hda2 211680 20684159 20472480 83 Linux

/dev/hda3 20684160 22317119 1632960 82 Linux swap

/dev/hda4 22317120 39070079 16752960 f Win95 Ext'd (LBA)

/dev/hda5 22317183 39070079 16752897 83 Linux

Em algumas situações segundo Casey (2011), os peritos forenses precisarão calcular

o valor do resumo de mensagem de dados no disco para posterior comparação. O Linux

contém utilitários que fornecem o resumo de mensagem tais como o md5sum e sha1sum, que

podem ser usados para verificar a integridade das evidências digitais. A combinação de

comandos a seguir usa o dd para extrair dados de um disco rígido e direciona os dados para o

md5sum calcular o valor MD5 do disco:

Comando:

dd if=/dev/sda bs=512 | md5sum

Exemplo de saída:

2880+0 records in

2880+0 records out

Page 36: Perícia Forense em Sistemas Operacionais Open Source

36

de3af39674f76d1eb2d652543c536a32

Conforme Casey (2011), depois de calculado o valor MD5 do disco, o perito pode

realizar a comparação do valor MD5 da evidência original com o valor MD5 da cópia da

evidência coletada:

Comando:

dd if=/dev/sda of=copiadodisco.dd bs=512

Exemplo de saída:

2880+0 records in

2880+0 records out

Comando:

md5sum copiadodisco.dd

Exemplo de saída:

de3af39674f76d1eb2d652543c536a32 copiadodisco.dd

O laboratório forense do Departamento de Defesa dos EUA criou uma versão

melhorada chamada dc3dd que pode calcular valores MD5 dos dados em intervalos regulares

durante o processo de cópia. A ferramenta dc3dd conta com muito mais recursos, que são

projetados especificamente para perícia forense, ela possui um modo de verificação e um log

de auditoria (CASEY, 2011).

Uma vez que uma cópia bitstream tenha disso criada, ela pode ser montada para a

realização de exames forenses. O Linux fornece uma interface de loopback que permite o

acesso a um arquivo como se fosse um disco, permitindo que os examinadores trabalhem em

cima de uma cópia como se fosse à evidência original, incluindo o acesso ao sistema de

arquivos e a realização de pesquisas. A seguir temos um exemplo de comandos que montam

uma cópia bitstream (apenas leitura, através de um dispositivo de loopback) para gerar uma

lista de arquivos com seus valores MD5 e uma lista de todos os arquivos que foram

modificados no dia anterior (CASEY, 2011).

Comando:

date

Exemplo de saída:

Page 37: Perícia Forense em Sistemas Operacionais Open Source

37

Tue May 13 18:01:50 EDT 2003

Comando:

mount -o ro,loop –t “sistema de arquivo (vfat, ext2, ext3, ext4)” copiadodisco.dd

/e1/case2/exhibit1

Comando:

find /e1/case2/exhibit1 –type f -exec md5sum {} \;

Exemplo de saída:

bca6aa0863902c44206dc3f09ccde765 documento01.doc

adcbb2fe3bcdeb62addf4ea27f15ac7c emails.txt

d787d1699ae3c3a81fe94a9482038176 enderecos.txt

Comando:

find /e1/case2/exhibit1 -mtime 0 –ls

Exemplo de saída:

6 21 -rwxr-xr-x 1 root root 21504 May 13 11:58 documento01.doc

7 0 -rwxr-xr-x 1 root root 122 May 13 12:40 emails.txt

8 0 -rwxr-xr-x 1 root root 122 May 13 12:42 enderecos.txt

Para Casey (2011), Algumas formas de exames podem ser realizadas sobre os

arquivos de evidência em oposição à montagem do sistema de arquivos. Por exemplo, o

arquivo de evidência pode ser visto usando um visualizador hexadecimal como xxd ou pode

ser pesquisado utilizando palavras-chave, usando strings junto com o comando grep:

Comando:

strings copiadodisco.dd | grep sales

Exemplo de saída:

Write additional Getafix sales letters

Comando:

cat biotechx-keywords

Exemplo de saída:

patient

GUID

Page 38: Perícia Forense em Sistemas Operacionais Open Source

38

Comando:

grep -aibf biotechx-keywords copiadodisco.dd

Exemplo de saída:

30573:_PID_GUIDäAN{443A4AC0-6E57-11D7-865E-006097EDDC2Eþÿÿÿ

37959:patient# infected cellcount

62023:patient# infected cellcount

86603:patient# infected cellcount

125313:_PID_GUIDäAN{D2D244A2-0FE4-11D0-9B61-00AA003CF91Aþÿÿÿ

150373:_PID_GUIDäAN{443A4AC0-6E57-11D7-865E-006097EDDC2Eþÿÿÿ

170341:_PID_GUIDäAN{443A4AC0-6E57-11D7-865E-006097EDDC2Eþÿÿÿ

No entanto esta técnica para examinar um disco é estreitamente limitada porque não

indica quais os arquivos que continham as palavras-chave (CASEY, 2011).

Exames forenses mais avançados podem ser realizados utilizando um conjunto de

utilitários chamado The Coroner’s Toolkit (TCT). Alguns exemplos de comandos com

explicações sobre sua função são fornecidos na tabela 1. Estas ferramentas podem ser

utilizadas em uma cópia bitstream de um disco ou para acessar um disco rígido diretamente

(CASEY, 2011).

Tabela 1 – Alguns utilitários do The Coroner’s Toolkit

Fonte: Casey (2011, p.562)

Comando Descrição

ils -r/dev/hda1 Lista o inode dos arquivos apagados da partição 1

do disco hda.

icat/dev/hda1 2 Mostra o conteúdo do inode 2 na partição 1 do disco

hda

unrm/dev/hda1 > unallocated Extrai espaço não alocado de uma partição no disco

hda

mactime -R -d /e1/case2/exhibit3 12/13/2002

Gera uma lista cronológica de MAC Times dos arquivos no diretório /e1/case2/exhibit3 e todos os subdiretórios entre 13 de Dezembro de 2002 até o

tempo atual.

Page 39: Perícia Forense em Sistemas Operacionais Open Source

39

5.2.1 The Coroner’s Toolkit e Sleuth Kit

The Coroner’s Toolkit (TCT) é um conjunto de bibliotecas que contam com vários

utilitários para a perícia forense computacional. O TCT possui código aberto e foi

desenvolvido por Wietse Venema e Dan Farmer. A primeira edição do TCT ocorreu no ano de

2000 e foi disponibilizado no website dos autores. Brian Carrier mais tarde estendeu as

funcionalidades do TCT de varias maneiras, e lançou o novo software com o nome The Sleuth

Kit (TSK), (FARMER E VENEMA, 2007).

Uma das grandes funcionalidades do Sleuth Kit é o apoio aos sistemas de arquivos

FAT e NTFS, além de diversas outras ferramentas poderosas (CASEY, 2011).

Segundo Casey (2011), o comando istat do Sleuth Kit possui a funcionalidade de

examinar inodes específicos. No exemplo abaixo é possível ver que é mostrado o tempo de

exclusão somente dos arquivos apagados. É possível visualizar também informações

semelhantes de arquivos regulares através de comando padrão do Linux, com o comando stat.

Comando:

istat -f linux-ext2 copiadodisco.dd 2

Exemplo de saída:

inode: 2

Allocated

Group: 0

uid / gid: 0 / 0

mode: drwxr-xr-x

size: 4096

num of links: 21

Inode Times:

Accessed: Tue Nov 26 04:03:19 2002

File Modified: Mon Nov 25 20:39:17 2002

Inode Modified: Mon Nov 25 20:39:17 2002

Direct Blocks:

519

A combinação do Sleuth Kit juntamente com o Autopsy Forensic Browser fornecem

diferentes visões de dados através de uma interface em um navegador web (CASEY, 2011).

Page 40: Perícia Forense em Sistemas Operacionais Open Source

40

Figura 11: Utilizando o Sleuth Kit e o Autopsy Forensic Browser.

Fonte: CASEY (2011, p. 563)

Duas ferramentas baseadas em Linux que também são baseadas no TSK são o

pyFLAG e o PTK4. O PTK é uma extensão do TSK e possui uma interface gráfica baseada na

web, ele foi aprimorado com novos recursos como a indexação, que tem o objetivo de facilitar

a pesquisa por palavras-chave. O PTK normalmente trabalha junto com o Autopsy Forensic

Browser (CASEY, 2011).

Devido o grande número de utilidades disponíveis e a adaptabilidade infinita do

Linux, ele é uma plataforma muito potente para exames forenses e sua única limitação é um

pouco da complexidade em conhecer o sistema. Embora algumas ferramentas baseadas no

Windows podem ser usadas para examinar sistemas de arquivos ext2, ext3 e UFS, a maioria

não facilita o exame de inodes e outros atributos característicos dos sistemas de arquivos

Linux (CASEY, 2011).

4 Mais informações, consultar: http://ptk.dflabs.com/

Page 41: Perícia Forense em Sistemas Operacionais Open Source

41

Figura 12: Visão geral do programa PTK.

Fonte: CASEY (2011)

5.3 Recuperação de dados

Segundo Casey (2011) ao contrário do Windows e sistemas de arquivos Macintosh, o

Linux não possui file slack space5.

Quando o Linux cria um novo arquivo, ele grava o restante do bloco com zeros e os

define como não alocado. Portanto, não é possível recuperar dados apagados do file slack

space em sistemas Linux. Algumas ferramentas, como o test-disk e gpart possuem funções

para recuperar partições apagadas em sistemas Linux e Windows. Há apenas algumas

ferramentas para a reparação de arquivos danificados em Linux, como o tarfix, fixcpio, tarx, e

tar-aids (CASEY, 2011).

5 File slack space é o espaço não utilizado no final de um arquivo.

Page 42: Perícia Forense em Sistemas Operacionais Open Source

42

Figura 13: File Slack Space.

Fonte: RABELO (2011)

5.3.1 Ferramentas baseadas em Linux

Uma das formas para a recuperação de arquivos apagados em sistemas Linux

conforme Casey (2011), é a busca de inodes e a recuperação de arquivos associados a ele. É

possível obter uma lista de todos os inodes apagados a partir de um sistema Linux, utilizando

o comando ils, conforme exemplo abaixo:

Comando:

ils -f linux-ext2 /e1/case2/copiadodisco.dd | more

Exemplo de saída:

class|host|device|start_time

ils|case|ext2-bitstream.dd|1054082181

st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_dtime|st_mode|st_nli

nk|st_size|st_block0|st_block1

1|a|0|0|973385730|973385730|973385730|0|0|0|0|0|0

24|f|500|500|973695537|973695537|973695537|973695537|40700|0|0|308|0

25|f|500|500|954365144|973695521|973695537|973695537|100600|0|28587|309|31

0

26|f|500|500|954365144|973695521|973695537|973695537|100600|0|340|338|0

2049|f|500|500|973695537|973695537|973695537|973695537|40700|0|0|8489|0

2050|f|500|500|953943572|973695536|973695537|973695537|100600|0|4178|8490|

8491

Page 43: Perícia Forense em Sistemas Operacionais Open Source

43

2051|f|500|500|960098764|973695521|973695537|973695537|100600|0|52345|849

5|8496

2052|f|500|500|953943572|973695537|973695537|973695537|100600|0|4860|8548|

8549

2053|f|500|500|959130680|973695521|973695537|973695537|100600|0|28961|855

3|8554

2054|f|500|500|959130680|973695521|973695537|973695537|100600|0|87647|8583|

8584

2055|f|500|500|961959437|973695521|973695537|973695537|100600|0|30799|867

0|8671

2056|f|500|500|959130680|973695521|973695537|973695537|100600|0|50176|870

2|8703

2057|f|500|500|953943572|973695537|973695537|973695537|100600|0|21700|875

2|8753

2058|f|500|500|959130680|973695521|973695537|973695537|100600|0|22865|877

5|8776

2059|f|500|500|959130680|973695521|973695537|973695537|100600|0|14584|879

9|8800

2060|f|500|500|953943572|973695521|973695537|973695537|100600|0|12276|881

5|8816

2061|f|500|500|959130680|973695521|973695537|973695537|100600|0|10840|882

7|8828

2062|f|500|500|959130680|973695521|973695537|973695537|100600|0|26027|883

8|8839

Conhecendo o número de inode de um arquivo excluído de acordo com Casey

(2011), o conteúdo desse arquivo pode ser acessado utilizando o comando icat, desde que os

dados existam conforme mostrado no exemplo acima para o inode 2054 (em negrito):

Comando:

icat -f linux-ext2 ext2-copiadodisco.dd 2054

Exemplo de saída:

dcc.c –– handles:

activity on a dcc socket

Page 44: Perícia Forense em Sistemas Operacionais Open Source

44

disconnect on a dcc socket

...and that's it! (but it's a LOT)

dprintf'ized, 27oct95

*/

/*

This file is part of the eggdrop source code

copyright (c) 1997 Robey Pointer

and is distributed according to the GNU general public license.

For full details, read the top of 'main.c' or the file called

COPYING that was distributed with this code.

*/

#if HAVE_CONFIG_H

#include <config.h>

O Linux Disk Editor e o debugfs utilizam essa abordagem para recuperar arquivos

apagados em sistemas de arquivos ext2. A ferramenta SMART também utiliza a mesma

técnica para recuperar arquivos apagados (BUCKEY E LISTON, 2002).

No entanto, Casey (2011) explica que muitos sistemas de arquivos Linux removem as

referências de inodes para os setores que contêm os dados, quebrando assim a conexão entre o

inode e os dados no disco. Pode-se visualizar este fato em uma lista de inodes excluídos de

um sistema Solaris, o primeiro setor que continha dados de cada arquivo são ajustados para

zero:

Comando:

ils –r -f solaris /e1/case2/ufs-copiadodisco.dd

Exemplo de saída:

class|host|device|start_time

ils|legolas|/e1/morgue/ufs-bitstream.dd|1039101486

st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_mode|

st_nlink|st_size| st_block0|st_block1

213|f|0|1|1038427233|1038427233|1038427243|0|0|0|0|0

3946|f|0|0|987886669|987886669|987886690|0|0|0|0|0

7698|f|0|60001|987893332|987893332|987893332|0|0|0|0|0

11509|f|0|60001|987893332|987893332|987893332|0|0|0|0|0

Page 45: Perícia Forense em Sistemas Operacionais Open Source

45

15105|f|0|60001|987893332|987893332|987893332|0|0|0|0|0

15260|f|0|0|987886816|987886816|987886830|0|0|0|0|0

15261|f|0|0|987886821|987886821|987886830|0|0|0|0|0

15264|f|0|0|987886449|987886449|987886457|0|0|0|0|0

15265|f|0|0|987886449|987886449|987886457|0|0|0|0|0

22816|f|0|0|1038421634|1038421621|1038421634|0|0|0|0|0

22817|f|0|0|987893848|987887279|987893848|0|0|0|0|0

34164|f|0|60001|987893333|987893332|987893354|0|0|0|0|0

45493|f|0|0|1038421571|1038421571|1038421634|0|0|0|0|0

45494|f|0|0|1038421571|1038421571|1038421634|0|0|0|0|0

53039|f|0|60001|987893333|987887277|987893354|0|0|0|0|0

56784|f|0|0|987886929|987886922|987886935|0|0|0|0|0

56787|f|0|0|987886930|987886929|987886935|0|0|0|0|0

56788|f|0|0|987886903|987886903|987886917|0|0|0|0|0

60579|f|0|0|987886609|987886609|987886620|0|0|0|0|0

Figura 14: Processo de recuperação de arquivos apagados usando o SMART.

Fonte: CASEY (2011, p. 567)

Page 46: Perícia Forense em Sistemas Operacionais Open Source

46

Outra forma de recuperar arquivos apagados segundo Casey (2011) é verificar os

diretórios de entradas eliminadas, desde que eles existam. O TSK usa desta técnica para

promover uma lista de diretórios e arquivos apagados em um sistema de arquivos ext2

utilizando o fls conforma demonstrado abaixo:

Comando:

fls -d -r -f linux-ext2 /dev/hdd2

Exemplo de saída:

-/- * 0: boot/

-/- * 4(realloc): boot/

-/- * 0: boot/P

-/- * 0: boot/

-/- * 0: boot/

b/- * 0: dev/ataraid/d9p9;3d905a83

b/- * 0: dev/cciss/c7d9p9;3d905a83

c/- * 0: dev/compaq/cpqrid;3d905a83

c/- * 0: dev/dri/card3;3d905a83

b/- * 0: dev/i2o/hdz9;3d905a83

b/- * 0: dev/ida/c7d9p9;3d905a83

c/- * 0: dev/inet/udp;3d905a83

d/d * 933895(realloc): dev/input

c/c * 66319(realloc): dev/ip2ipl0

l/l * 66318(realloc): dev/ip

c/c * 66323(realloc): dev/ip2stat0

c/c * 66320(realloc): dev/ip2ipl1

c/c * 66321(realloc): dev/ip2ipl2

c/c * 66322(realloc): dev/ip2ipl3

d/d * 983047(realloc): dev/logicalco

-/- * 3355443: dev/

<cut for brevity>

O Autopsy Forensic Browser combina essa duas técnicas para listar todas as entradas

de diretórios que foram excluídos, referenciados a um determinado inode (ele é identificado

Page 47: Perícia Forense em Sistemas Operacionais Open Source

47

como “Pointed to by file”), abaixo temos um exemplo para o inode 3817585 em um sistema

de arquivo ext2 (CASEY, 2011).

Exemplo de saída:

inode: 3817585

Pointed to by file:

/tmp/makewhatis3JoBa0 (deleted)

/root/.netscape/cache/1A/cache3DDC0D5A01A20AD (deleted)

/root/.netscape/cache/1A/cache3DD5997A1200A22 (deleted)

File Type: empty

Details:

Not Allocated

Group: 233

uid / gid: 0 / 0

mode: drwx------size: 0

num of links: 0

Inode Times:

Accessed: Mon Nov 25 19:08:29 2002

File Modified: Mon Nov 25 19:08:29 2002

Inode Modified: Mon Nov 25 19:08:29 2002

Deleted: Mon Nov 25 19:08:29 2002

Direct Blocks:

Uma observação importante é que essas ferramentas não se limitam a examinar

apenas sistemas de arquivos do Linux, elas também podem ser utilizadas para recuperar

arquivos de sistemas FAT e NTFS (CASEY, 2011).

5.3.2 Data Carving

Alguns dados apagados podem ser recuperados usando características de classe. Por

exemplo, com os utilitários foremost e scalpel é possível recuperar dados a partir de qualquer

objeto digital, como um arquivo de provas, um espaço não alocado, partições corrompidas e

arquivos de swap, mesmo após o usuário ter realizado uma nova instalação do sistema

operacional (CASEY, 2011).

Page 48: Perícia Forense em Sistemas Operacionais Open Source

48

O utilitário foremost é um software de console open source, cuja função é a

recuperação de dados a partir de cabeçalhos, rodapés e estrutura de dados, este tipo de

processo é conhecido como extração de dados (data carving). O foremost permite trabalhar

em cima de uma imagem criada pelo comando dd, Encase, Safeback, dcfldd ou diretamente

em uma partição ou disco (ALMEIDA, 2010).

O recuperador de arquivos scalpel é um recuperador simples, porém de alto

desempenho, basicamente ele lê um banco de dados com diversas definições de cabeçalho e

rodapé, a partir daí, ele extrai os arquivos desejados de um dispositivo raw ou de um grupo de

arquivos de imagem. O tipo de partição independe para o scalpel, ele consegue extrair dados

de partições FAT, NTFS, ext2, ext3 ou partições raw (ALMEIDA, 2010).

O resultado a seguir mostra a recuperação de arquivos mais importantes de uma

cópia bitstream de um disco rígido:

Comando:

foremost –o carved-foremost –v copiadodisco.dd

Exemplo de saída:

foremost version 0.62

Written by Kris Kendall and Jesse Kornblum.

Using output directory: /e1/carved-foremost

Verbose mode on

Using configuration file: foremost.conf

Opening /e1/linuxpractical.dd.

Total file size is 1474560 bytes

/e1/case2/floppycopy.dd: 100.0% done (1.4 MB read)

A doc was found at: 17408

Wrote file /e1/case2/carved-foremost/00000000.doc -- Success

A doc was found at: 37888

Wrote file /e1/case2/carved-foremost/00000001.doc -- Success

A jpg was found at: 76800

Wrote file /e1/case2/carved-foremost/00000002.jpg -- Success

A jpg was found at: 77230

Wrote file /e1/case2/carved-foremost/00000003.jpg -- Success

A jpg was found at: 543232

Wrote file /e1/case2/carved-foremost/00000004.jpg -- Success

Page 49: Perícia Forense em Sistemas Operacionais Open Source

49

A gif was found at: 990208

Wrote file /e1/case2/carved-foremost/00000005.gif -- Success

A jpg was found at: 1308160

Wrote file /e1/case2/carved-foremost/00000006.jpg -- Success

Foremost is done (CASEY, 2011).

Outra opção ainda para recuperação de dados segundo Casey (2011) é a utilização do

software Lazarus do TCT, o Lazarus classifica automaticamente os dados da seguinte forma:

1. Lê uma parte dos dados (1 kb padrão).

2. Determina se o trecho é arquivo binário ou texto:

a. Se o trecho for do tipo texto, o programa tenta classificá-lo com base em seu

conteúdo (por exemplo, html);

b. Se for binário, o programa tenta classificá-lo utilizando comandos de arquivos

Linux.

3. Se a classificação for realizada com sucesso, o Lazarus compara com o bloco anterior:

a. Se eles forem da mesma classe, então se encontram no mesmo ficheiro;

b. Se forem de classes diferentes, então se encontram em ficheiros difentes.

4. Se a classificação da parte dos dados não for bem sucedida, o Lazarus faz uma comparação

com o trecho anterior:

a. Se eles forem do mesmo tipo (binário ou texto), então eles estão no mesmo

arquivo;

b. Se eles forem de tipo diferente (binário ou texto), então eles estão em arquivos

diferentes.

5.3.3 Dump de memória

Dump de memória é o processo no qual se captura dados da memória, podendo ser

ela a memória principal (memória RAM) ou a memória virtual do sistema (FARMER;

VENEMA, 2007).

Na perícia forense antes da análise dos dados da memória, é necessário capturar as

informações, ou pelo menos, a maior quantidade possível. O Linux possui dois dispositivos

virtuais, o /dev/mem e o /dev/kmem, que permitem a leitura e gravação na memória via esses

dispositivos. O dispositivo /dev/mem é um arquivo de espelhamento da memória principal do

Page 50: Perícia Forense em Sistemas Operacionais Open Source

50

computador, já o /dev/kmem é o espelhamento da memória virtual do kernel (FARMER;

VENEMA, 2007).

De acordo com Reis (2003), como a memória principal do computador é volátil, o

procedimento recomendado é coletar os dados da memória com o sistema nativo ligado, esse

procedimento é conhecido como análise ao vivo, para realizar a cópia da memória principal

no Linux, utiliza-se o seguinte comando:

dd if=/dev/mem of=mem.dump bs=1024

Para copiar a memória virtual do kernel, utiliza-se o seguinte comando:

dd if=/dev/kmem of=/kmem.dump bs=1024

Segundo Reis (2003), depois de copiado os dados da memória, o perito pode realizar

algumas análises, como por exemplo, a busca por palavras-chave através dos comandos grep

e strings, conforme abaixo:

grep palavra-chave mem.dump

# strings –a mem.dump | grep palavra-chave

# strings -a mem.dump | more

5.4 Arquivos de log

Arquivos de log são registros que normalmente estão armazenados em arquivos

ASCII ou texto simples, eles possuem a função de registrar eventos do sistema operacional e

serviços da rede. A relação entre arquivos de logs, segurança e auditoria são fundamentais

para que se possa entender o que ocorreu com um sistema computacional (MILAGRE, 2008).

É importante que antes de se analisar os arquivos de log que o perito de a preferência

para análise de dispositivos voláteis, como um dump da memória e o congelamento do estado

da rede e processos (MILAGRE, 2008).

O Linux é um sistema que possuí muitos registros, com comandos simples é possível

obter muitas informações sobre o sistema, por exemplo, utilizando o comando last/log o

sistema irá retornar os últimos usuários que efetuaram um login no sistema. Para gerar uma

lista das ultimas tentativas de login sem êxito no sistema, utiliza-se o comando lastb.

Page 51: Perícia Forense em Sistemas Operacionais Open Source

51

Utilizando o comando who o sistema irá apresentar os usuários logados na máquina, já com o

comando history | more, é possível ter acesso aos últimos comandos executados na sessão

atual (MILAGRE, 2008).

Na maioria dos casos é importante que o perito verifique os processos que estão

sendo executados no momento por um usuário, o comando ps –aux identifica os processos

atuais em execução. Se for preciso, o perito pode filtrar somente os arquivos chamados por

um determinado processo PID, através do comando lsof –p “número do PID” (MILAGRE,

2008).

No Linux por padrão, as maiorias dos registros do sistema ficam localizadas em

“/var/log”, vale destacar alguns deles que são:

/var/log/messages – possuí registros de acesso ao sistema e em alguns casos também do

Iptables;

/var/log/samba/log.smbd - logs do servidor de arquivos Samba;

/var/log/httpd/(access, error ou agent.log) - logs do servidor web Apache;

/var/log/lpr.log - informações de acesso às impressoras;

/etc/mail/maillog - logs do servidor de e-mails (MILAGRE, 2008).

É muito importante que o perito analise o arquivo “/etc/syslog.conf”, este é o arquivo

de configuração de todos os logs do sistema operacional, ele aponta aonde os arquivos de log

estão guardados. Uma análise cuidadosa deve ser feita nesse arquivo, pois ele pode ter sido

alterado por um criminoso. Outra análise essencial é a verificação do arquivo “/etc/passwd”,

conferir se o criminoso não criou alguma conta com privilégio de administrador que não seja

conhecida, o perito pode ainda, visualizar o arquivo “/var/log/auth.log”, esse arquivo

armazena todas as autenticações no sistema com data e hora, seja ela bem sucedida ou não

(MILAGRE, 2008).

No arquivo “/var/log/daemon.log”, o perito pode identificar informações

envolvendo serviços gerais do sistema, como logs da rede aonde pode-se verificar requisições

de conexão ou de IP’s, se o usuário conectou ou desconectou algum tipo de dispositivo

utilizando portas USB. A função do daemons é registrar todos os tipos de serviços e eventos

do sistema (MILAGRE, 2008).

Na forense computacional quando se trata de buscar logs o comando grep é de

grande ajuda, ele é encontrado em quase todas as distribuições Linux, é um aplicativo para

Page 52: Perícia Forense em Sistemas Operacionais Open Source

52

linhas de comandos do tipo binário e funciona como um filtro na busca de logs, por exemplo,

é possível buscar registros que tragam uma determinada string em sua linha (MILAGRE,

2008).

Em uma investigação de incidentes eletrônicos, a análise de logs é de

extrema importância, eis que se a função do perito é apurar a ocorrência de

fatos e identificar a autoria dos mesmos, a função dos logs é servir como

“testemunhas eletrônicas”, aptas a depor sobre incidentes e crimes de

tecnologia (MILAGRE, 2008).

5.5 Tráfego de rede

A captura do tráfego de rede se equipara a uma gravação em vídeo de um

determinado crime, pois a partir dos pacotes capturados, o perito tem a possibilidade de

analisar a comunicação entre o atacante e o alvo, de forma que uma sequência de eventos

pode ser verificada, analisada e comparada a outras evidências encontradas. Durante a análise

do tráfego de rede é possível encontrar diversas evidências, dentre essas evidências as mais

comuns encontradas são as seguintes:

Pacotes contendo endereço IP inválido ou suspeito;

Pacotes trafegando através de portas suspeitas, por exemplo, servidores utilizando portas

desconhecidas acima de 1024 ou pacotes destinados a servidores que deveriam estar

desabilitados;

Tráfego suspeito que não condiga com os padrões de protocolos, por exemplo, pacotes

com flags, opções, fragmentação e tamanho inválidos;

Tráfego através do protocolo Transmission Control Protocol (TCP6) sem estabelecimento

de uma conexão, sem flags ou com números de sequência inválidos;

Tráfego na rede muito intenso de pacotes e serviços que deveriam estar desabilitados, por

exemplo, Internet Control Message Protocol (ICMP7) utilizando a função de echo request

/ reply, que envia mensagens para funções de teste e controle da rede;

Pacote ICMP utilizando a função echo reply sem o correspondente echo request;

Pacotes ICMP utilizando a função echo request / reply com um número de sequência

estático ou não incremental;

Pacotes que possuam em sua área de dados, comandos de Linux e códigos de NOPs;

6 Mais informações sobre o protocolo, consultar a RFC 793.

7 Mais informações sobre o protocolo, consultar a RFC 792.

Page 53: Perícia Forense em Sistemas Operacionais Open Source

53

Tráfego muito intenso de pacotes à um determinado tipo de serviço, a uma máquina cliente

ou um servidor;

Requisições HTTP suspeitas, que trazem em suas URLs referências a comandos de Linux

ou scripts suspeitos;

Tráfego de serviços como File Transfer Protocol (FTP8) e TELNET através de portas

incomuns (CASEY, 2002).

5.5.1 Captura e análise do tráfego de rede

Quando se trata de capturar tráfego de rede, existem diversos programas que

realizam essa função, esses programas normalmente são chamados de sniffers. Os sniffers

podem além de capturar pacotes que trafegam na rede, decodificá-los e exibi-los de uma

forma que seja mais legível, ou ainda executar operações complicadas como reconstrução de

sessão e recuperação de arquivos transferidos pela rede (CASEY, 2002).

Segundo Casey (2002), entre os diversos programas existentes para esse tipo de

serviço, um dos mais conhecidos e utilizados é o tcpdump, ele pode ser usado em duas

situações na perícia forense, em uma análise ao vivo, onde ele captura todo o tráfego da rede,

decodifica os pacotes e exibi-os de forma legível à medida que eles vão sendo coletados, ou

armazenar os pacotes em um arquivo binário para uma posterior análise. Caso uma análise ao

vivo não seja necessária, a segunda opção é a mais recomendada, pois o programa faz uma

cópia exata das informações que trafegam na rede. A seguir temos alguns exemplos de

utilização do tcpdump:

# tcpdump -1 -n -e -x -vv -s 1500

# tcpdump -w net.dump

# tcpdump -n -e -x -vv -s 1500 -r net.dump

No primeiro comando, o tcpdump será usado para capturar e exibir os pacotes

conforme eles são coletados, esse comando é mais utilizado na perícia quando é necessário

realizar uma análise ao vivo. A função de cada parâmetro utilizado no primeiro comando é a

seguinte:

8 Mais informações sobre o protocolo, consultar a RFC 959.

Page 54: Perícia Forense em Sistemas Operacionais Open Source

54

-l – permite a visualização imediata da saída conforme ela vai sendo produzida;

-n – bloqueia a conversão de endereços IP em nomes;

-e – exibe o cabeçalho da camada de enlace;

-x – exibe o conteúdo dos pacotes no formato hexadecimal;

-vv – permite que seja visualizado informações adicionais;

-s – essa opção determina o número de bytes dos dados que devem ser capturados de cada

pacote, se não for determinado um número, automaticamente o número de bytes será 68

por padrão (CASEY, 2002).

No segundo comando, mais utilizado quando não se precisa realizar uma análise ao

vivo, o tcpdump é usado para armazenar todo o tráfego da rede em um arquivo binário,

através da opção –w. Depois de gerado o arquivo binário, ele poderá ser processado

posteriormente conforme no terceiro comando, através da opção –r (CASEY, 2002).

De acordo com Casey (2002), o tcpdump conta com um conjunto de filtros que

podem ser utilizados na captura de dados, tais filtros permitem, por exemplo, capturar dados

de um determinado host ou de uma determinada porta de comunicação, abaixo temos dois

exemplos de utilização de filtros:

# tcpdump -1 -n -e-x -vv -s 1500 host 192.168.1.13

# tcpdump -1 -n -e -x -vv -s 1500 dst port 21

No primeiro comando serão capturados os pacotes trafegados vindo apenas do host

que possuí o IP 192.168.1.13, já no segundo comando serão capturados apenas os pacotes que

trafegam através da porta de comunicação 21. Para maiores informações sobre regras e filtros

do tcpdump, consultar o manual através da opção man tcpdump no terminal do Linux

(CASEY, 2002).

Na captura e análise do tráfego de rede, além dos sniffers, podem ser usados também

alguns sistemas de detecção de intrusão, que permitem, por exemplo, inspecionar e armazenar

apenas os dados que pareçam suspeitos.

O Snort é um desses sistemas capaz de realizar essas tarefas, ele pode ser utilizado

tanto como um sniffer quanto um sistema de detecção de intrusão, Com o Snort é possível

inspecionar área de dados de um pacote, decodificar as camadas do pacote, e realizar a

comparação com uma lista de regras. O Snort permite configurar diversas regras, por

Page 55: Perícia Forense em Sistemas Operacionais Open Source

55

exemplo, configurar uma regra para detectar certos tipos de pacotes, inclusive aqueles

relacionados a atividades adversas, como varredura de portas e ataques de buffer overflow.

Outra capacidade do Snort é a de remontar os pacotes fragmentados antes de comparar com as

assinaturas de ataques conhecidos (CASEY, 2002).

Ao se analisar um tráfego de rede, o sniffer deve ser posicionado em um ponto da

rede que permita o acesso ao tráfego da máquina comprometida. Caso o criminoso tenha

comprometido várias máquinas da rede e a perícia deseje verificar a extensão do problema, o

sniffer deverá ser posicionado em um ponto que permita a monitoração de todo o tráfego da

rede, levando em conta a topologia da rede e a configuração dos nós, como os roteadores,

switches e hubs (CASEY, 2002).

Page 56: Perícia Forense em Sistemas Operacionais Open Source

56

6. ESTUDO DE CASO

O estudo de caso a seguir, demonstra um processo de perícia forense em um

notebook operando com o sistema operacional Ubuntu 12.10, esse notebook é suspeito de

armazenar conteúdos referentes à pedofilia, vale ressaltar, que esse processo foi simulado em

um ambiente de teste através de uma máquina virtual, o programa utilizado para construir a

máquina virtual foi o Oracle VM Virtualbox versão 4.1.14 r77440, para a realização da perícia

foi utilizado o sistema operacional FDTK rodando direto do CD e um HD portátil HP de 1

TB. O notebook é composto pelas seguintes configurações:

Marca: Itautec;

Modelo: Infoway Note N8645;

Processador: Intel Core i3 370M 2.4GHZ;

Memória RAM: 4GB;

HD: 500GB.

Na primeira etapa, foi iniciado um processo de boot pelo CD-ROM do sistema

operacional FDTK, após esse processo, foi montada a partição do sistema a ser periciado,

conforme mostrado na figura 15.

Figura 15: Montando a partição do sistema a ser periciado.

Fonte: Elaborado pelo autor.

Page 57: Perícia Forense em Sistemas Operacionais Open Source

57

Na segunda etapa, foi criada uma cópia bitstream da partição /dev/sda1 do sistema suspeito e

gerado três hashes (MD5, SHA1 e SHA512) da imagem criada. Para realizar a cópia, foi utilizada a

ferramenta dcfldd, que criou uma imagem da partição juntamente com três arquivos de hash na pasta

Perícia Forense dentro do HD externo, de acordo com as figuras 16 e 17.

Figura 16: Criando imagem do disco e arquivos de hash com a ferramenta dcfldd.

Fonte: Elaborado pelo autor.

Figura 17: Imagem do disco e arquivos de hash gerado.

Fonte: Elaborado pelo autor.

Page 58: Perícia Forense em Sistemas Operacionais Open Source

58

Depois de criada a imagem da partição e gerado os arquivos de hash, preenchemos o

formulário de cadeia de custódia, conforme mostrado na figura 18.

Figura 18: Formulário de cadeia de custódia preenchido.

Fonte: Elaborado pelo autor.

Na quarta etapa, foi criada a pasta “/media/caso01”, após isso, a montagem da

imagem do disco na pasta caso01, utilizou-se uma interface de loopback que permite o acesso

(apenas leitura) aos arquivos como se fosse um disco, conforme mostrado abaixo nas figuras

19 e 20.

Figura 19: Montando a imagem em uma interface de loopback.

Fonte: Elaborado pelo autor.

Page 59: Perícia Forense em Sistemas Operacionais Open Source

59

Figura 20: Exibição da imagem montada em uma interface de loopback.

Fonte: Elaborado pelo autor.

Na quinta etapa, foi utilizado o comando find com alguns argumentos para procurar

arquivos do tipo imagem, copia-los para a pasta criada dentro do disco rígido externo, gerar os

valores hash e direcionar o resultado para um arquivo do tipo texto, conforme mostrado nas

figuras 21, 22 e 23.

Figura 21: Procurando, copiando e gerando hash dos arquivos do tipo imagem.

Fonte: Elaborado pelo autor.

Page 60: Perícia Forense em Sistemas Operacionais Open Source

60

Figura 22: Exibindo as imagens copiadas.

Fonte: Elaborado pelo autor.

Figura 23: Hash e pasta de origem das imagens copiadas.

Fonte: Elaborado pelo autor.

Conforme se pode visualizar na figura 22, foram copiadas diversas imagens com

nomes suspeitos, depois de visualizadas as imagens confirmou-se que se trata de fotos de

pedofilia. Na sexta etapa foi utilizado o mesmo principio da quinta etapa, porém, com

mudança no argumento referente à extensão dos arquivos procurados, já que o objetivo era

Page 61: Perícia Forense em Sistemas Operacionais Open Source

61

procurar arquivos do tipo vídeo. As figuras 24, 25 e 26 representam os resultados dos

comandos utilizados.

Figura 24: Procurando, copiando e gerando hash dos arquivos do tipo vídeo.

Fonte: Elaborado pelo autor.

Figura 25: Exibindo os vídeos copiados.

Fonte: Elaborado pelo autor.

Page 62: Perícia Forense em Sistemas Operacionais Open Source

62

Figura 26: Hash e pasta de origem dos vídeos copiados.

Fonte: Elaborado pelo autor.

De acordo com a figura 25, é possível verificar que foram encontrados também

vídeos com nomes suspeitos, que posteriormente foram visualizados e confirmados como

sendo vídeos que disseminam pornografia infantil.

Na próxima etapa, foi utilizada a ferramenta foremost para realizar a extração de

dados (data carving) que foram apagados do sistema. Utilizou-se o parâmetro -t para

especificar os tipos de arquivos para recuperação, conforme figura 27.

Figura 27: Recuperação de dados utilizando o foremost.

Fonte: Elaborado pelo autor.

Page 63: Perícia Forense em Sistemas Operacionais Open Source

63

As figuras 28 e 29 representam os arquivos recuperados através da ferramenta

foremost, o programa conseguiu recuperar seiscentos e oitenta e quatro imagens e três vídeos

que poderiam ser utilizados como provas em um caso real.

Figura 28: Arquivos jpg recuperados usando o foremost.

Fonte: Elaborado pelo autor.

Figura 29: Arquivos flv recuperados usando o foremost.

Fonte: Elaborado pelo autor.

A penúltima etapa foi gerado um arquivo contendo o MAC Time das evidências, para

verificar quando o conteúdo do arquivo foi alterado pela última vez e quando foi aberto para

leitura pela última vez, conforme figuras 30 e 31.

Page 64: Perícia Forense em Sistemas Operacionais Open Source

64

Figura 30: Gerando o MAC Times das evidências.

Fonte: Elaborado pelo autor.

A figura 31 mostra claramente o exemplo de um arquivo, pode-se notar que o

arquivo pedo01.jpg foi alterado pela última vez no dia 05/11/2012 às 16:19:04 (representado

por “m...”) e foi aberto para leitura pela última vez no dia 05/11/2012 às 16:19:33

(representado por “..c.”).

Figura 31: Arquivo contendo o MAC Time das evidências.

Fonte: Elaborado pelo autor.

Page 65: Perícia Forense em Sistemas Operacionais Open Source

65

Na primeira parte da última etapa, foi investigado no sistema alguns logs do diretório

“/var/log” que poderiam trazer informações relevantes. Na pasta “/var/log” foi encontrado o

diretório proftpd, o que indicava que esse usuário mantinha um servidor FTP. Ao analisar o

arquivo xferlog que se encontrava dentro do diretório proftpd, foi possível determinar que o

usuário matinha o servidor para realizar transferência de conteúdo de pedofilia, conforme

figura 32. Para finalizar a perícia, foi verificada a integridade da imagem do disco através da

ferramenta PTK, averiguando se não houve modificações das evidências originais através dos

hashes MD5 e SHA1, de acordo com a figura 33.

Figura 32: Verificando o conteúdo do arquivo xferlog.

Fonte: Elaborado pelo autor.

Figura 33: Verificando a integridade da imagem do disco.

Fonte: Elaborado pelo autor.

Page 66: Perícia Forense em Sistemas Operacionais Open Source

66

Durante esse estudo de caso, foram mostradas as etapas de uma perícia forense

computacional em busca de provas num caso que envolvia pedofilia, vale lembrar que cada

caso é diferente e que pode necessitar de outras metodologias para se realizar a perícia.

Page 67: Perícia Forense em Sistemas Operacionais Open Source

67

7. METODOLOGIA

Para apresentar os conceitos e objetivos do tema proposto, foram realizadas

pesquisas bibliográficas em livros, monografias, teses, artigos e publicações na Internet

relacionada ao tema perícia forense computacional em sistemas operacionais open source.

Através dessas pesquisas bibliográficas foi possível desenvolver um trabalho

contendo os fundamentos teóricos, os procedimentos padrões, as melhores práticas aplicadas

na forense computacional, às evidências digitais mais comuns encontradas nos sistemas

operacionais que utilizam o núcleo do Linux, as ferramentas para preservação, aquisição,

análise e recuperação de evidências que podem ser utilizadas como provas. Ao final do

trabalho foi desenvolvido um estudo de caso envolvendo uma suspeita de armazenamento de

conteúdos referentes à pedofilia, a fim de reforçar e demonstrar na prática as técnicas,

procedimentos e ferramentas da perícia forense computacional que foram abordadas durante o

trabalho.

Page 68: Perícia Forense em Sistemas Operacionais Open Source

68

8. RESULTADOS

A perícia forense computacional é a área que atua no combate e solução de crimes

virtuais, ela segue quatro procedimentos que são o seu ciclo de vida, que consiste na

identificação, preservação, análise e apresentação de evidências. Para que esse ciclo seja

completado com sucesso é importante que o perito receba um treinamento de um programa de

melhores práticas na perícia forense, diminuindo o risco de possíveis erros durante a

investigação e garantindo a integridade das provas. Durante o desenvolvimento das quatro

etapas da investigação, a perícia trabalha com diversas ferramentas, utilizam técnicas e

conhecimentos gerais de computadores, que são aplicados na investigação para encontrar

evidências que sirvam como provas para a solução de um crime digital. As evidências são

diversas e cada caso é diferente, são vários tipos de situações, diferentes tipos de sistemas

operacionais a serem investigados, servidores, análise em redes de computadores, por isso é

importante que o perito forense sempre esteja atualizado e tenha um conhecimento amplo

sobre computadores e outros dispositivos digitais.

Page 69: Perícia Forense em Sistemas Operacionais Open Source

69

9. CONCLUSÕES

Este trabalho apresentou uma explicação específica sobre a perícia forense aplicada a

sistemas operacionais open source, os procedimentos, as melhores práticas, alguns tipos de

evidências que podem ser encontradas e algumas ferramentas. Ele inicia de forma teórica para

que se possam compreender as práticas, procedimentos e funcionamento da forense

computacional, após isso, foram demonstradas as evidências mais comuns encontradas em

sistemas operacionais que utilizem o núcleo Linux, algumas técnicas, ferramentas e comandos

que são utilizados pela perícia, na tentativa de se encontrar evidências em diversos

dispositivos, cujo objetivo é obter provas concretas. No final do trabalho foi apresentado um

estudo de caso em um ambiente de teste que mostrou a realização de uma perícia em um caso

envolvendo pedofilia.

Ressaltou-se a importância das melhores práticas aplicadas à perícia forense e como se

deve atuar de forma correta na identificação, aquisição, análise e preservação de evidências.

Apesar de a perícia possuir ainda poucos pesquisadores, existem hoje diversas ferramentas e

sistemas operacionais livres que permitem a execução completa das quatro etapas

mencionadas acima, esses sistemas e ferramentas estão disponíveis na Internet para qualquer

pessoa. As variedades de ferramentas abrem uma gama de possibilidades de se resolver um

crime digital, seja ele realizado de qualquer computador que opere com qualquer tipo de

sistema operacional.

A perícia forense computacional é uma área em crescimento no Brasil e no mundo. O

mercado de trabalho precisará cada vez mais de peritos forenses bem treinados para atuarem

no combate a crimes virtuais, seja em instituições estaduais, federais, privadas ou

simplesmente na área de pesquisa, desenvolvendo ou aperfeiçoando ferramentas já existentes,

tendo em vista que a grande maioria é de código livre, o que permite que qualquer pessoa com

conhecimento mais profundo em informática atue nessa área.

Page 70: Perícia Forense em Sistemas Operacionais Open Source

70

10. REFERÊNCIAS

BUCKEYE, B; LISTON, K. Recovering deleted files in Linux. Disponível em: <

http://www.samag.com/documents/s=7033/sam0204g/sam0204g.htm>. Acesso em: 01 out.

2012.

BURDACH, Mariusz. Forensic Analysis of a Live Linux System. Disponível em: <

http://www.symantec.com/connect/articles/forensic-analysis-live-linux-system-pt-1>. Acesso

em: 14 mai. 2012.

CARRIER, B. A hypothesis-based approach to digital forensic investigations. 2006. 169f.

Dissertação (Doutorado em Filosofia) - Center for Education and Research in Information

Assurance and Security, Purdue University, West Lafayette, 2006.

CARRIER, B. Splitting the disk – Part 1. Disponível em: <

http://www.sleuthkit.org/informer/sleuthkit-informer-2.html>. Acesso em: 26 set. 2012.

CASEY, E. Digital evidence and computer crime: Forensic Science, Computers and the

Internet. San Diego: Academic Press, 2000.

CASEY, E. Digital evidence and computer crime: Forensic Science, Computers and the

Internet. 3 ed. San Diego: Academic Press, 2011.

CASEY, E. Handbook of Computer Crime Investigation. San Diego: Academic Press,

2002.

CASEY, E. Handbook of Digital Forensics and Investigation. San Diego: Academic Press,

2010.

DANIEL, Larry; DANIEL, Lars. Digital Forensics for Legal Professionals: Understanding

Digital Evidence from the Warrant to the Courtroom. Waltham: Elsevier, 2012.

Page 71: Perícia Forense em Sistemas Operacionais Open Source

71

ESPINDULA, Alberi. Função Perícial do Estado. Disponível em: <

http://www.espindula.com.br/conteudo.php?id=7>. Acesso em: 10 mai. 2012.

FARMER, Dan; VENEMA, Wietse. Perícia Forense Computacional: Teoria e Prática

Aplicada. São Paulo: Pearson Prentice Hall, 2007.

FEDERAL BUREAU OF INVESTIGATION. Forensic Science Communications.

Disponível em: <http://www.fbi.gov/about-us/lab/forensic-science-

communications/fsc/april2000/swgde.htm>. Acesso em: 20 set. 2012.

FEDERAL EVIDENCE. Federal rules of evidence 2012. Disponível em:

<http://federalevidence.com/rules-of-evidence>. Acesso em: 11 mai. 2012.

FREITAS, Andrey Rodrigues de. Perícia Forense Aplicada à Informática. Rio de Janeiro:

Brasport, 2006.

INTERNATIONAL ORGANIZATION ON COMPUTER EVIDENCE. Guidelines for Best

Practice in the Forensic Examination of Digital Technology. Disponível em: <

http://www.ioce.org/fileadmin/user_upload/2002/ioce_bp_exam_digit_tech.html>. Acesso

em: 20 set. 2012.

KRUSE II, Warren G; HEISER, Jay G. Computer Forensics: Incident Response

Essentials. Massachusetts: Addison-Wesley, 2002.

LERNER, Lee K; LERNER, Wilmoth B. World of Forensic Science. Farmington Hills:

Thomson Gale, 2006.

MILAGRE, José. Análise Forense Computacional de Logs em Sistemas Linux: as

testemunhas da rede. Disponível em: < http://imasters.com.br/artigo/10207/gerencia-de-

ti/analise-forense-computacional-de-logs-em-sistemas-linux-as-testemunhas-da-rede>. Acesso

em: 18 out. 2012.

NETHERLANDS FORENSIC INSTITUTE. Disponível em:

<http://www.forensicinstitute.nl/research_development/research_programmes/cyber_crime>.

Acesso em: 7 mai. 2012.

Page 72: Perícia Forense em Sistemas Operacionais Open Source

72

RABELO, Luiz. File Slack Space. Disponível em: <

http://forensics.luizrabelo.com.br/2011/04/file-slack-space.html>. Acesso em: 01 out. 2012.

REIS, Marcelo Abdalla dos. Forense computacional e sua aplicação em segurança

imunológica. 2003. 241f. Dissertação (Mestrado em Ciência da Computação) – Universidade

de Campinas, Campinas, 2003.