Você está na página 1de 166

UNIVERSIDADE CATÓLICA DE BRASÍLIA

PROGRAMA DE PÓS-GRADUAÇÃO LATO SENSU EM


SEGURANÇA EM REDES DE COMPUTADORES

ESPECIALIZAÇÃO

Aplicação de Técnicas de Forense Computacional e Respostas a


Incidentes na Internet

Autor: Daniel Linhares Lim-Apo

Orientador: Prof. MSc. Jerônimo Osvaldo Dias Jardim

Brasília-DF - BRASIL 2004

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 1/166
DANIEL LINHARES LIM-APO

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na


Internet

Monografia apresentada em Programa de Pós-Graduação Lato Sensu em Segurança


em Redes de Computadores da Universidade Católica de Brasília, como requisito para a
obtenção de título de pós-graduado em Segurança em Redes de Computadores

Orientador: Prof. MSc. Jerônimo Osvaldo Dias Jardim

Brasília
2004

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 2/166
Dedico este trabalho às pessoas próximas a mim que tanto me apoiaram e
incentivaram e a toda a comunidade de alguma forma relacionada à segurança digital.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 3/166
Agradecimentos

Ao Prof. MSc. Jerônimo Jardim e à Simone,


que me mostraram como traçar e retraçar caminhos.
A meu pai pela torcida.
À minha mãe pela base que me propiciou.
Ao meu filho, que cedeu diversos momentos com o pai.
A Valéria Soares, que é companheira e tanto me apóia.
À minha madrinha e tias pela ajuda na formação de caráter.
Ao Alex Pinheiro Machado Rodrigues pela amizade e por sua abertura em sempre
compartilhar seus conhecimentos técnicos.
À comunidade do grupo de discussão sobre "Perícia Forense Aplicada à Informática" do
Yahoo e, em especial, ao moderador Andrey Rodrigues de Freitas pela saudável troca de
informações em público.
Ao Delegado Zanata por fazer bem o seu trabalho na Polícia Civil-DF.
Ao Google por ser uma excelente ferramenta de pesquisa e de trabalho.
À Internet na forma de seus usuários por ser uma via de comunicação cada vez mais
universal e completa.
Àqueles que fizeram e fazem tudo acontecer em informática, em redes e em segurança.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 4/166
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na
Internet

SUMÁRIO

SUMÁRIO.................................................................................................................................. 5
Capítulo I - INTRODUÇÃO E CONCEITOS ............................................................................. 7
1.1 Aplicação de técnicas de forense computacional e respostas a incidentes na Internet ......... 7
1.2 Introdução ......................................................................................................................... 8
1.3 Observações iniciais ........................................................................................................ 12
1.4 A evolução da criminalidade a evolução tecnológica ....................................................... 13
1.5 Forense Computacional ................................................................................................... 14
Capítulo II - INVESTIGANDO ................................................................................................ 16
2.1 O profissional.................................................................................................................. 16
2.2 Uso de metodologias em forense computacional.............................................................. 18
2.3 Scientific Working Group on Digital Evidence (SWGDE) - Grupo de Trabalho Científico
em Evidência Digital............................................................................................................. 21
2.4 Sistema operacional não mais confiável........................................................................... 34
2.5 Proteção da evidência ...................................................................................................... 36
2.6 Cadeia de custódia........................................................................................................... 37
2.7 Obtenção e Coleta de dados............................................................................................. 38
2.8 A decisão de desligar ou não, eis a questão...................................................................... 39
2.9 Duplicação pericial.......................................................................................................... 40
2.10 Examinando a Rede....................................................................................................... 41
2.11 Cavalos de Tróia e Backdoors ....................................................................................... 45
2.11.1 Definição de Cavalo de Tróia.................................................................................. 46
2.11.2 BACKDOORs ........................................................................................................ 46
2.12 Investigando Ferramentas .............................................................................................. 49
2.12.1 Investigando software de código malicioso ............................................................. 49
2.13 Procurando dados .......................................................................................................... 52
2.14 Obtendo informações em discos .................................................................................... 54
2.14.1 Arquivos deletados ................................................................................................. 56
2.15 Sistemas de arquivos NTFS ........................................................................................... 57
2.15.1 Sistemas de arquivos NTFS ........................................................................................ 57
2.15.2 O NTFS...................................................................................................................... 57
2.15.2.1 Versões do NTFS................................................................................................. 59
2.15.2.2 NTFS 1.1 / 4.0 ..................................................................................................... 59
2.15.2.3 NTFS 5.0 parte do Windows 2000 ....................................................................... 59
2.15.2.4 Explanando sobre o NTFS ................................................................................... 60
2.15.2.5 Lista de controle de acesso (Access Control Lists - ACLs) e entradas controle de
acesso (Access Control Entries - ACEs) ............................................................................ 61
2.15.2.6 NTFS - Permissões .............................................................................................. 63
2.15.2.7 Auditoria no NTFS .............................................................................................. 64
2.15.2.8 Master File Table (MFT) ..................................................................................... 64
2.15.2.9 Zona MFT ........................................................................................................... 66
2.15.2.10 NTFS - Nomenclatura de arquivos ..................................................................... 68
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 5/166
2.15.2.11 NTFS - Atributos de arquivos ........................................................................... 69
2.15.2.12 NTFS - Arquivos e armazenamento de dados..................................................... 71
Capítulo III - FERRAMENTAS ................................................................................................ 74
3.1 F.I.R.E. Linux ................................................................................................................. 74
3.1.1 F.I.R.E. Linux (Forensic and Incident Response Environment) ................................. 74
3.1.2 Comparando o F.I.R.E. com algumas outras distruições baseadas em CD ou em
disquete............................................................................................................................. 75
3.1.3 Plataforma necessária ............................................................................................... 76
3.1.4 F.I.R.E. Linux Pacotes disponíveis ........................................................................... 77
3.1.4.1 Ferramentas incluídas no F.I.R.E ........................................................................... 77
Ferramentas Windows........................................................................................................... 90
Knoppix-STD ....................................................................................................................... 92
Versão: Knoppix STD 0.1 ................................................................................................. 92
Knoppix-STD - Pacotes..................................................................................................... 94
AIDE ...................................................................................................................................104
Capítulo V - CASOS E EXEMPLOS .......................................................................................105
Casos estudados de exemplo ................................................................................................105
CONCLUSÃO.........................................................................................................................132
Glossário de siglas e termos .................................................................................................136
Bibliografia ..........................................................................................................................146
ANEXOS.................................................................................................................................151
Roteiro de apresentação: forense computacional e uso de cópia pericial. ..............................151
Manual do AIDE (Tradução livre por Daniel Lim-Apo) .......................................................153

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 6/166
Capítulo I - INTRODUÇÃO E CONCEITOS

1.1 Aplicação de técnicas de forense computacional e respostas a incidentes na Internet

Este trabalho apresenta uma metodologia e aplicação de uma ferramenta para a

investigação de incidentes de segurança num ambiente forense seguro, em redes conectadas à

internet. Serão apresentados estudos de casos reais onde a investigação tem por finalidade traçar a

possível origem e as técnicas utilizadas pelo atacante.

Objetivo: estudar uma metodologia e técnicas de forense computacional aplicada em

resposta a incidentes de segurança em redes conectadas à internet.

Resultados esperados: aprofundar o conhecimento de ferramentas de forense

computacional e de aplicação de uma metodologia investigativa em incidentes reais.

Diretrizes: este trabalho será desenvolvido utilizando-se bibliografia específica sobre o

assunto e documentos disponíveis na internet.

Infra-estrutura tecnológica: computadores com sistema operacional Linux e Windows,

acesso à internet, ambiente de testes (Laboratório de Segurança em Redes da Universidade

Católica de Brasília) e softwares específicos para forense computacional.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 7/166
1.2 Introdução

As últimas décadas e em especial os últimos anos marcaram mudanças revolucionárias

no uso de computadores pelos cidadãos do mundo. A Internet trouxe uma capacidade de

comunicação e integração de computadores que há uma década seria difícil de se prever. Tudo

isso, num crescimento tão acelerado que chega a ser assustador. Inúmeras relações humanas são

espelhadas na internet, a ponto de se dizer que se trata de um mundo virtual. Mas, não existe

mundo virtual e sim o mesmo mundo real só que com diferentes ferramentas e novos paradigmas

de relacionamento humano. As comunicações, as relações de poder, os governos, as religiões, a

política, as atividades culturais e o comércio acontecem na internet. Na mesma internet, vemos

também o crescimento das guerras, o terrorismo, os furtos, as chantagens, difamações, extorsões,

corrupção, pedofilia, quebra de direitos autorais, pichações, furto de informações, estelionatos,

falsidade ideológica, brigas pessoais, guerras internacionais e praticamente qualquer outra prática

indevida, inadequada e muitas vezes criminosa. É o mundo real e sujeito às leis reais já existentes

e às novas leis que vêem sendo criadas. Mesmo crimes que não sejam cometidos via internet,

como terrorismo em massa, um estupro ou homicídio, podem ser cometidos deixando evidências

em um computador ou em ativos de rede de computadores. Sendo assim, é crescente a

necessidade dos estudos na área de forense computacional que auxiliem o desenvolvimento de

metodologias e a acumulação de conhecimentos para a descoberta, manipulação e análise de

evidências digitais.

Para entender a aplicação de técnicas de forense computacional basta ir se familiarizando

com os conceitos e objetivos desta prática. A analogia com a prática forense e pericial de uma
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 8/166
forma geral é comum e bastante esclarecedora. Por exemplo, o ambiente computacional é tratado

como uma cena de crime, um host pode ser tratado como um cadáver sendo dissecado em

autópsia. Em outros casos pode-se ter um ativo de rede sendo analisado como um paciente que

ouve do médico que não é nada, pois o sintoma está dentro de padrões normais. Claro que a

necessidade de legalidade jurídica e a ética são partes da prática de forense computacional, pois

de que valem as ações de um perito investigador se as suas ações apagam ou invalidam provas

cruciais desnecessariamente.

Respostas a incidentes na Internet abrangem uma grande gama de tópicos da segurança de

redes de computadores, tanto no que diz respeito ao escopo de abrangência de tempo quanto no

que diz respeito a itens de segurança física e segurança lógica. No quesito tempo, a necessidade

de providências abrange desde muito antes até muito depois de um incidente de segurança.

Quanto à proximidade física é preciso saber que há o macro e o micro, afinal às vezes é

necessário preocupar-se com um eventual atacante que está no outro lado do planeta ou com

umas poucas linhas de código malicioso implantadas apenas na memória volátil de um host

comprometido cujo teclado está sob seus dedos.

A aplicação de técnicas de forense computacional e as respostas a incidentes de segurança

estão diretamente relacionadas aos interesses finais que se quer obter. As diretivas de

regulamentos internos e objetivos das partes envolvidas e à legislação pertinente ao caso devem

ser consideradas de forma especial. Uma empresa comercial pode priorizar a restauração de um

sistema sem tirá-lo de funcionamento e com total sigilo. A empresa investigadora particular pode

ter limitações legais principalmente ao envolver ambientes de rede de terceiros. Uma instituição

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 9/166
investigadora policial do governo pode querer ter todas as provas preservadas e ter dificuldades

ao lidar com países estrangeiros. O administrador de rede do sistema atacado pode ser bem

solícito, mas ser o culpado de fato.

O uso de uma metodologia para uma investigação possibilita obter resultados melhores e

mais eficientes com um custo menor de tempo e trabalho. No pré, pós e durante o incidente sente-

se o calor da hora e as pressões são corriqueiras, parte do cotidiano do investigador. Assim, a

metodologia é uma necessidade para tornar claro o que se quer e tornar possível conseguir isto.

As ferramentas para a investigação de incidentes de segurança são essenciais. É uma

guerra. Quer seja física ou lógica, estamos todos num território de guerra. Numa guerra usam-se

armas. Como em qualquer guerra, as armas de defesa servem para ataque e vice-versa. As

ferramentas na forma de softwares individuais ou como kits completos e robustos são as armas

dos atacantes e a dos seus oponentes. É preciso conhecer as armas para poder usá-las, no ataque

ou defesa. Mas para trabalhar com forense computacional é bom ter uma visão superficial e

profunda das armas reais e das armas hipotéticas possíveis, para poder supor o que pode ter

acontecido, estar acontecendo ou vir a acontecer. Pode-se ter um melhor entendimento do poder

do agressor se puder comparar e entender o que ele fez com uma determinada arma e o que ele

poderia ter feito, principalmente se for necessário saber como ele age, pode agir, como ele é,

quem ele é, onde ele está e, mais ainda, pegá-lo.

A segurança neste caso se refere principalmente à segurança das provas e dos

procedimentos. Pense na situação análoga do tipo "não toquem em nada até que os peritos

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 10/166
terminem", mas lembre-se que os peritos também têm que tentar deixar certas, muitas, coisas

preferencialmente intactas. A estratégia de uso de um ambiente de forense computacional seguro

minimiza as possibilidades de que as provas ou procedimentos possam ser comprometidos

propositalmente ou não pelas partes envolvidas, por terceiros, por programas de computador e,

inclusive, pelos próprios peritos investigadores.

Os estudos de casos reais dão uma visão real do lado prático e excitante da ação em si. É

extensa a gama de aplicabilidades das técnicas de forense computacional na resposta a incidentes

na internet.

Essas técnicas são componentes do presente em constante mutação. Sendo assim, as

informações aqui apresentadas são baseadas em bibliografia recente e fontes de informações

diversas, inclusive da Internet, tais como sites, revistas eletrônicas e fóruns.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 11/166
1.3 Observações iniciais

Neste trabalho a palavra "máquina" será usada para se referenciar a um computador de

qualquer porte independentemente de seu uso como servidor, máquina individual ou outra

funcionalidade.

Os exemplos de comandos de linha serão com um sinal de buffer antes do exemplo e

eventualmente entre aspas (""). Assim, se um exemplo é

"# /bin/ls -la *.*" ou

# /bin/ls -la *.*

então o comando a ser executado em seu prompt de comando é:

/bin/ls -la *.*

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 12/166
1.4 A evolução da criminalidade a evolução tecnológica

É a velha história, coloca-se uma cerca de arame e o ladrão usa um alicate. Então, coloca-

se uma cerca de arame farpado e o ladrão usa um alicate e uma luva.

Veja como funcionou com a criptografia. Ao longo da história a criptografia foi uma das

tecnologias que evoluiu com as necessidades de sigilo nas comunicações da humanidade e

sempre que foi criado um método de cifragem mais moderno ele foi mais cedo ou mais tarde

quebrado, em seguida surgia um novo método mais seguro e uma estratégia de quebrar mais

eficiente e assim continua a acontecer. A criptografia quântica existe em teoria e os estudos para

suas vulnerabilidades e quebra também já existem.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 13/166
1.5 Forense Computacional

Ramo da criminalística que compreende a descoberta, preservação, restauração e análise

de evidências computacionais.

O termo forense origina-se do meio policial, onde peritos investigadores procuram

analisar de forma minuciosa tudo o que encontram na cena do crime, desde um cadáver até um

minúsculo fio de cabelo ou pequena mancha de tinta e com um isolamento adequado da área,

procurando preservar as evidências seguem ao passo seguinte de examinar com as técnicas

adequadas, como balística e exames laboratoriais. A contaminação ou incorreção na aplicação

das metodologias pode invalidar as provas para um tribunal. A mesma analogia pode ser dada à

forense computacional.

Cada crime de computador deixa rastros e é preciso saber encontrá-los. Os computadores

sempre foram suscetíveis aos ataques e intrusões, mas assim como cresce a sofisticação da

tecnologia dos computadores, também é crescente a necessidade de antecipar e se resguardar

diante da taxa de crescimento da atividade de crimes de computador.

A análise forense está se tornando uma parte integrada à resposta a incidentes de

segurança juntamente com o crescimento do número de investigadores treinados em forense

computacional e da disponibilidade de kits de ferramentas de forense computacional.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 14/166
São etapas fundamentais na forense computacional a coleta de informações, a

identificação de evidências, a obtenção e coleta das evidências e a reconstrução dos eventos.

O objetivo da forense computacional é conduzir uma investigação estruturada com uma

metodologia que permita determinar o que aconteceu, quem foi responsável e, a investigação

deve ser executada de uma forma que os resultados sejam úteis em um processo criminal.

Forense computacional é a aplicação de técnicas de análise e investigação em

computadores com o interesse de determinar evidências legais em potencial.

A evidência em forense computacional é freqüentemente procurada em um vasto número

de crimes de computador ou no emprego inaceitável, incluindo roubo de segredos comerciais,

roubo ou destruição de propriedade intelectual e fraudes.

Os especialistas em forense computacional usam uma ampla gama de métodos para

encontrar dados que se encontram em um sistema computacional e freqüentemente recuperar

arquivos que foram deletados, cifrados ou danificados, em algumas vezes, há anos atrás.

As evidências colhidas por um especialista em forense computacional são úteis e

freqüentemente necessárias durante a busca, depoimentos e disputa judicial.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 15/166
Capítulo II - INVESTIGANDO

2.1 O profissional

O profissional que atua na área de forense computacional pode ser chamado de perito ou

investigador.

São características interessantes para um investigador na aplicação de técnicas de forense

computacional:

- Conhecimento e entendimento profundo das características de funcionamento de

sistemas de arquivos, programas de computador e padrões de comunicação em redes de

computadores;

- Familiaridade com as ferramentas, técnicas, estratégias e metodologia de ataques

conhecidos, inclusive as que não se tem registro de ter ocorrido, mas que já são vistas como uma

exploração em potencial de uma determinada vulnerabilidade de um sistema.

- Faro investigativo para perceber rastros sutis de ações maliciosas - Esmero pela

perfeição e detalhes. Sempre deve haver rastros, mesmo que muito sutis.

- Entendimento sobre o encadeamento de causas e conseqüências em tudo o que ocorre

num sistema para construir a história lógica formada por ações maliciosas ou normais que já

tenham ocorrido, que estejam em curso e que possam vir a acontecer;

- Conhecimento da legislação envolvida;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 16/166
- Conhecimento das diretivas internas das empresas e instituições envolvidas no processo

investigativo, com especial atenção às limitações como diretivas de privacidade, sigilo e escopo

ou jurisdição de atuação;

- Cuidado com a manipulação e preservação de provas legais em potencial, inclusive com

uma metodologia de cadeia de custódia. O que não é visto como prova hoje pode vir a ser uma

prova e então é bom ter sido preservada o suficiente para ser aceita em um tribunal.

- Noções sobre a psicologia dos atacantes em potencial a respeito de perfis de

comportamento e motivações.

- Experiência ao examinar os rastros em um incidente perceber o nível de sofisticação e

conhecimento de um atacante, especialmente interessante se o atacante usa subterfúgios para

parecer menos capaz, como deixar rastros óbvios e parecer um ataque simples para ocultar ações

maliciosas muito mais perigosas e muito mais escondidas.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 17/166
2.2 Uso de metodologias em forense computacional

A padronização e a quantidade de metodologias na área de forense computacional são

ainda insuficientes considerando-se a grande demanda de aplicabilidade. É crescente o número de

incidentes que transpõe os níveis de escopo de atuações de empresas, instituições, jurisdições

policiais e até países.

Para uma perfeita adequação das práticas e procedimentos da forense computacional às

legislações pertinentes a cada um dos envolvidos em um caso de incidente de segurança, é

crescente a necessidade de metodologias com padrões internacionalmente aceitos para a forense

computacional.

Algumas questões que dificultam a padronização e definição de metodologias estão

relacionadas à grande diversidade de equipamentos, programas de computador e sistemas

existentes. A cada dia surgem novas versões de sistemas operacionais, novos ativos de rede e

novas mídias portáteis ou não. Isto aumenta a necessidade e ao mesmo tempo torna mais difícil a

padronização de procedimentos e a criação e implementação de metodologias.

Princípios Internacionais para Evidência Computacional e Organização Internacional de

Evidência Computacional (International Principles for Computer Evidence - International

Organization on Computer Evidence - IOCE)

A Organização Internacional de Evidência Computacional (International Organization on

Computer Evidence - IOCE) foi estabelecida em 1995 para prover às agências internacionais da
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 18/166
lei um fórum para troca de informação a respeito de investigações de crimes de computadores e

outras matérias de forense computacional. Comprometida com as agências, com credibilidade do

governo dos EUA, envolvidas em investigação forense computacional, a IOCE identifica e

discute temas de interesse em seus continentes, facilita a disseminação internacional da

informação e desenvolve recomendações por consideração de suas agências membro. Também

para formular padrões de evidência de computador a IOCE desenvolve comunicações entre

agências membro e mantém conferências engrenadas para o estabelecimento de relações de

trabalho.

Em resposta ao Plano de ação e comunicação do G8 ("G-8 Communique and Action

Plans") de 1997 a IOCE recebeu a tarefa de desenvolver padrões internacionais para a troca e

recuperação de evidência eletrônica. Grupos de trabalho no Canadá, Europa, Reino Unido e nos

Estados Unidos foram formados para sediar estes padrões de evidência computacional.

Durante a Conferência Internacional de Crimes de Alta Tecnologia e Forense

("International Hi-Tech Crime and Forensics Conference - IHCFC") de Outubro de 1999, a IOCE

realizou reuniões e "workshops" nos quais revisaram o Guia de Boas Práticas do Reino Unido

("United Kingdom Good Practice Guide") e o Rascunho de Padrões do SWGDE ("SWGDE Draft

Standards"). O grupo de trabalho propôs os seguintes princípios apresentados com aprovação

unânime:

Princípios Internacionais da IOCE:

Os princípios internacionais desenvolvidos pela IOCE para recuperação padronizada de

evidências baseadas em computador têm como centro os seguintes atributos:

- Consistência com todos os sistemas legais;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 19/166
- Permissão para o uso de uma linguagem comum;

- Durabilidade;

- Habilidade de cruzar limites internacionais;

- Habilidade de dar confiança em relação à integridade da evidência;

- Aplicabilidade de toda a evidência forense;

- Aplicabilidade em todos os níveis inclusive do indivíduo, agência e país.

Tais princípios são:

- Ao se apreender uma evidência digital, as ações não devem mudar aquela evidência;

- Quando for necessário para uma pessoa acessar a evidência digital original aquela

pessoa deve ser legalmente e tecnicamente competente;

- Toda atividade relacionada à obtenção (apreensão), acesso, armazenagem ou

transferência de uma evidência digital deve ser completamente documentada, preservada e

disponível para revisão;

- Um indivíduo é responsável por todas as ações tomadas a respeito de uma evidência

digital enquanto a evidência digital estiver em seu poder;

- Qualquer agência que é responsável por obter, acessar, armazenar ou transferir uma

evidência digital é responsável em acordo com estes princípios;

Outros itens recomendados pela IOCE para debate futuro e/ou facilitação incluem:

- Competência forense e a necessidade de gerar adesão na aceitação internacional e na

validação de ferramentas, técnicas e treinamento;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 20/166
- Temas relacionados a práticas e procedimentos para a análise de evidência digital e o

compartilhamento de informação relativa a crimes de alta tecnologia e forense computacional,

tais como eventos, ferramentas e técnicas.

2.3 Scientific Working Group on Digital Evidence (SWGDE) - Grupo de Trabalho Científico

em Evidência Digital

O grupo “The Federal Crime Laboratory Directors” (Diretores de Laboratórios de

Criminalística Federais) formou o SWGDE in 1998 com objetivo de explorar evidências digitais

como uma disciplina forense. Os membros iniciais foram os laboratórios de forense do ATF,

DEA, FBI, IRS-CID, US Customs, US Postal Inspection Service e o US Secret Service. A NASA

e o Department of Defense Computer Forensics Laboratory participaram desde o início. Diversos

outros membros foram integrando o grupo, sendo que os membros individualmente tinham

muitos anos de experiência em forense digital. Muitos dos membros do SWGDE são membros de

proeminentes organizações, tais como American Academy of Forensic Science, IACIS, HTCIA,

e IOCE.

Logo as discussões revelaram que de fato existiam muitas semelhanças, sobreposição nas

disciplinas de análise de áudio, vídeo, imagem e que era desejável desenvolver padrões e

harmonizar as operações interdisciplinares. Como resultado o Scientific Working Group on

Digital Evidence (SWGDE) foi criado sob o guarda chuva que cobria os outros "Scientific

Working Groups" sobre DNA (SWGDAM), Questioned Documents (Documentos questionados)


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 21/166
(SWGDOC), Trace Evidence (SWGMAT), Drugs (Drogas) (SWGDRUG), Fire and Explosives

(Fogo e Explosivos) (SWGFEX), Fingerprints (Impressões digitais) (SWGFAST) e Imaging

(imagem) (SWGIT).

SWGDE é focado na prática de forense de evidências digitais primeiramente em

laboratório. Entretanto, os documentos gerados por ele são úteis para executar procedimentos em

um laboratório não tradicional ou em campo.

Alguns dos trabalhos do SWGDE exploraram os princípios da forense digital e

desenvolveram definições básicas. Em 1999, o SWGDE adotou uma série de princípios e

definições que o grupo sentiu que eram tão universais o quanto possível. Estes princípios foram

publicados no "Forensic Science Communications" e submetidas em outubro de 1999 ao

"International Organization on Computer Evidence” (IOCE). A reunião da IOCE foi feita em

conexão com uma conferência maior, a “International High Tech Crime and Computer Forensics

Conference". Os delegados na reunião usaram o material da SWGDE assim como o material

contido no "United Kingdom's Association of Chief Police Officers (ACPO) Best Practice

Guide" (Guia de Boas Práticas da Associação de Chefes de Polícia do Reino Unido) para formar

os princípios da IOCE. Os princípios da IOCE adotaram as definições do SWGDE.

O SWGDE e o ASCLD/LAB “American Society of Crime Laboratory Directors”

(Associação Americana de Diretores de Laboratórios de Criminalística) propuseram colocar a

evidência digital como uma disciplina amplamente aceita. Foi gerado um documento, o

ASCLD/LAB Manual , importante para reconhecer que evidência digital inclui exame de

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 22/166
vídeo/imagem digital e áudio digital. Cada item no ASCLD/LAB Manual é marcado com um E, I

ou D, que representam "essential" (essencial), "important" (importante) e "desirable" (desejável).

O documento, em discussão, de boas práticas (“Best Practices”) é projetado para prover

diretrizes para laboratórios os quais tenham ou visam ter unidades de evidência digital

(computador, áudio, vídeo ou imagem digital) aceitas como confiáveis. Este documento pode e

deve ser usado de forma personalizada, sendo que certos itens podem ser documentados como

sendo inaplicáveis em um determinado caso. Partes do documento foram deixadas

propositalmente vagas para permitir às agências a habilidade de determinar internamente as

especificidades.

Há muita discussão a respeito dos termos de credibilidade, certificação e qualificação.

Deve ser observado que o SWGDE não determina credibilidade, certificação, aprovação ou

qualificação a indivíduos ou laboratórios. Para evitar este tipo de confusão o nome do documento

foi dado como "Best Practices for Digital Evidence Laboratory Programs" (Boas Práticas para

Evidência Digital em Programas de Laboratórios).

A respeito do assunto é interessante observar os seguintes materiais:

http://www.fbi.gov/hq/lab/fsc/backissu/july2000/swgroups.htm

http://www.fbi.gov/hq/lab/fsc/backissu/april2000/swgde.htm

http://www.ioce.org/2002/G8%20Proposed%20principles%20for%20forensic%20evidenc

e.pdf

http://www.ascld.org/accreditation.html

http://www.ASCLD-LAB.org/pdf/aslabrevisions.pdf

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 23/166
http://www.ASCLD-LAB.org/aslab08.html

A missão do SWGDE é estabelecer e promover diretrizes e definições para o manuseio de

evidências digitais.

Visando esta missão, a SWGDE tem seis objetivos:

1- Manter juntas as organizações ativamente engajadas na análise e exame de evidência

digital no esforço de legislação das agências ("Law Enforcement Agencies" – Agências da Lei)

para a troca e disseminação de informações;

2- Discutir, compartilhar e comparar métodos, protocolos e pesquisa na análise de

evidência digital no esforço de legislação das agências ("Law Enforcement Agencies" – Agências

da Lei);

3- Estabelecer diretrizes de garantia de qualidade para a análise de evidências digitais;

4- Cooperar com outros organismos dos EUA e internacionais no desenvolvimento de

diretrizes para a análise de evidências digitais;

5- Servir como um mecanismo para rever e revisar diretrizes para a análise de evidências

digitais;

6- Disseminar as diretrizes das "Law Enforcement Agencies SWGDE" (Agências da Lei),

recomendações e outros produtos de trabalhos para benefício dos membros da "Law Enforcement

Agencies".

Em março de 1998 nos princípios propostos pelo G8 para procedimentos relativos às

evidências digitais, a IOCE (International Organization on Digital Evidence) direcionou-se para

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 24/166
esboçar princípios internacionais relativos a evidências digitais, para assegurar a harmonização

dos métodos e práticas entre nações e garantir a habilidade de usar uma evidência digital coletada

em um estado em um tribunal em um outro estado.

Em março de 2000, o primeiro relatório da IOCE foi apresentado ao sub-grupo, propondo

uma série de definições e princípios em seguida à Conferência Internacional de Crimes de Alta

Tecnologia e Forense (International high-tech crimes and forensics conference) em Londres em

outubro de 1999.

Depois de revistas pelos especialistas do sub-grupo, as seguintes recomendações foram

feitas:

1. Cada estado membro é encorajado a considerar os seguintes princípios ao estabelecer

procedimentos para coleta, preservação e uso de evidência digital, de acordo com sua legislação

nacional, padrões institucionais e para estar ciente das potenciais diferenças ao coletar evidências

conforme o exigido em outros estados.

2. Estes princípios devem ser submetidos a IOCE ou outro padrão nacional, regional ou

internacional tornando instituições e organizações responsáveis pela promoção de procedimentos

relativos a evidência digital para revisão.

3. A IOCE deve desenvolver em consulta com as instituições acima mencionadas um guia

de boas práticas genérico para coleta, preservação e uso de evidência digital, abrangendo a

vastidão de fontes existentes de evidências digitais;

4. O sub-grupo de crimes de alta tecnologia deve revisar regularmente o trabalho da

IOCE.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 25/166
Princípios:

- Quando lidar com evidência digital todos os princípios de forense em geral e

procedimentos devem ser aplicados;

- Ao apreender uma evidência digital as ações tomadas não devem modificar a evidência;

- Quando é necessário para uma pessoa acessar a evidência digital original, tal pessoa

deve ter sido treinada para este propósito;

- Toda atividade relativa à apreensão, acesso, armazenamento ou transferência de

evidência digital deve ser completamente documentada, preservada e disponível para revisão;

- Um indivíduo é responsável por todas as ações tomadas com respeito à evidência digital

enquanto a evidência digital estiver em seu poder;

- Qualquer agência, a qual é responsável pela apreensão, acesso, guarda ou transferência

de evidência digital é responsável em conformidade com estes princípios;

Definições gerais relativas à evidência digital

Evidência digital

Informação armazenada ou transmitida em uma forma binária que pode ser fidedigna

(confiável) em um tribunal.

Evidência digital original

Itens físicos e objetos de dados associados a estes itens no momento da apreensão.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 26/166
Duplicata de Evidência Digital

Uma duplicata é uma reprodução precisa de todos os objetos de dados contidos em um

item físico.

Cópia

Uma cópia é uma reprodução precisa da informação contida em objetos de dados

independentemente do item físico original.

O SWGDE (Scientific Working Group on Digital Evidence) é um representante

norte-americano na International Organization on Computer Evidence (IOCE).

Padrões foram apresentados durante a International Hi-Tech Crime and Forensics

Conference (IHCFC), realizada em Londres, de 4 a 7 de outubro de 1999.

Os padrões desenvolvidos pelo SWGDE seguem um único princípio: o de que todas as

organizações que lidam com a investigação forense devem manter um alto nível de qualidade a

fim de assegurar a confiabilidade e a precisão das evidências. Esse nível de qualidade pode ser

atingido através da elaboração de SOPs (“Standard Operating Procedures” – Procedimentos

Padronizados de Operação), que devem conter os procedimentos para todo tipo de análise

conhecida e prever a utilização de técnicas, equipamentos e materiais largamente aceitos na

comunidade científica internacional [10].

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 27/166
O Scientific Working Group on Digital Evidence (SWGDE) foi alterado com o

desenvolvimento de diretrizes interdisciplinares para a recuperação, preservação e exame de

evidência digital, incluindo áudio, imagens e equipamentos eletrônicos.

Um documento foi rascunhado pelo SWGDE e apresentado na "International Hi-Tech

Crime and Forensics Conference (IHCFC)" em Londres em 4 a 7 de outubro de 1999. Seu

propósito é o estabelecimento de traços de evidências digitais entre nações e tem a intenção de

levar a uma discussão construtiva a respeito de evidência digital. Este documento foi adotado

como rascunho padrão pelas agências da lei nos EUA.

A última parte do século vinte foi marcada pelos transistores eletrônicos e as máquinas e

idéias fizeram isso possível. Como resultado, o mundo mudou de analógico para digital. Embora

o computador reine absoluto no reino digital, ele não é o único equipamento digital. Uma

diversidade de equipamentos de áudio, vídeo, comunicações e fotografia estão se tornando

próximos a um computador. Na perspectiva das leis mais informações que podem ser usadas em

tribunais estão sendo armazenadas, transmitidas ou processadas de forma digital. A conectividade

resultante da globalização da economia com empresas fornecendo produtos e serviços é de fato

internacional e tem permitido a criminosos agirem transpondo jurisdições com facilidade.

Conseqüentemente um atacante pode ser trazido a um tribunal em uma jurisdição, enquanto as

evidências digitais necessárias para o processo judicial de acusação ocorrer com sucesso podem

estar em outras jurisdições. Esta situação requer que todas as nações tenham a habilidade de

coletar evidências digitais para suas próprias necessidades e para outras nações. Cada jurisdição

tem seu próprio sistema de governo e administração e sua própria justiça, mas para um país

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 28/166
proteger a si mesmo e seus cidadãos, ele deve estar capacitado a fazer uso de evidências digitais

coletadas por outras nações.

Pensando assim, não é razoável esperar que todas as nações conheçam e concordem com

as leis e regras das outras nações, mas é possível encontrar um meio de permitir a troca de

evidências. Este documento apresentado foi uma primeira tentativa de definir os aspectos

técnicos destas trocas.

O formato do documento foi adotado em acordo com o formato do manual da "American

Society of Crime Laboratory Directors/Laboratory Accreditation Board" (Associação Americana

de Diretores de Laboratórios de Criminalística/Mesa de Aprovação de Laboratórios)

Definições

Aquisição de evidência digital: Inicia quando a informação e/ou itens físicos são

coletados ou guardados para finalidade de análise. O temo "evidência" implica em que o coletor

da evidência é reconhecido em tribunais. O processo de coleta é assumido como sendo um

processo legal e apropriado para as regras de evidência naquela localidade. Um objeto de dados

ou um item físico torna-se evidência quando assim o for julgado por um oficial da lei ou

designado.

Objeto de dados: Objetos ou informação com valor de prova em potencial que são

associados com itens físicos. Objetos de dados podem ocorrer em diferentes formatos sem alterar

a informação original.

Evidência Digital: Informação com valor de prova armazenado ou transmitido de forma

digital.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 29/166
Itens físicos: Itens nos quais objetos de dados ou informação podem ser armazenados

e/ou através dos quais os objetos de dados são transferidos.

Evidência digital original: itens físicos e objetos de dados associados a estes itens no

momento da apreensão.

Duplicata de Evidência Digital

Uma duplicata é uma reprodução precisa de todos os objetos de dados contidos em um

item físico.

Cópia

Uma cópia é uma reprodução precisa da informação contida em objetos de dados

independentemente do item físico original.

Padrões

Princípio 1

Para garantir que a evidência digital é coletada, preservada, analisada ou

transferida de forma a preservar a precisão e confiabilidade da evidência a organizações da

lei e organizações forenses devem estabelecer e manter um efetivo sistema de controle de

qualidade. Padrões de Procedimentos Operacionais (“Standard Operating Procedures –

SOPs”) definem uma diretriz de controle de qualidade documentada que deve ser

personalizada para registrar o caso apropriadamente e usar procedimentos, equipamentos

e materiais amplamente aceitos.

Padrões e critério 1.1

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 30/166
Todas as agências que apreendem ou examinam evidências digitais devem manter

um documento SOP (“Standard Operation Processess” - Procedimentos Operacionais

Padrão). Todos elementos de uma agência policial e os procedimentos a respeito de uma

evidência digital devem ser claramente determinados neste documento SOP, o qual deve ser

emitido pela autoridade competente da gerência da agência.

O uso das SOPs é fundamental para ambos o legislativo e a ciência forense.

Diretrizes que são consistentes com os princípios científicos e legais são essenciais para a

aceitação dos resultados e conclusões por tribunais e outras agências. O desenvolvimento e

implementação destas SOPs devem ser sob os poderes de uma autoridade competente da

gerência da agência.

Padrões e critérios 1.2

A gerência da agência deve rever as SOPs numa freqüência anual para certificar-se

de que continuam apropriadas e efetivas em vista das mudanças tecnológicas que envolvem

os tipos, formatos e métodos para apreensão e análise de evidências digitais. A revisão

também serve para se assegurar que o pessoal, treinamento, equipamento e procedimentos

continuam apropriados e efetivos.

Padrões e critérios 1.3

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 31/166
Procedimentos devem ser aceitos de uma forma geral em campo ou apoiados por

obtenção de dados e gravados de uma forma científica.

Devido à variedade de procedimentos científicos que podem validamente ser

aplicados a um dado problema, os padrões e critérios para procedimentos de análise

precisam ser flexíveis. A validade de um procedimento deve ser estabelecida pela

demonstração de precisão e confiabilidade de técnicas específicas. Na área de evidência

digitais revisões de SOPs em conjunto com outras agências podem ser úteis.

Padrões e critérios 1.4

A agência deve manter cópias escritas dos procedimentos técnicos apropriados.

Os procedimentos devem ter determinados sua aplicação e finalidade. Elementos

necessários e exigidos tais como hardware e software devem ser listados e os passos

apropriados para o uso devem ser listados ou discutidos.

Quaisquer limitações no uso do procedimento ou no uso ou na interpretação dos

resultados devem estar estabelecidas. O pessoal que usa estes procedimentos deve estar

familiarizado com eles e estarem disponíveis para referência.

Padrões e critérios 1.5

A agência deve usar hardware e software que é apropriado e efetivo para a

obtenção e apreensão ou processo de análise.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 32/166
Embora muitos procedimentos aceitos devam ser usados para efetuar uma tarefa,

considerar a variação entre casos requer que o pessoal tenha a flexibilidade de exercitar o

julgamento em escolher um método apropriado ao problema.

O hardware usado na obtenção e/ou análise da evidência digital deve estar em boas

condições operacionais e ser testado para ter certeza de que opera corretamente. O

software deve ser testado para ter certeza de que produz resultados confiáveis para uso com

a finalidade de obtenção e apreensão e/ou análise.

Padrões e critérios 1.6

Toda a atividade relacionada à obtenção, armazenagem, análise ou transferência de

uma evidência digital deve ser guardada por escrito e deve estar disponível para revisão e

testemunho.

Em geral, a documentação de apoio a conclusões deve ser de tal forma que na

ausência de quem a originou, outra pessoa competente possa avaliar o que foi feito,

interpretar os dados e chegar às mesmas conclusões de quem originou a documentação.

A exigência para as necessidades de confiabilidade requer uma cadeia de custódia

para todos os itens da evidência. A documentação da cadeia de custódia deve ser mantida

para toda evidência digital.

Anotações do caso e registros de observações devem ser feitas de uma forma

permanente. Anotações de próprio punho (à mão) devem ser feitas à tinta, não usando

lápis, embora a caneta (inclusive colorida) deve ser apropriada para diagramas ou para

fazer traços. Quaisquer correções às notas devem ser feitas por um traço único rubricado,

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 33/166
sendo que nada nas informações escritas à mão deve ser sobreposta ou apagada. As

anotações e registros devem ser autenticados por assinaturas à mão, iniciais, assinaturas

digitais ou outras formas de marca.

Padrões e critérios 1.7

Qualquer ação que tenha o potencial de alterar, danificar ou destruir qualquer

aspecto de uma evidência original deve ser feita por pessoal qualificado do ponto de vista

forense.

Como esboçado nos padrões e critérios anteriores, a evidência digital tem valor

apenas se puder ser precisa, confiável e controlada. Um programa de qualidade em forense

consiste em pessoal treinado, equipamento apropriado, software e procedimentos para em

conjunto garantir estes atributos.

2.4 Sistema operacional não mais confiável

Após um incidente de segurança em um host deve-se procurar sempre trabalhar com

binários confiáveis.

Um invasor pode alterar os arquivos binários substituindo-os por códigos maliciosos.

Uma boa execução de procedimentos na preparação pré-incidente, na detecção de um

incidente e na recuperação ajuda a evitar ou minimizar problemas com códigos binários

alterados.

No pré-incidente pode ser calculado o "hash" dos arquivos a serem protegidos, isto pode

ser feito utilizando uma ferramenta de cálculo de verificação com por exemplo o MD5sum e com
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 34/166
ferramentas como o Tripwire. Feito isso, pode-se ter uma verificação periódica com vistas a

detectar alterações dos mesmos arquivos fazendo o cálculo de hash dos arquivos atuais com o

hash que foi anteriormente guardado e, se estiver diferente, o arquivo foi necessariamente

alterado. Já na fase de recuperação, principalmente se a recuperação foi parcial, ou seja, se o

sistema não foi formatado ou instalado em um novo HD e, então, não foi instalado a partir do

zero, o cálculo de hash pode ajudar a saber se os arquivos cruciais do sistema estão com um

cálculo de verificação hash correto o que quer dizer que tem o conteúdo original inalterado.

Um preceito de um programa de hash é que dois arquivos diferentes tenham possibilidade

tendendo a zero de repetir um mesmo resultado de cálculo de hash, mesmo que a diferença seja

de um único bit, ao mesmo tempo, dois arquivos com conteúdos iguais dão o mesmo resultado de

cálculo de hash.

Em alguns ataques até o próprio kernel pode ser alterado e, então, todo o sistema passa a

não ser confiável.

Um atacante pode alterar os seus arquivos binários importantes de forma a modificar a

resposta que deveria ser dada para, por exemplo, filtrar uma resposta e dar outra no lugar e então

ocultar conexões de redes, alterações, processos maliciosos em execução e tudo o mais que a

criatividade dele permitir.

Exemplos:

Se é sabido que é utilizado o netstat para verificar conexões de rede ativas e recentes, o

atacante pode colocar uma versão alterada do netstat onde todas as outras conexões são

mostradas e todas as conexões espúrias que ele desejar podem ser ocultadas por uma resposta

irreal. Se não se sabe que o arquivo binário do nestat está alterado, então se acredita que está tudo

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 35/166
normal. O mesmo pode acontecer com o comando ps, que se alterado pode esconder processos

ativos maliciosos não mostrando os mesmos na resposta do ps.

O comando ls pode ser alterado para não mostrar arquivos espúrios deixados pelo

atacante.

Nos procedimentos investigativos, ao se usar binários não confiáveis de um host sendo

investigado, pode-se acionar uma armadilha deixada por um atacante e se o usuário ativo estiver

com poderes de super usuário (root ou administrador) talvez venha a disparar uma arma deixada

pelo atacante com a sua própria mão e contra a sua própria máquina ou contra sistemas de

terceiros.

Para usar arquivos binários confiáveis pode ser interessante você tê-los em uma mídia

que não possa ser alterada, como um CD-R, que com o espaço restante queimado é gravável

apenas uma vez. E, deixar esta mídia guardada em um local seguro como em um cofre.

2.5 Proteção da evidência

A proteção da evidência é algo crítico.

. Um investigador de forense computacional experiente vai procurar ter certeza de que um

sistema de computador seja cuidadosamente manuseado para se assegurar de que:

- Nenhuma evidência seja danificada, destruída ou mesmo comprometida pelos

procedimentos usados na investigação;

- Nenhum vírus ou código malicioso seja introduzido em um computador durante a

análise forense.

- A evidência extraída seja adequadamente manuseada e protegida de danos mecânicos,

elétricos ou eletromagnéticos.
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 36/166
- Uma cadeia de custódia seja estabelecida e mantida;

- Se for necessário interromper ou interferir nas atividades normais da rede ou sistema

computacional, que seja por uma porção reduzida e limitada de tempo;

- Qualquer informação sigilosa e privativa que seja inadvertidamente obtida durante uma

análise forense e que não fizer parte do objetivo da investigação será eticamente e legalmente

respeitada e não divulgada.

2.6 Cadeia de custódia

Na forense computacional é uma arte obter, guardar e analisar dados a respeito de uma

possível atividade criminal de forma a poder usar as provas obtidas em um tribunal com aceitação

jurídica.

O cuidado na manipulação das provas vem junto com a necessidade fundamental de

documentação de toda a investigação.

Todas as precauções devem ser consideradas e implementadas para se ter a certeza de que

os dados coletados são precisos, verdadeiros, confiáveis e que não foram modificados desde a sua

obtenção e coleta.

A coleta de dados eletrônicos que possam ser usados como provas em atividades ilegais

ou inaceitáveis deve ser feita com grande atenção. Devem ser registradas as informações a fim de

identificar cada pessoa que lidar com as provas, assim como, cada pessoa que tiver acesso às

provas e quando as provas são repassadas de uma pessoa a outra.

Documentar cada passo dado na coleta e processamento dos dados e seguir seus

movimentos, ou seja, identificar cada vez que a mídia de prova mudar de um responsável para

outro, com nome, data, hora, local, motivo e observações. Isto é a cadeia de custódia.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 37/166
Uma boa prática é usar ferramentas confiáveis, salvar os dados em mídia removível e

garantir que estes dados possam ser autenticados desde a sua obtenção e coleta, com métodos de

cálculo de "hash", assinaturas e testemunhas.

2.7 Obtenção e Coleta de dados

Mesmo que não haja a intenção de usar em um tribunal as provas obtidas. Os

procedimentos adotados na coleta de dados devem ser formais e seguindo uma metodologia como

se as provas obtidas fossem para serem usadas em um tribunal. Durante o andamento do caso

outros acontecimentos podem provocar a mudança na intenção de levar o caso a um tribunal.

Todas as informações que sejam relevantes devem ser coletadas. Em determinadas

ocasiões as informações obtidas levarão à descoberta de novas provas e até de novos crimes e

haverá a necessidade de iniciar os procedimentos referentes ao fato novo descoberto.

Muitas vezes é necessário restaurar informações de arquivos apagados ou de mídias

danificadas. Há vários softwares específicos para esta tarefa.

São fontes de informações em potencial:

- A CPU e seus dispositivos internos de registro (cachê e registradores)

- A memória de componentes, tais como placas.

- A Memória RAM

- O tráfego de rede

- As informações voláteis de estado do sistema (processos, usuários logados e conexões

de rede abertas)
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 38/166
- dispositivos de armazenagem (Disquetes, HDs, ZIP Drives e outras mídias)

2.8 A decisão de desligar ou não, eis a questão.

Quando se começa a análise forense em um host, não se pode confiar em nada no host.

Deve-se considerar o sistema como estando completamente comprometido, alterado, cheio de

"rootkits" e armadilhas e completamente monitorado por vários atacantes em caso de ser

examinado. Uma das primeiras decisões importantes é determinar se o sistema será desligado e

quando o sistema será desligado.

A decisão chave a respeito do desligamento do sistema deve ser baseada em uma

avaliação a respeito dos dados voláteis que serão perdidos ao se desligar o sistema, a questão de

que o atacante vai perceber imediatamente que a invasão foi detectada e não será mais possível

examinar seu comportamento e até guardar mais provas.

Pode-se obter e guardar os dados voláteis, desligar o sistema e partir para uma duplicação

pericial.

Pode-se manter o sistema ligado, isolar logicamente na rede o sistema, colocar uma

monitoração em nível de rede e guardar mais dados e provas sobre as ações do atacante. Assim,

pode-se conhecer mais o atacante determinando melhor suas habilidades, perfil, técnicas de

ataque, identidade, localização, motivações e ações.

É uma decisão chave.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 39/166
2.9 Duplicação pericial

Duplicação pericial é o procedimento relativo a providenciar uma ou mais cópias de

mídia envolvida em um incidente de segurança.

A decisão sobre fazer ou não uma duplicação pericial é de extrema importância e deve ser

tomada com brevidade.

Os objetivos podem ser:

- Preservar o original intocável;

- Poder restabelecer o funcionamento do "host", mas ter um espelho do conteúdo do

mesmo referente ao momento da duplicação pericial.

- Ter mais de uma cópia para poder entregar usando o conceito de "melhor prova" *

- Poder usar todo o sistema a ser investigado, inclusive inicializando um sistema idêntico

ao original, para fazer investigação e testes de funcionamento sem comprometer os dados na

mídia original;

*Melhor prova: às vezes você não vai poder levar a mídia original a um tribunal, mas

você pode ter uma "melhor prova" como uma cópia de dados em outra mídia ou até impresso em

papel, por exemplo, desde que sejam seguidos procedimentos operacionais de investigação que

montem uma cadeia de custódia que possibilite ao judiciário a garantia suficiente sobre a

veracidade dos dados.

Imagem de disco (disk image)

Uma imagem de disco é um espelho do conteúdo lógico de um drive lógico que é

guardado em um único arquivo. Isto pode ser útil para guardar o conteúdo de todo um drive para

recuperar depois.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 40/166
2.10 Examinando a Rede

Um dos principais sintomas para determinar com precisão que um incidente de segurança

está acontecendo e o que está acontecendo é o tráfego de rede anormal.

Para verificar o que está acontecendo e separar o tráfego normal do tráfego suspeito,

talvez tudo o que se precise seja de um notebook com alguma distribuição de Linux e examinar a

rede com atenção aos detalhes fazendo uso de algumas ferramentas como as seguintes:

* Tcpdump - http://www.tcpdump.org/ - Um dos principais programas de captura

de pacotes de rede, base para inúmeros outros programas de captura de pacotes de rede. O

tcpdump obtém e guarda ou imprime em tela os cabeçalhos dos pacotes de uma rede que

combinem com uma determinada expressão.

* Snort IDS - http://www.snort.org/ - Um excelente sistema de detecção de intrusões

de rede, open source.

* Ethereal - http://www.ethereal.com/ - Permite capturar e inspecionar graficamente o

tráfego de rede e pode rodar em plataforma Linux ou Windows.

* EtherApe - http://etherape.sourceforge.net/ - Mostra a atividade de rede graficamente.

Hosts e links mudam de tamanho conforme o tráfego. Os protocolos são identificados por cores.

* Tcpreplay - http://tcpreplay.sourceforge.net/ - Permite reenviar à rede pacotes criados a

partir de tráfego capturado anteriormente e guardados em um arquivo pcap numa velocidade

controlada. Ele faz o contrário do tcpdump.

O objetivo principal de conhecer a rede é identificar o comportamento normal do tráfego

e os desvios que por ventura venham a ocorrer.


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 41/166
Na forense computacional aplicada a redes há o estudo do tráfego da rede procurando o

que de fato acontece para questões cíveis, criminais e administrativas no intuito de proteger

usuários, ativos de rede e/ou recursos de exploração, invasão e qualquer outro crime ou ato

inaceitável para determinada política de segurança ou legislação.

A monitoração de rede pode ter como objetivos:

- Confirmar ou descartar a ocorrência de um incidente de segurança;

- Acrescentar mais informações à investigação;

- Obter e coletar provas;

- Verificar o escopo de abrangência do incidente;

- Identificar se a rede ou máquina comprometida está sendo ponto de partida para novos

ataques;

- Identificar quais máquinas, redes e ativos de rede foram comprometidos;

- Determinar quais senhas e contas de usuários foram comprometidas;

- Determinar quais senhas e contas de usuários estão sendo usadas pelo atacante;

-Guardar dados e logs de eventos de forma mais segura fora da máquina comprometida;

- Identificar data, hora e atividades de rede suspeitas;

- Determinar quais endereços de IPs estão envolvidos no incidente de segurança;

-Auxiliar a identificação de personagens importantes. Por exemplo, qual IP corresponde à

vítima, ao atacante, a um repositório de ferramentas do atacante, a depósitos de informações

obtidas pelo atacante, etc...

- Determinar e-mails ou sites envolvidos no incidente de segurança;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 42/166
- Avaliar o perfil, forma de agir (modus operandi) e capacidades aparentes do atacante.

- Determinar se há mais atacantes e grupos de atacantes envolvidos.

É crescente o número de protocolos em uso nas redes tornando o trabalho pericial mais

difícil. Para fazer frente ao trabalho duro o investigador deve ter um bom kit de ferramentas. É

grande o valor de se usar a ferramenta certa. Em algumas vezes, torna-se necessário um completo

e complexo programa de segurança com inúmeras funções e em outra ocasião pode ser

interessante ter um kit de centenas de programas, que tem funcionamento leve, bem controlado e

servem exatamente para obter aquilo que se necessita, nem mais nem menos.

A monitoração de rede, assim como todo o trabalho de forense computacional deve ter o

seu objetivo muito bem definido, por exemplo, o que se quer monitorar é:

- o tráfego que chega e sai de uma determinada máquina?

- o tráfego que chega e sai de uma determinada rede?

- um usuário específico?

- tentativas de invasão?

- assinaturas de ataque específicas?

- um protocolo específico?

A monitoração de rede pode ajudar a inocentar ou culpar alguém envolvido em um

incidente de segurança. Por exemplo, um acusado pode ter um programa cavalo-de-tróia em sua

máquina que dá controle total de sua máquina a um atacante qualquer a partir da internet. Assim

o acusado pode fazer uso da "negativa plausível" dizendo que não sabe nada sobre as atividades

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 43/166
ilegais originadas em sua máquina. Se houve monitoração de rede pode ser que seja possível

identificar se o cavalo-de-tróia estava em uso no momento da atividade ilegal, caso contrário

pode ser que o próprio acusado tenha deixado instalado este cavalo-de-tróia para ter uma

desculpa e se eximir de responsabilidades.

Ter um monitor na rede guardando informações do tráfego de redes e que também guarde

cópias dos logs locais das máquinas é uma opção que aumenta a segurança e confiabilidade

destes logs.

A localização de um monitor de rede é crucial em um sistema de segurança. Deve-se

levar em conta o objetivo deste monitor, pois conforme o objetivo será determinada a sua posição

na topologia de rede. Às vezes pode ser necessário usar a função de análise comutada de portas

(espelhamento de portas) (SPAN) que permite que uma única porta do switch receba cópias de

todos os pacotes destinados às outras portas para esta porta.

As etapas principais da análise forense de rede são:

- Capturar o tráfego conforme o objetivo determinado;

- Guardar adequadamente e assinar digitalmente os dados obtidos;

- Reconstruir as sessões suspeitas;

- Interpretar o ocorrido considerando as relações causa e efeito;

Diferentemente de vândalos e pichadores de sites, o atacante de elite e o atacante interno

têm o interesse de não ter sua ação percebida procurando limitar suas atividades àquelas que são:

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 44/166
- normalmente não monitoradas, como o tráfego em portas como 80(web), 110(pop),

25(smtp), etc...

- passíveis de evadir a monitoração, se houver. Por exemplo, podendo ser feito o uso por

tunelamento em outra porta não monitorada;

- difíceis de detectar ao usar um tráfego de forma a parecer com o tráfego normal ou com

uso de técnicas como esteganografia;

- de reprodução difícil, por exemplo, usando criptografia;

- difíceis de atribuir ao endereço IP realmente de origem, ao usar, por exemplo pacotes

UDP ataques distribuídos;

- dificultem a coleta de provas, por exemplo, alterando continuamente as portas;

- facilidade de manter uma negativa plausível ou álibi.

2.11 Cavalos de Tróia e Backdoors

A porta da frente pode não ter sido a entrada e tem possibilidade de não ser a única

entrada viável para um atacante, principalmente após o comprometimento inicial do sistema.

Depois de entrar um atacante pode providenciar novos meios de entrar, normalmente com

o objetivo de facilitar e ocultar ainda mais as ações futuras. Estas entradas implantadas no

sistema são chamadas de portas dos fundos ("backdoors").

Na investigação é bastante importante procurar por indícios de códigos maliciosos que

possam ter sido injetados no sistema com esta finalidade.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 45/166
2.11.1 Definição de Cavalo de Tróia

Cavalo de Tróia é um programa destrutivo que se apresenta aparentemente como uma

aplicação benigna.

Diferentemente dos vírus um cavalo de tróia não se replica por si só, mas pode ser tão

destrutivo quanto um vírus.

É comum um programa prometer remover vírus e cavalos de tróia e ao ser executado pode

fazer exatamente o contrário colocando códigos maliciosos como vírus e cavalos de tróia no

computador. Alguns cavalos de tróia podem vir em forma de proteção de tela, por exemplo, um

protetor de tela de um simples gatinho lindo e delicado que fica andando pela sua tela por ter em

seu interior códigos maliciosos de captura de teclas pressionadas em seu teclado (keylogger) ou

que captura a área da tela de cada clique dado por seu mouse (mouselogger), então há sim o

benefício de ter o gatinho divertindo o usuário, mas talvez a partir da próxima vez que for

utilizado um internet banking alguma quadrilha passará a se divertir com os dados de uma conta

bancária, senha, frase secreta e até as imagens com os números na seqüência que foram clicados

no teclado virtual do site do banco.

Na investigação é importante perceber se há rastros de o atacante ter instalado cavalos de

tróia.

2.11.2 BACKDOORs

Uma "backdoor" é um mecanismo sorrateiramente introduzido nos sistema de um

computador para facilitar o acesso não autorizado a este sistema. As "backdoors" podem ser

instaladas para acessar uma variedade de serviços, sendo particularmente interessante as que

oferecem acesso interativo. Estas são as mais freqüentemente instaladas pelos atacantes que
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 46/166
tenham comprometido um sistema para tornar mais fácil o seu retorno ao sistema,

preferencialmente de forma menos visível.

Na perspectiva de monitoração, as backdoors interativas rodam sobre protocolos tais

como Telnet [PR83a], Rlogin [Ka91] ou SSH [YKSRL99] Um exemplo de uma backdoor não

interativa pode ser um servidor SMTP não autorizado para facilitar o envio de e-mails por um

"spammer" e um exemplo parcialmente interativo seria um servidor de FTP ilegal rodando em

porta não autorizada para disponibilização de material ilegal como pirataria ou pornografia

infantil.

Na pesquisa para determinar quais portas TCP estão abertas ou oferecendo serviços pode

ser usando o comando 'netstat'.

Uma atenção especial deve ser dada se for encontrado algum serviço ilícito ou não

autorizado sendo oferecido em porta baixa, ou seja, inferior a 1024. Se isso acontece é porque o

atacante teve acesso a nível raiz.

Um princípio básico para detecção de backdoors é encontrar características indicativas de

atividade de rede suspeita, como acesso interativo, tráfego criptografado ou uso de um protocolo

específico como SSH. A característica mais importante a considerar na detecção de "backdoors"

é a capacidade de diferenciação entre tráfego normal e anormal.

A detecção se torna mais difícil com os atacantes que ativamente procuram se evadir de

uma eventual monitoração e fazem o possível para ocultar suas "backdoors".

A detecção de "backdoors" pode ser com monitoração de rede ativa, injetando pacotes,

ou passiva, evitando provocar quaisquer distúrbios na rede.

Alguns dos tipos comuns de backdoors tem propósito de disponibilizar serviços tais

como:

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 47/166
SSH

Rlogin

Telnet

FTP

Root prompt

Napster

Gnutella

Para critérios de filtragem para detecção de "backdoors" podem ser considerados:

* Tamanho dos pacotes. Muito do conteúdo é digitação e está em pequenos pacotes. A

filtragem para obter apenas os pacotes pequenos tende a reduzir significativamente a carga de

captura dos pacotes em alguns casos.

* Direção. A não ser que o atacante use algum tipo de serviço abrindo no estilo "callback"

normalmente se pode criar critérios de filtragem para procurar por tráfego que é anormal por sua

direção, por exemplo, para detectar o uso de um programa servidor ftp instalado em uma

máquina que deveria ter apenas cliente de ftp.

* Conteúdo dos pacotes. Procurando por palavras ou "strings" que denunciem um tráfego

suspeito, por exemplo, sinais de "prompt" e comandos de linha em uma conexão na porta 80.

Referência: "Detecting Backdoors - Yin Zhang

Department of Computer Science - Cornell University - Ithaca, NY 14853 -

yzhang@cs.cornell.edu - Vern Paxson1 AT&T Center for Internet Research at ICSI

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 48/166
International Computer Science Institute Berkeley, CA 94704 vern@aciri.org

http://www.icir.org/vern/papers/backdoor/ "

2.12 Investigando Ferramentas

2.12.1 Investigando software de código malicioso

É comum o atacante deixar software de código malicioso numa máquina comprometida.

O estudo para entender o funcionamento de qualquer software deixado por um atacante

pode ser importante para:

- Aprender detalhes sobre o funcionamento e criar defesas para os sistemas no futuro;

- Avaliar a capacidade técnica do atacante;

- Determinar a grandeza do comprometimento e dos danos provocados pelo uso do

software;

- Determinar se há o envolvimento de um ou mais atacantes;

- Verificar se o uso do software envolve redes e computadores de terceiros.

Há dois tipos básicos de análise para entender um software de código malicioso, tratam-se

da análise estática e a análise dinâmica.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 49/166
Na análise estática:

- Identificar o tipo de arquivo de que se trata o software, como foi compilado.

Pode-se usar o comando file do Unix.

Digitando-se, por exemplo:

"# file /bin/chmod"

Obtém-se a resposta:

/bin/chmod: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux

2.2.5, dynamically linked (uses shared libs), stripped

A resposta para todos os arquivos do diretório, pode ser obtida usando:

# file *

E ter como resposta:

arquivo_export.txt: Bourne-Again shell script text executable

ippg9.txt: ASCII text

arquivo_comp.tgz: gzip compressed data, from Unix

arquivo_teste.txt: ASCII text

arquivo_de_log.log: ASCII text

arquivo_teste_vazio: empty

arquivo_instucoes.txt: ISO-8859 text

mbox: ASCII mail text

arquivo_teste_html.htm HTML document text

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 50/166
É importante observar que o atacante pode mudar o nome do arquivo para usar uma

extensão inócua como .txt, mas se for usado o comando file vai entender que há algo estranho,

por exemplo:

# file nome_inocente*

nome_inocente.txt: ASCII text

nome_inocente2.txt: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for

GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped

nome_inocente3.txt: ASCII mail text

Nota-se que o único arquivo que tem conteúdo realmente de texto ASCII é o primeiro.

O comando file, com baseado no arquivo /usr/share/magic reconhece cerca de 5.000 tipos

diferentes de arquivos

Em plataforma windows um equivalente ao comando file é o "exetype" do NT Resource

Kit.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 51/166
2.13 Procurando dados

A procura por evidências pode ter motivos específicos, como encontrar e-mails (ex.

espionagem industrial interna), logs (atividades indevidas ou ataques), arquivos de navegador

(browser) (histórico, cookies) para investigação sobre mau uso da internet por funcionários,

dados em banco de dados e diversos outros conteúdos eletrônicos

A procura em uma mídia pode ser para obter:

Dados específicos;

- Frases;

- Arquivos;

- Números;

- Palavras chave;

- Outros.

Pode ser necessário ou interessante para o andamento da investigação determinar quando

um arquivo ou dado foi criado, acessado, modificado ou destruído

Muitas vezes os dados podem ser recuperados em:

- Arquivos em estado normal;

- Mídias que foram seriamente danificadas;


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 52/166
- Discos ou fitas reformatados;

- Discos que tiveram sua tabela de partição e inicialização alterados.

O tipo de mídia e de plataforma de sistema operacional de onde pode ser necessário

pesquisar ou recuperar dados pode variar muito, então é bom ter um ferramental e experiência

profissional diversificado para poder agir rápido mesmo quando for necessário lidar com uma

mídia ou sistema operacional menos comum.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 53/166
2.14 Obtendo informações em discos

O disco é uma fonte importante de obtenção de evidências em uma análise forense. A

quantidade de informações pode ser muito extensa levando um exame de disco a levar até muitos

dias.

Para a análise forense de sistemas de arquivos é considerável levar-se em conta as

especificidades de:

- Análise sobre cópias (duplicação pericial de baixo nível ou não)

- Uso de assinaturas digitais (visando integridade e autenticidade)

- Preservar os dados na mídia original

- MACTimes (datas de criação, acesso, modificação e deleção)

- Arquivos excluídos

- Mídias danificadas, formatadas ou apagadas

Há duas abordagens principais num exame de disco que são examinar os dados acessíveis

normalmente via sistema de arquivos e obter dados que possam estar inacessíveis ao sistema de

arquivos, seja por estarem danificados ou deliberadamente terem sido ocultados.

É grande o número de formas de esconder e recuperar dados em um disco rígido:

- Mudar a tabela de partições mudando determinadas partições para ocultas;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 54/166
- Marcar como defeituosos setores ou trilhas. Ou, seja, marcar como "bad blocks" áreas

que não estão de fato danificadas;

- Alterar a tabela de partições de forma a não mostrar determinadas partições que de fato

existam;

- Espaços não ocupados pelas partições lógicas na partição extendida, restando uma área

que pode ser usada para armazenar dados;

- É comum haver um espaço de setores não gravados entre o setor da tabela de partições e

o primeiro setor do boot da partição;

- O início do setor que contém o MBR com a tabela de partições tem espaços vazios antes

de seu início, de modo a permitir a guarda de informações ali;

- Conforme o tamanho dos blocos o sistema de arquivos pode não usar os últimos setores,

que, então podem ser usados para a guarda de informações ocultas;

- Algumas partições podem ser deixadas sem um sistema de arquivos, mas conter dados;

- A área de SWAP pode ser usada para guardar dados quaisquer que tipicamente não

deveriam estar na SWAP.

- Os dados vistos via sistema de arquivos como um todo podem ser, em alguns casos, um

mero engodo, para atrair a atenção do investigador, quando na verdade os dados importantes

estão sendo guardados sem o uso deste sistema de arquivos;

- Os espaços alocados para um arquivo podem não estar sendo usados pelo arquivo por

causa da divisão inexata do tamanho dos arquivos em relação ao tamanho dos blocos alocados.

Se um arquivo tem 4352 bytes em um sistema de arquivos com tamanho de bloco de 1024 bytes

ele vai ter alocado cinco blocos (1024+1024+1024+1024+1024), mas vai usar efetivamente

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 55/166
apenas uma parte do último bloco (1024+1024+1024+1024+256). Este espaço que sobrou de 768

bytes pode ser usado para guarda de informações.

2.14.1 Arquivos deletados

Ao ser deletar um arquivo o sistema de arquivos sua referência é removida do sistema de

arquivos, mas os dados referentes a este arquivo continuam no disco por anos até serem

sobrescritos por outros arquivos.

Para fazer uma análise forense uma duplicação pericial buscando arquivos ou fragmentos

de arquivos apagados e também examinar o uso indevido de áreas com informações ocultas é

necessário que esta duplicação pericial ter sido feita em forma de imagem bit a bit do disco

original.

O comando unrm no Linux traz as informações contidas em espaços não alocados, mas é

necessária a atenção em considerar que o uso de espaço daquele alocado mas não usado não será

pego pelo unrm, pois é considerado todo como espaço alocado.

O programa "Lazarus" do TCT (The Coroner's Toolkit) tenta reconstruir arquivos ou

dados a partir de um grupo de dados obtidos. Usualmente estes dados obtidos são fornecidos pelo

"unrm". O "Lazarus" pode ser usado para reconstruir objetos oriundos de outras fontes como da

memória do sistema e da memória swap. Esta ferramenta pode ser usada com dados vindos de

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 56/166
sistemas de arquivos UFS, EXT2, NTFS e FAT32, mas pode ser usada em praticamente qualquer

tipo de sistema de arquivos. O Lazarus pode ser usado para analisar dados obtidos em discos, em

dumps da memória, em áreas de swap e em arquivos core e tentar reconstruir dados agrupando-os

em dados coerentes.

2.15 Sistemas de arquivos NTFS

2.15.1 Sistemas de arquivos NTFS

O Windows é um sistema operacional de larga utilização, mas é desafiador para o

investigador porque se trata de um sistema operacional fechado e de documentação escassa.

É sempre interessante fazer a análise forense de um sistema Windows utilizando um

outro sistema operacional para se ter a certeza de não se alterar dados.

2.15.2 O NTFS

A família FAT de sistemas de arquivos, incluindo FAT12, FAT16 e FAT32 têm sido

utilizada em sistemas operacionais da Microsoft deste a década de 80. Praticamente todos aqueles

que utilizaram um PC são familiarizados com pelo menos o básico destes sistemas de arquivos. O

sistema de arquivos FAT é bom o suficiente para uso doméstico, mas é muito antigo e limitado.

As características de segurança, capacidade e confiabilidade do FAT são insuficientes para a

demanda atual de uso em servidores ou estações de trabalho importante em um ambiente

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 57/166
corporativo. Então a Microsoft criou o "New Technology File System" ou NTFS. OS objetivos

do NTFS eram prover com flexibilidade um sistema de arquivos seguro e confiável.

O NTFS (New Technology File System – Sistema de Arquivo de Alta Tecnologia) é o

sistema de arquivos utilizado pelo Windows 2000 de forma nativa. O Windows 2000 suporta

também o sistema FAT oriundo do DOS.

O NTFS foi criado para ser totalmente novo e não baseado em sistemas FAT, mas ele não

é inteiramente novo, porque sua concepção foi baseada no HPFS ("High Performance File

System" - Sistema de Arquivo de Alta Performance).

o NTFS foi desenhado para atingir alguns objetivos, dentre eles:

- Confiabilidade: Para poder ser recuperado em caso de problemas, sem perda de dados o

NTFS implementa procedimentos para permitir a conclusão de transações importantes de uma

forma integral para evitar perda de dados e para melhorar a tolerância a falhas;

- Segurança e controle de acesso: A maior fraqueza dos sistemas de arquivos FAT é não

ter controle de acesso nativo a arquivos e diretórios para gerenciar quem pode ler, escrever ou

executar determinado arquivo.

- Barreiras de tamanho: Na década de 90 o FAT, no caso o FAT16, era limitado a

partições até 4 GB. O NTFS foi projetado para trabalhar com unidades grandes, já prevendo o

crescimento futuro de unidades de disco, assim como o uso de matrizes "raid";

- Eficiência na guarda de dados: Método novo de alocação de espaço para arquivos para

evitar desperdício de espaço na alocação, como acontecia no FAT16.

- Nomes longos para arquivos: O NTFS permite até 255 caracteres, ao invés dos 8+3 do

FAT convencional;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 58/166
- Rede: Algumas características para facilitar o uso em rede em larga escala são do

sistema operacional em conjunto com o sistema de arquivos NTFS

O investigador deve ter em mente que o sistema de arquivos que está sendo o mais usado,

em estações de trabalho e em servidores é o NTFS.

A Microsoft continuou modificando o NTFS. Novas características foram sendo

adicionadas. O NTFS 5.0 foi introduzido como parte do Windows 2000. Ele é similar em muitos

aspectos ao NTFS usado no Windows NT, mas adiciona várias novas características e

capacidades. Foram corrigidos problemas do NTFS para ajudar e ficar mais estável e mais

respeitado como um sistema de arquivo sério.

2.15.2.1 Versões do NTFS

2.15.2.2 NTFS 1.1 / 4.0

Seu nome oficial é NTFS versão 1.1, mas é também chamado de NTFS 4.0, por ter sido

usado no Windows NT versão 4.0.

2.15.2.3 NTFS 5.0 parte do Windows 2000

As características mais importantes que foram acrescentadas ao NTFS com a versão 5.0

são as seguintes:

- "Reparse Points": Arquivos e diretórios dentro do sistema de arquivos podem ter ações

associadas, então quando o objeto é acessado de uma forma em particular a ação ocorre;

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 59/166
- Segurança melhorada e permissões: Os mecanismos para gerenciamento de segurança

do sistema de arquivos e permissões foram melhorados;

- "Change Journals": Os volumes de disco podem ser configurados para registrar todas as

operações executadas nos arquivos e nos diretórios que contêm;

- Criptografia: NTFS 5.0 permite a você cifrar arquivos e automaticamente decifrar

quando eles forem lidos;

- Cotas de disco: OS administradores podem detectar quando espaço em disco está sendo

usado por usuários ou grupos de usuários e também limitar o espaço se necessário;

- Suporte a arquivos "sparse": Para economizar espaço em disco foi adicionado suporte

para uma armazenagem mais eficiente de arquivos "sparse", os quais são arquivos grandes que

são em sua maioria vazios;

- Desfragmentador de disco: O Windows2000 inclui um programa de desfragmentação de

disco e o Windows NT não incluía. Isto diz respeito à mudança no sistema operacional, mas está

diretamente relacionado ao sistema de arquivos.

2.15.2.4 Explanando sobre o NTFS

Tudo no NTFS é um arquivo. O índice para estes arquivos é a MFT (Master File Table).

A MFT lista o setor de boot ($Boot) localizado no início do disco. O boot ($boot) também lista

onde pode ser encontrada a MFT. A MFT também lista a si mesma.

Localizados no centro do disco, encontram-se mais arquivos de metadados. Os mais

interessantes são $MFTMirr e $LogFile. O espelho do MFT ($MFTMirr) é uma cópia exata dos

primeiros 4 registros da MFT. Se a MFT foi danificada é possível recuperar a partir da cópia

espelho. O arquivo de log é o "journal" de todos os eventos aguardando para ser escritos no disco.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 60/166
Se a máquina teve uma interrupção inesperada, então o arquivo de log é usado para ajudar a

trazer o disco de volta em um estado mais coerente.

Escondido no final do volume há uma cópia do setor de boot (cluster 0). O único arquivo

de metadados que faz referência a este é o $Bitmap e apenas diz que o cluster está em uso.

2.15.2.5 Lista de controle de acesso (Access Control Lists - ACLs) e entradas controle de

acesso (Access Control Entries - ACEs)

O gerenciamento de segurança e acesso aos objetos no NTFS inicia no mesmo lugar onde

tudo começa no NTFS, na "Master File Table" (MFT). O registro MFT para cada arquivo e

diretório em um volume NTFS contém um atributo chamado "security descriptor (SD)" que

contém informação relacionada à segurança e permissões do objeto correspondente.

Um dos mais importantes elementos dentro do "security descriptor" para qualquer objeto

é a configuração de listas dentro dele, às quais determinam que usuários podem acessar o objeto e

de que maneira. Elas são chamadas de listas de controle de acesso (Access Control Lists - ACLs).

Cada objeto em uma partição NTFS tem dois diferentes tipos de ACLs:

- "System Access Control List" (SACL): Esta ACL é gerenciada pelo sistema e é usada

para controlar a auditoria de tentativas de acessar o objeto;

- "Discretionary Access Control List" (DACL): Esta é a ACL usada de fato. Aqui são

guardadas as permissões que controlam que usuários e grupos de usuários têm direitos a que tipos

de acesso ao objeto.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 61/166
Cada entrada em uma ACL é chamada de um controle de acesso ou ACE (Access Control

Entries). Cada entrada contém um "ID code" que é o que identifica o usuário ou grupo ao qual a

ACE é aplicada e então a informação específica sobre as configurações de permissões é aplicada

para aquele usuário ou grupo.

A ACL de cada objeto é uma combinação de várias configurações de controle de acesso

contidas em diferentes ACEs. Um objeto típico deve ter diferentes conjuntos de permissões

determinadas para vários usuários ou grupos. De fato, alguns conjuntos de permissões podem

conflitar entre si, uma vez que os usuários podem ser membros de mais que um grupo e os grupos

podem ter permissões diferenciadas. Quando um objeto é acessado, um processo de resolução de

permissões entra em ação e determina que permissões têm precedência e conseqüentemente

quando uma determinada tentativa de acesso deve ser permitida ou negada.

As ACLs são altamente afetadas pelo modelo de herança particular usado pelo sistema

operacional. O Windows NT usa um modelo de herança estática, o qual determina o padrão de

ACL de um novo objeto a partir da ACL da pasta pai. O Windows 2000 usa um esquema de

herança dinâmica mais avançado que provê um melhor controle sobre como as ACLs para um

objeto funcionam, deixa sub pastas e arquivos ter suas ACLs modificadas automaticamente

quando os ACLs de suas pastas pai mudam e permitem um controle mais fino sobre a herança em

geral. Esta funcionalidade mais avançada pode ser aplicada no Windows NT 4.0 usando o

Service Pack4 e o SCM (Security Configuration Manager).

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 62/166
2.15.2.6 NTFS - Permissões

As listas de controle de acesso Access control lists (ACLs) são usadas para gerenciar

quais usuários e grupos tem acesso permitido a diferentes objetos, arquivos e pastas, dentro de

um volume NTFS. Estas ACLs contêm entradas que especificam que direitos cada usuário ou

grupo tem no acesso ao objeto em questão. Estes direitos de acesso são chamados de permissões.

Quando o Windows NT foi criado, seis diferentes tipos de permissões foram criados para

os objetos NTFS. A interface de usuário do NT foi projetada para permitir associar estas

permissões a objetos. Cada tipo de permissão controla um tipo diferente de acesso a um objeto e

cada uma tem uma letra de abreviação. Estes tipos de permissões são chamados de permissões

especiais, para diferencia-las dos grupos de permissões padrões que são aplicadas em um nível

mais alto.Em alguns casos o significado de uma permissão é o mesmo tanto para arquivos, quanto

para pastas e, em outros, o significado é diferente dependendo se a permissão é aplicada a um

arquivo ou a uma pasta.

As diferentes permissões do NT com suas aplicações a arquivos e pastas são:

Tipo de permissão - Letra de abreviação - Descrição

[Read][R][Ler o conteúdo do arquivo ou pasta]

[Write][W][Modificar o conteúdo do arquivo ou criar novos arquivos ou sub-pastas]

[Execute][X][Executar um programa ou executar conteúdos da pasta]

[Delete][D][Apagar arquivo ou pasta]

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 63/166
[Change Permissions][P][Modificar as permissões do arquivo ou pasta]

[Take Ownership][O][Tornar-se proprietário do arquivo ou pasta]

Há um outro tipo fundamental de permissão, que é "Delete Subfolders and Files". Esta

permissão se aplicada em uma pasta pai dá direito a um usuário de apagar arquivos e pastas

dentro da mesma, ainda que não tenha permissão de apagar nos atributos específicos dos arquivos

e pastas em questão..

Até que o Windows 2000 fosse lançado, as seis permissões básicas eram o mais baixo

nível que o NTFS podia acessar. O Windows 2000 introduziu novas permissões, totalizando

treze: "Traverse Folder / Execute File, List Folder / Read Data, Read Attributes, Read

Extended Attributes, Create Files / Write Data, Create Folders /

Append Data, Write Attributes, Write Extended Attributes, Delete Subfolders and Files,

Delete, Read Permissions, Change Permissions, Take Ownership".

2.15.2.7 Auditoria no NTFS

O NTFS permite aos administradores logar de tudo, desde logins, o uso de impressoras a

erros de sistemas. A auditoria pode ser selecionada para arquivos ou pastas e pode ser para

objetos individuais ou hierarquia de pastas, da mesma forma que as permissões são. Isto pode ser

muito útil na investigação de ações em curso seja de um programa ou de um atacante.

2.15.2.8 Master File Table (MFT)

A formatação de uma partição NTFS resulta na criação da MFT (Master File Table) e de

arquivos de sistema. A MFT contém informações sobre todos os arquivos e diretórios de uma

partição NTFS.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 64/166
Um investigador experiente em um trabalho de análise em forense computacional pode

encontrar dados bastante valiosos no arquivo $MFT.

MFT é provavelmente o mais importante dos arquivos chave do sistema (metadados) que

definem um volume NTFS. A tabela de arquivos mestra (Master File Table - MFT) é o lugar

onde ficam as informações sobre todo arquivo ou pasta em um volume NTFS. A MFT é em

essência uma tabela de banco de dados relacional, contendo vários atributos de diferentes

arquivos.

A MFT é o coração da estrutura de arquivos do Windows NT e 2000. Como qualquer

banco de dados a MFT é uma coleção de registros. Cada registro contém informação sobre como

o sistema deve lidar com o arquivo ou diretório associado com o registro.

A MFT funciona como um ponto de partida e gerenciamento central em um volume

NTFS, como um índice do conteúdo do volume. É como a tabela de alocação do sistema FAT,

mas tem mais informações que apenas uma lista de clusters usados e disponíveis.

Quando qualquer arquivo ou pasta é criado em um volume NTFS, um registro é criado

dentro da MFT. O tamanho de cada registro na MFT é igual tamanho de cluster do volume, mas

com um mínimo de 1024 bytes e um máximo de 4096 bytes. Mas, algumas fontes dizem que o

tamanho de cada registro na MFT é fixado em 1024 ou 2048 bytes.

O sistema usa estes registros MFT para guardar informações a respeito do arquivo ou

pasta. Esta informação tem a forma de atributos. Uma vez que o tamanho de cada registro na

MFT é limitado há diferentes meios de o NTFS guardar os atributos de um arquivo: tanto

atributos residentes que são armazenados no registro MFT ou atributos não residentes são

guardados em registros MFT adicionais ou em extensões fora da MFT.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 65/166
Cada registro MFT contém um cabeçalho com informações básicas descrevendo o próprio

registro:

- Números de seqüência, usados para verificação de integridade;

- Ponteiro para o primeiro atributo do registro;

- Ponteiro para o primeiro byte livre no registro;

- Número do registro em relação ao registro base da MFT, caso não seja o primeiro.

A posição padrão da MFT num sistema NTFS vazio é conforme o seguinte:

[Setor de boot][MFT][espaço livre][mais metadados][espaço livre]

O cabeçalho inicial é seguido por um ou mais

atributos que descrevem as características do arquivo.

Registro da MFT:

[Cabeçalho] [Atributos] [Outros cabeçalhos] [Espaço livre]

Cada item é dividido em duas partes:

um cabeçalho que guarda o tipo do atributo, nome, flags e a localização da parte de dados

do registro, e uma parte de dados onde é armazenada a informação do registro. Há várias

possibilidades para o armazenamento de dados nos registros da MFT.

2.15.2.9 Zona MFT

Para evitar que a MFT seja fragmentada, o Windows mantém um "buffer" ao redor dela.

O NTFS reserva um percentual do volume para uso exclusivo da MFT. Nenhum arquivo pode ser

criado nesta região de "buffer". O tamanho deste "buffer" vai sendo modificado conforme a

utilização do disco for tornando outras áreas como cheias.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 66/166
Um dos fatos mais interessantes sobre o MFT é que algumas vezes guarda os dados reais

do arquivo junto com todos os dados do sistema relacionados ao arquivo. Os dados guardados na

MFT são chamados de dados residentes. Isto tem um significado especial ao se considerar a

segurança a respeito do eventual vazamento de dados sensíveis. É também interessante notar que

não há "file slack" (espaço desperdiçado de armazenamento de dados que existe do final do

arquivo ao final do cluster marcado como sendo alocado para este arquivo que poderia ser usado

por um atacante para guardar dados ou analisado por investigador para obter dados antigos), mas

pode haver outro tipo de folga (slack) chamada de "MFT slack". O conhecimento da existência

de "MFT slack" é de grande importância para o investigador. Há ferramentas de forense

computacional que capturam "file slacks", mas que ignoram os "MFT slacks". Existem

ferramentas especializadas em processar e examinar o arquivo $MFT que é o nome formal do

arquivo MFT. Isto é abordado no curso e ferramentas da empresa New Technologies Armor

http://www.forensics-intl.com/intro.html

O investigador deve saber que ao apagar um arquivo apenas o primeiro bit do registro

MFT é apagado.

Além da MFT, o processo de formatação ainda cria um conjunto de arquivos que contém

meta dados usados para implementar a estrutura do sistema de arquivos. Tais arquivos são

mapeados nos primeiros registros da MFT.

Arquivos de Metadados:

Nome do arquivo - Registro MFT - Descrição

$MFT - 0 - Master File Table

$MftMirr - 1 - Cópia de pelo menos os 4 registros da MFT para recuperação

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 67/166
$LogFile - 2 - Arquivo de log das transações no disco

$Volume - 3 - Número de série do volume, data de criação e a flag "dirty"

$AttrDef - 4 - Se presente, contém definição dos atributos utilizáveis em um volume

$. - 5 - Diretório raiz do volume chamado de "." (ponto). O "." é um diretório comum.

$Bitmap - 6 - Representação do disco indicando que clusters estão em uso.

$Boot - 7 - Aponta para o setor de boot do volume

$BadClus - 8 - Lista de todos os clusters defeituosos no volume.

$Quota - 9 (Windows NT) - Informação de cota

$Secure - 9 (Windows 2000) - Lista de dos "security descriptors" de todos os arquivos do

volume

$Upcase - 10 - Arquivo de 128KB cheio de caracteres maiúsculos usado para comparar e

ordenar arquivos

$Extend - 11 (Windows 2000) - É um diretório que contém os arquivos de metadados

$ObjId, $Quota, $Reparse e $UsnJrnl.

$Objid - __ (Windows 2000) - Ids únicos dados a cada arquivo

$Quota - __ (Windows 2000) - Informação de cota

$Reparse - __ (Windows 2000) - Innformação de "reparse points"

$UsnJrnl - __ (Windows 2000) - "Journaling de criptografia"

$Objid - __ (Windows 2000) - Ids únicos dados a cada arquivo

Um_arquivo - > 24 - um arquivo comum

Uma_pasta - > 24 - uma pasta comum

2.15.2.10 NTFS - Nomenclatura de arquivos


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 68/166
As características de nomenclatura de arquivos regulares no sistema de arquivos NTFS

são as seguintes:

• Tamanho: até 255 caracteres.

• Maiúsculas e minúsculas: As características de as letras estarem

maiúsculas e minúsculas são preservadas, mas o NTFS se referencia aos nomes de

arquivos de forma "case-insensitive" ou seja não diferencia maiúsculas e minúsculas ao

lidar com os arquivos, apenas preserva.

• Caracteres: Os nomes podem conter quaisquer caracteres, incluindo

espaços, exceto os seguintes, que são geralmente usados pelo sistema operacional para

delimitadores ou operadores: ? " / \ < > * | :

Armazenamento Unicode: Todos os nomes no NTFS são armazenados no formato

"Unicode".

2.15.2.11 NTFS - Atributos de arquivos

Todos os atributos de arquivos e pastas no NTFS são arquivados de duas diferentes

formas dependendo das características do atributo, em especial do seu tamanho.

- Atributos residentes - Atributos que requerem um espaço de armazenagem

relativamente pequeno são armazenados diretamente dentro do registro MFT primário. Muitos

dos atributos mais simples e comuns são arquivados dentro do arquivo MFT. De fato, o NTFS

requer que sejam residentes no registro MFT para funcionamento adequado. Por exemplo, o

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 69/166
nome do arquivo e suas data e hora de criação, modificação e acesso são residentes para cada

arquivo.

- Atributos não residentes - Se um atributo requer mais espaço do que é disponível dentro

do registro MFT ele não obviamente é guardado naquele registro. Ao invés disto, o atributo é

colocado em um local separado e um apontador é colocado no MFT para levar à localização do

atributo.

Na prática, apenas os menores atributos podem caber nos registros MFT. Muitos outros

atributos vão ser arquivados de forma não residente.

O NTFS tem um número predefinido de atributos, chamados de "system defined

attributes" (atributos definidos pelo sistema). Alguns são associados com um ou mais tipos de

estrutura.

Os atributos definidos pelo sistema mais comuns do NTFS são:

Attribute List: Este é um meta-atributo: Um atributo que descreve outros atributos. É

necessário para um atributo ser feito como não residente. Este atributo é colocado no registro

MFT original para agir como apontador para o atributo não residente;

Bitmap: Contém o bitmap de alocação de clusters. É usado pelo arquivo de metadados

$Bitmap

Data: Contém os dados do arquivo. Por padrão, todos os dados em um arquivo são

armazenados em um único atributo de dados, mesmo se este atributo for quebrado em muitos

pedaços devido ao seu tamanho, este ainda continua sendo um único atributo, mas podem ser

múltiplos atributos de dados para aplicativos especiais.

Extended Attribute (EA) and Extended Attribute Information: Estes são atributos

especiais que são implementados para compatibilidade com o OS/2.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 70/166
File Name (FN): Este atributo guarda um nome associado a um arquivo ou pasta. Note

que um arquivo ou pasta pode ter múltiplos atributos de nome de arquivo para permitir armazenar

o nome "regular" do arquivo junto com um nome no formato curto MS-DOS e também hard links

do tipo POSIX de múltiplos diretórios.

Index Root Attribute: Este atributo contém o índice de arquivos contidos em uma pasta

ou parte de um índice se for muito grande. Se a pasta é pequena o índice inteiro vai caber no

registro MFT, mas se for muito grande alguma informação fica aqui e o restante é armazenado

em atributos externos.

Index Allocation Attribute: Se uma pasta é muito grande para caber no atributo "index

root attribute" o registro MFT para a pasta vai conter este atributo com apontadores para as

entradas que contém o restante da informação de índice da pasta.

Security Descriptor (SD): Este atributo contém informação de segurança que controla o

acesso a um arquivo ou pasta. Listas de controle de acesso (Access Control Lists - ACLs) e dados

relacionados são armazenados neste atributo. A propriedade do arquivo e as informações de

auditoria também são armazenadas aqui.

Standard Information (SI): Contém a informação padrão para todos os arquivos e

diretórios. Isto inclui propriedades fundamentais tais como "date/time-stamps" para quando o

arquivo foi criado, modificado e acessado. Também contém os atributos padrão do tipo FAT

usualmente associados a um arquivo (Por exemplo, se é apenas leitura, oculto e outros).

Volume Name, Volume Information, and Volume Version: Estes três atributos

guardam o nome, versão e outras informações sobre o volume NTFS. É usado pelo arquivo de

metadados $Volume.

2.15.2.12 NTFS - Arquivos e armazenamento de dados


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 71/166
Como a maioria dos sistemas de arquivos a unidade fundamental de armazenamento do

NTFS pela perspectiva do usuário é o arquivo. O arquivo é apenas uma coleção de dados e pode

conter de tudo: programas, arquivos de texto, clipes de áudio e/ou vídeo, registros de banco de

dados e centenas de outros tipos de conteúdo. O sistema operacional não distingue entre tipos de

arquivos. O uso de um arquivo em particular depende em como ele é interpretado pelas

aplicações que o usam.

No NTFS não há distinção especial entre os dados em um arquivo e os atributos que

descrevem o arquivo e todos os arquivos são guardados da mesma forma, como uma coleção de

atributos. Isto inclui os dados por si, que é tratado como um outro atributo (data attribute). Para

entender o funcionamento do NTFS a ponto de se trabalhar com uma análise forense consciente é

necessário entender o funcionamento da arquitetura do NTFS e, em especial, a MFT (Máster File

Table), juntamente com o conhecimento a respeito dos atributos residente e não residentes do

NTFS.

A forma como os dados são armazenados no NTFS depende do tamanho do arquivo. A

estrutura básica de cada arquivo está de acordo com as seguintes informações que são

armazenadas em cada arquivo:

Header (H): O cabeçalho na MFT é um conjunto de dados de gerenciamento de baixo

nível usados pelo NTFS para gerenciar a pasta. Ele inclui números de seqüência usados

internamente pelo NTFS e apontadores para os outros atributos e espaço livre dentro do registro

MFT. O cabeçalho é parte do registro MFT, mas não é um atributo.

Standard Information Attribute (SI): Ver descrição acima, em atributos.

File Name Attribute (FN): Ver descrição acima, em atributos.

Data (Data) Attribute: Contém os dados do arquivo. Ver detalhes em atributos.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 72/166
Security Descriptor (SD) Attribute: Ver descrição acima, em atributos.

Se um arquivo é pequeno o suficiente para que todos os seus atributos caibam dentro do

registro MFT para o arquivo, então o arquivo é armazenado integralmente dentro da MFT.

Quando isto ocorre depende completamente do tamanho dos registros MFT usados no volume. Se

o arquivo é muito grande para todos os atributos caberem no registro MFT, o NTFS inicia uma

série de expansões que movem os atributos para fora da MFT e faz deles atributos não residentes.

A seqüência de passos é mais ou menos assim: O NTFS tenta guardar integralmente o arquivo na

entrada na MFT, isso só vai acontecer com sucesso com arquivos extremamente pequenos. Se o

arquivo é muito grande para caber na MFT, o atributo de dados (data attribute) torna-se não

residente. A entrada para o "data attribute" na MFT contém apontadores para "data runs",

também chamados de "extends", que são blocos de dados armazenados em seções contínuas no

volume fora da MFT.

O arquivo pode tornar-se tão grande que não haja espaço no registro MFT nem mesmo

para a lista de apontadores no atributo de dados. Se isto acontece, a lista de apontadores do

atributo de dados é tornada ela mesma não residente. Assim como um arquivo que não tem

atributo de dados em seu registro MFT principal, ao invés disso, um apontador é colocado no

registro MFT principal para um segundo registro MFT que contém a lista de apontadores para os

dados "data runs".

O NTFS continua expandindo sua estrutura flexível para arquivos grandes que são

criados. Ele pode multiplicar registros MFT se necessário para guardar um grande número de

apontadores para diferentes dados "data runs". Quanto maior o arquivo, a estrutura de

armazenamento se torna mais complexa.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 73/166
Os dados "data runs" (extends) são onde estão a maioria dos arquivos de dados em um

volume NTFS. Eles consistem em blocos contínuos de "clusters" no disco. Os apontadores no

atributo de dados para o arquivo contém uma referência do início e o número de clusters no "data

run". O ponto de partida de cada "data run" é identificado usando um número de cluster virtual

(VCN - virtual cluster number). O uso de um esquema apontador+tamanho significa que no

NTFS não é necessário ler cada "cluster" do arquivo na ordem para determinar onde o próximo

no arquivo está localizado. Este método reduz a fragmentação de arquivos se comparado com o

sistema FAT.

Capítulo III - FERRAMENTAS

3.1 F.I.R.E. Linux

3.1.1 F.I.R.E. Linux (Forensic and Incident Response Environment)

O nome completo é "Forensic and Incident Response Environment Bootable CD" que

significa CD com boot de inicialização com ambiente forense e de resposta a incidentes.

Informações e o download do programa podem ser obtidas em:

URL: http://biatchux.dmzs.com/

As informações desta parte foram traduzidas a partir da versão em inglês no site

http://biatchux.dmzs.com/

O F.I.R.E. é software livre podendo ser copiado, modificado e distribuído sob os termos

da licença GNU da Free Software Foundation.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 74/166
Trata-se de uma distribuição de Linux com ferramentas de segurança e um menu de

sistema feito para tornar fácil o seu uso. Para usá-lo não é necessário mudar nada no computador,

então pode ser experimentado em qualquer computador sem maiores preocupações.

O F.I.R.E. foi criado e é mantido por William Salusky.

Dentre outras coisas o F.I.R.E. pode ser usado para:

- Coletar dados de um host potencialmente comprometido e fazer uma análise forense;

- Responder a um incidente de segurança usando arquivos binários confiáveis;

- Recuperar dados de partições perdidas;

- Efetuar uma checagem procurando por vírus em discos rígidos em um ambiente limpo

de vírus;

- Realizar um teste de penetração ou uma avaliação de vulnerabilidades.

3.1.2 Comparando o F.I.R.E. com algumas outras distruições baseadas em CD ou em

disquete

Knoppix

* Knoppix oferece uma quantidade enorme de aplicações e uma detecção de hardware

excelente, mas o F.I.R.E. oferece mais ferramentas relevantes ao especialista em segurança.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 75/166
Trinux

* Trinux pode ser inicializado a partir de um disquete e pode rodar em computadores

muito antigos, mas o F.I.R.E. inclui mais ferramentas por padrão e um servidor X opcional que

permite rodar softwares disponíveis apenas em versões GUI ("Graphical User Interface" -

Interface gráfica do usuário).

PLAC

* PLAC é uma boa coleção de ferramentas de segurança em um CD-ROM, mas F.I.R.E.

tem um menu de sistema que torna muito fácil o uso e é especializado em recuperanção de dados

e análise forense e é desenvolvido ativamente.

3.1.3 Plataforma necessária

O F.I.R.E. exige um PC compatível com Intel x86 com pelo menos

48MB de RAM.

Para usar o sistema de janelas X (X Window System) sua placa de vídeo

e monitor deve suportar resolução de 800x600 pixels e "VESA frame buffer"

e, você deve ter um mouse, é claro.

Licença do F.I.R.E

Basicamente, pode ser usado e copiado como se quiser, mas deixando os créditos onde

estão.

O F.I.R.E é distribuido sem nenhuma garantia.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 76/166
O F.I.R.E. é distribuído em um arquivo de imagem de CD .iso o qual você pode fazer o

download e gravar em um CD-ROM.

É importante ter muita atenção ao verificar a integridade do arquivo recebido. Para este

trabalho, devido ao cuidado com a confiabilidade e integridade dos dados do arquivo de imagem,

foi obtido o arquivo de diferentes fontes ("mirrors" - sites espelho) oficiais checadas com hash

MD5. As imagens não eram cópias fiéis, pois a resposta de MD5SUM era diferente. Para uma

verificação mais aprofundada foram obtidas diferentes imagens do arquivo para máquinas e redes

totalmente diferentes e a resposta MD5SUM apresentava um resultado diferente para os

diferentes servidores "mirrors". Isto pode ser causado por problemas na transmissão (download)

do arquivo ou o arquivo no servidor "mirror" pode não estar íntegro. Como um servidor e uma

rede na internet estão sempre sujeitos a falhas de disponibilidade e a incidentes de segurança,

muitas vezes inteligentes e complexos há que se cuidar. Ao se lidar com uma ferramenta de

segurança como esta e principalmente levando-se em conta o uso importante que se fará dela é

crítico e necessário fazer uma verificação simples como esta ou pode-se ter uma ferramenta

produzindo resultados incorretos e perigosos.

A versão atual (em 16/maio/2004) é a 0.4a, diponível em:

http://prdownloads.sourceforge.net/biatchux/fire-0.4a.iso?download (578M iso image)

3.1.4 F.I.R.E. Linux Pacotes disponíveis

3.1.4.1 Ferramentas incluídas no F.I.R.E

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 77/166
É extensa a lista de ferramentas, com 196 pacotes disponíveis, sendo que algumas das

ferramentas mais populares são:

* Nessus, Nmap, whisker, hping2, hunt, fragrouter

* Ethereal, Snort, tcpdump, ettercap, dsniff, airsnort

* chkrootkit, F-Prot

* tct, tctutils, Autopsy

* Testdisk, fdisk, gpart

* SSH (client and Server), VNC (client and server)

* Mozilla, ircII, mc, Perl, biew, fenris, gpg

Conjuntos de pacotes (não estão listados todos os pacotes):

- Sistema operacional base (Base OS) (38 Pacotes)

- Forense / Recuperação de dados (Forensics/Data Recovery) (51 Pacotes)

- Resposta a Incidentes (Incident Response) (53 Pacotes)

- Teste de penetração (Pen-Test) (133 Pacotes)

- Binários linkados estaticamente (Static Linked Binary) (5 Pacotes)

- Anti-Vírus (Virus Scanning) (1 Pacotes)

Sistema operacional base Base OS (38 pacotes). Abaixo seguem nomes, descrições e tipo de

licença:

bsed - Editor de "binary stream" - GNU Licença Pública Geral General Public License

(GPL)

burneye v1.0 - Programa de criptografia "burneye ELF", x86-linux binary - GNU General

Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 78/166
cgrep v8.13 - Mostra o contexto de padrões que combinam encontrados em arquivos.

Cgrep provê todas as características de grep, egrep e fgrep - GNU General Public License (GPL)

cpio - GNU cpio copia arquivos para dentro ou para fora de um arquivo cpio ou tar. O

arquivo pode estar em outro arquivo no disco, numa fita magnética ou num "pipe". - GNU

General Public License (GPL)

curl v7.10.4 - Curl é uma ferramenta para transferir arquivos com sintaxe URL,

suportando FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE e LDAP. Curl suporta

certificados HTTPS, HTTP POST, HTTP PUT, upload via FT, kerberos, formulário HTTP de

upload, proxies, cookies, autenticação usuário+senha, reinício (resume) em transferência de

arquivo, tunelamento http proxy e vários outros truques úteis. - GNU General Public License

(GPL)

di v3.8 (disk info) - 'di' é um utilitário de informação de disco, mostrando tudo (e mais)

que o seu comando 'df' mostra. Ele tem a característica de mostrar o uso de disco em qualquer

formato que se queira. - di License

echoping - echoping é um pequeno programa para testar (aproximadamente) a

performances de um host remoto enviando a ele pacotes TCP echo (ou outros protocolos). - GNU

General Public License (GPL)

expect v5.32.2 - Expect é uma ferramenta para automatizar aplicações interativas como

telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect é também útil para testes destas mesmas

aplicações. - GNU General Public License (GPL)

fdisk - fdisk - ferramenta de particionamento em geral - GNU General Public License

(GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 79/166
gentoo v0.11.34 file manager - gentoo é um moderno, poderoso, flexível e altamente

configurável gerenciados de arquivos para sistemas UNIX, escrito usando o GTK+ toolkit. De

acordo com os autores o gentoo é 100% configurável graficamente não sendo necesário editar

arquivos de configuração na mão e então restartar a aplicação. Gentoo é um tanto inspirado no

seu visual e usabilidade no clássico programa DirectoryOpus 4 da Amiga, mas não é um clone. -

GNU General Public License (GPL)

gpg v.1.2.1 - GnuPG ou GNU Privacy Guard é uma ferramenta GNU para comunicação

segura e guarda de dados. Pode ser usado para cifrar dados e criar assinaturas digitais. Inclui um

gerenciamento de chaves avançado e é acordado com o proposto no padrão OpenPGP Internet

como descrito na RFC 2440. Assim como, é apontado como sendo compatível com o PGP da

NAI Inc. - GNU General Public License (GPL)

Java JRE v1.4 - Ambiente run time do Java da Sun - GNU General Public License (GPL)

lha - lha é um arquivador lzh - GNU General Public License (GPL)

links v0.9x - Links é um browser baseado em ambiente texto com suporte a tabelas

HTML e frames. - GNU General Public License (GPL)

lsof v4.66 - Lsof lista arquivos abertos - GNU General Public License (GPL)

lufs v0.8.3 - Suporte a sistemas de arquivos de usuários linux: sshfs, localefs, gvfs, ftpfs,

cefs - GNU General Public License (GPL)

macchanger v1.3.0 - Muda o seu "mac address" (endereço de mac). - GNU General Public

License (GPL)

mc - Interface de commando do Midnight. - GNU General Public License (GPL)

minicom v2.00 - Programa de comunicação Unix. - GNU General Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 80/166
Mozilla v0.9.8 - Mozilla é um browser open-source projetado em conformidade com os

padrões, performance e portabilidade. - GNU General Public License (GPL)

partimage v0.6.2 - Partition Image é um utilitário Linux/UNIX o quell salva partições de

muitos formatos para um arquivo de imagem. (Não parece ser forense, mas bom para o trabalho

de recuperação de um sistema) - GNU General Public License (GPL)

perl 5.8.0 - Compilado com o suporte para arquivos maiores que 2G, incluindo um

including a grupo de módulos perl úteis para o boot. - GNU General Public License (GPL)

ppp - Suporte ao ppp. - GNU General Public License (GPL)

radmind v0.9.2 - Daemon de administração remota. - UMich BSD Style License

rlogin - rlogin - GNU General Public License (GPL)

rpcinfo - Listando o RPC - GNU General Public License (GPL)

secure-delete v2.3 - Utilitários de deleção segura - sswap, srm. - GNU General Public

License (GPL)

snmputils - Utilitários SNMP - GNU General Public License (GPL)

Sonar v1.0BETA4 - Sonar é um utilitário de reconhecimento de rede que roda todas as

buscas a partir de plugins. Os plugins atualmente suportados são ICMP scan e um ACK scan o

qual pode ver se hosts que não respondem a ICMP estão online. Mudanças: Esta versão conserta

alguns bugs. O scan de ICMP foi tornado mais versatile, permitindo a escolha do tipo e código

ICMP. - GNU General Public License (GPL)

sshd v3.1p1 - Esta é a versão com patch aplicado do RedHat's. Sim... Isto está atualizado e

não é vulnerável atualmente (03/06/2004) a exploits. baseados em RedHat's rpm. (até que o

próximo exploit de ssh for encontrado é claro!) - GNU General Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 81/166
tcpdump v3.7.1 - Tcpdump permite a captura de tráfego em uma rede. Pode ser usado

para imprimir os cabeçalhos dos pacotes em uma interface de rede que combine com uma

determinada expressão. Esta ferramenta pode ser usada para investigar problemas de rede,

detectar ataques de ping ou monitorar as atividades na rede. - BSD License

telnetd - Telnetd é o daemon de telnet. - GNU General Public License (GPL)

TestDisk v4.4 - Ferramenta para checar e recuperar (undelete) partições. Funciona com as

seguintes partições: - FAT12 FAT16 FAT32 - Linux - Linux SWAP (versão 1 e 2) - NTFS

(Windows NT) - BeFS (BeOS) - UFS (BSD) - Netware - ReiserFS - GNU General Public

License (GPL)

tftpd - tftpd - Daemon de tftp - GNU General Public License (GPL)

upx v1.24 - "the Ultimate Packer for eXecutables" - GNU General Public License (GPL)

w3m v0.4.1 - Browser baseado em ambiente de texto e Pager. - MIT License

webfsd v1.19 - Daemon de servidor web bom e enxuto. - GNU General Public License

(GPL)

wipe v2.0 - Wipe é um utilitário seguro de limpeza de arquivo. - GNU General Public

License (GPL)

Forense / Recuperação de dados (Forensics/Data Recovery) (51 Pacotes). Abaixo seguem

nomes, descrições e tipo de licença:

AIDE v0.9 - AIDE (Advanced Intrusion Detection Environment) (Ambiente de detecção

de intrusão avançado) é um substituto livre para o Tripwire. Faz o mesmo e algo mais que a

versão semi-livre do Tripwire. - GNU General Public License (GPL)

Argus - O Audit Record Generation and Utilization System (Sistema de auditoria e de

gravação de geração e utilização) de rede. O projeto Argus Open Project é focado no


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 82/166
desenvolvimento de atividades de estratégias de auditoria que podem fazer o trabalho de verdade

para o arquiteto de rede, administrador e usuário de rede. - Quosient public license

Autopsy v1.7.1 - O Autopsy Forensic Browser é um utilitário gráfico baseado em

interface HTML para o The Sleuth Kit e utilitários padrão do UNI. Autopsy automatiza muitas

das tarefas necessárias durante um análise forense digita usando a coleção TASK de poderosas

ferramentas de comando de linha como base. Uma vez que esta interface gráfica é separada das

ferramentas do sistema de arquivos

Um investigador pode ainda usar uma interface de commando de linha se o Autopsy não

puder dar o resultado desejado. - GNU General Public License (GPL)

biew v5.3.2 - BIEW- é um visualizador de arquivos avançado, livre, portável e com um

editor interno para modos binário, hexadecimal e disassembler. - GNU General Public License

(GPL)

bsed - Editor de "binary stream" - GNU General Public License (GPL)

bwplot - Plota informação sobre pacotes capturados. - GNU General Public License

(GPL)

chkrootkit v0.40 - Chkrootkit é uma ferramenta para localmente checar sobre sinais de um

rootkit. - chkrootkit license

CmosPwd v4.2 - Recuperador de senhas de CMOS que trabalha com as seguintes BIOS -

ACER/IBM BIOS - AMI BIOS - AMI WinBIOS 2.5 - Award 4.5x/4.6x - Compaq (1992) -

Compaq (New version) - IBM (PS/2, Activa, Thinkpad) - Packard Bell - Phoenix 1.00.09.AC0

(1994), a486 1.03, 1.04, 1.10 A03, 4.05 rev 1.02.943, 4.06 rev 1.13.1107 - Phoenix 4 release 6

(User) - Gateway Solo - Phoenix 4.0 release 6 - Toshiba - Zenith AMI - GNU General Public

License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 83/166
cryptcat - Netcat com criptografia habilitada. - GNU General Public License (GPL)

dcfldd - (or edd, enhanced dd) - Ferramenta com o comando dd original acrescido de

calculador de hash MD5 interno. Trabalho de desenvolvimmento concluído pelo DoD Computer

Forensics lab. - GNU General Public License (GPL)

Disk Investigator (win32) - Visualizador de disco. - GNU General Public License (GPL)

dsniff tools v2.3 - Dsniff é uma coleção de ferramentas para auditoria de rede e testes de

penetração. Dsniff, filesnarf, mailsnarf, msgsnarf, urlsnarf, e webspy monitoram passivamente

uma rede procurando por dados interessantes (senhas, e-mail, arquivos, etc.). Arpspoof, dnsspoof,

e macof facilitam a interceptação do tráfego de uma rede normalmente não disponível para um

atacante (ex, devido a switch de camada 2). Sshmitm e webmitm implementam um ataque

monkey-in-the-middle ativo diante de SSH redirecionado e sessões HTTPS explorando fraquezas

nas conexões em PKI ad-hoc. - GNU General Public License (GPL)

editreg - Comando de linha Linux para examinar registros de windows. - GNU General

Public License (GPL)

ethereal v.0.9.11 - Ethereal é um analisador de protocolos de rede para Unix e Windows.

- GNU General Public License (GPL)

fatback v1.3 - Ferramenta desenvolvida pelo DoD Computer Forensics Lab para

recuperar (undelete) arquivos de sistemas de arquivos FAT. - GNU General Public License

(GPL)

fenris v0.3 - Fenris é um traceador de múltipos propósitos, analizador "stateful" e

descompilador na pretendendo simplificar, mas tracear um erro (bug), auditoria de segurança,

código, algorítimo, análise de protocolo e forense computacional provendo um programa de

traceamento estruturado, informação geral sobre construções internar, caminhos de execução

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 84/166
(paths), operações em memória, entrada e saída (I/O), expressões de informação condicional e

muito mais. - GNU General Public License (GPL)

foremost v0.64 - Pesquisa por um arquivo de imagem para encontrar arquivos usando

usando informações de cabeçalho(header information). - GNU General Public License (GPL)

FTimes v3.2.1 - FTimes (a.k.a ftimes) é um sistema base e coleção de ferramentas de

evidência. O propósito primário de FTimes é recolher e/ou desenvolver informação sobre

diretórios especificados de forma a conduzir uma análise de intrusão. - GNU General Public

License (GPL)

gpart 0.1h - Gpart é uma ferramenta que tenta obter a primeira partição da tabela do disco

rígido do PC no caso deste estar danificado, incorreto ou apagado. A tabela achada pode ser

escrita em um arquivo ou dispositivo. - GNU General Public License (GPL)

hbd v0.2.3 - O decompilador HomeBrew Java (HomeBrew Java decompiler). - GNU

General Public License (GPL)

hexedit v1.2.1 - Editor hex baseado em "ncurses" - GNU General Public License (GPL)

LDE - Linux Disk Editor v2.5 - LDE permite ver e editar blocos de discos como

hexadecimal e/ou ASCII, ver/navegar entradas de diretórios e ver e editar inodes formatados.

Muitas das funções podem ser acessadas usando cursos de interfaces de programas ou por linhas

de comando, tornando possível automatizar itens com seus próprios scripts. - GNU General

Public License (GPL)

logdump v1.0 - Extrai entradas no formato do "syslog" de arquivos salvos pelo

"tcpdump". - GNU General Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 85/166
MAC Daddy - Verificador dos tempos de MAC em forense de resposta a incidentes. Esta

ferramenta é uma versão modificada dos dois programas "tree.pl" e "mactime" do kit "the

Coroner's Toolkit" de Dan Farmer e Venema Weiste. - GNU General Public License (GPL)

mac-robber v1.0 - Mac-robber é um programa de resposta forense a incidentes que coleta

tempo de Modificações, Acessos e Mudanças (MAC) de arquivos. Sua saída pode ser usada

como entrada para a ferramenta "mactime" do "The Coroner's Toolkit (TCT)" para fazer uma

linha de tempo da atividade do arquivo. O "mac-robber" é similar em funcionamento à

ferramenta "grave-robber" com a opção '-m', excepcionalemente ele é escrito em C e não em

Perl. Este trabalho foi feito por @stake - GNU General Public License (GPL)

md5deep v0.16 (linux & win32) - md5deep É um programa multi-plataforma para

computar mensagens MD5 agrupadas em um número arbitrário de arquivos. - GNU General

Public License (GPL)

memfetch v0.04b - Processador para fazer imagens conforme demanda "dump on-

demand" () em Linux. - GNU General Public License (GPL)

ngrep v1.40 - É uma poderosa ferramenta de trabalho de captura de pacotes, a qual

esforça-se em prover a maioria das características da ferramenta "GNU grep", aplicando-as a todo

o tráfego da rede. - Outra licença proprietária com código fonte

ol2mbox - libPST v1.0.4 - libDBX v1.0.3 - Fornece bibliotecas e aplicativos para a

conversão de arquivos do Outlook e do Outlook Express para o formato MBOX do Linux. -

GNU General Public License (GPL)

partimage v0.6.2 - Partition Image é um aplicativo do Linux/UNIX que salva partições em

vários formatos de arquivos de imagem. (Não parece forense, mas é bom para o trabalho de

recuperação de sistemas) - GNU General Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 86/166
perl 5.8.0 - Compilado com suporte para arquivos maiores de 2G, incluindo um grupo de

módulos perl úteis para inicialização ("boot"). - GNU General Public License (GPL)

photorec v1.0 - PhotoRec é uma pequena ferramenta utilizada na recuperação de imagens

da memória de câmeras digitais. - GNU General Public License (GPL)

pwl9x v0.07 - Leitor de Listas de Senhas Windows 9x é um programa que permite ao

usuário ver senhas contidas em seu banco de dados pwl do Windows. É possível checar a

segurança desse arquivo tentando recuperar a senha principal usando força bruta. - GNU

General Public License (GPL)

rda v0.2.1 - RDA é uma ferramenta de computação forense para obter dados

remotamente. - GNU General Public License (GPL)

rec (reverse engineering compiler) - Compilador para engenharia reversa. - Outra licença

proprietária com versão de experimentação.

ree v1.3 - ree significa ROM extension extractor - procura em sua memória em /dev/mem

por extensões "ROM" e as escreve em arquivos de saída. Extensões ROM são "BIOSes" as quais

residem em chips ROM no computador. - GNU General Public License (GPL)

snort v2.0 (inline) - Snort! Excelente programa de detecção de intrusões e de atividades

maliciosas. - GNU General Public License (GPL)

ssldump v0.9b3 - ssldump é uma analizador de protocolo de rede SSLv3/TLS. Identifica

conexões TCP na interface de rede escolhida e tenta interpretá-los. Quando identifica o tipo

SSLv3/TLS, decodifica os registros e indica-os em um formulário textual para saída. Se

alimentado com o material de chave apropriado, irá provavelmente decifrar as conexões e

apresentar os dados de aplicação do tráfego. - GNU General Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 87/166
StegDetect v0.5 - Stegdetect é uma ferramenta automatizada para detectar o conteúdo de

esteganografia nas imagens. É capaz de detectar diversos métodos de esteganografia diferentes

para embutir a informação escondida em imagens do JPEG. Atualmente, os esquemas detectáveis

são "jsteg", "jphide" (Unix e Windows), "invisible secrets", e "outguess 01.3bis". - BSD License

tcpdstat - Proporciona uma informação sumária de um arquivo tcpdump. O tcpdstat lê este

arquivo utilizando a biblioteca do pcap e imprime as estatísticas de um traçado. A saída inclui o

número de pacotes, a taxa média e o desvio padrão, o número de origens únicas e o endereço de

destino dos pares e a quebra dos protocolos. - GNU General Public License (GPL)

tcpdump v3.7.1 - O Tcpdump permite que você obtenha e guarde em formato "dump" o

tráfego em uma rede. Pode ser usado para imprimir os cabeçalhos dos pacotes de uma interface

de rede que combinem com uma dada expressão. Pode-se utilizar essa ferramenta para detectar

problemas da rede, para detectar ataques de "ping" ou para monitorar as atividades da rede. -

BSD License

tcpflow v0.20 - tcpflow é um programa que captura os dados transmitidos como parte das

conexões do TCP (fluxos), e aloja esses dados de uma maneira que seja conveniente para a

análise do protocolo ou para eliminar erros. Um programa como o "tcpdump" mostra um sumário

dos pacotes vistos no cabo de rede, mas geralmente não armazena os dados que estão sendo

transmitidos realmente. No contraste, o tcpflow reconstrui os códigos de dados reais e armazena

cada fluxo em um arquivo separado, para uma análise posterior. - GNU General Public License

(GPL)

tcpreplay v1.4 - Tcpreplay é aclamado para testar o desempenho de um "NIDS" (Network

Intrusion Detection System - Sistema de Detecção de Intrusão de Rede) repetindo o tráfego real

por trás da rede os quais escondem ataques. O Tcpreplay permite controla a velocidade em que o

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 88/166
tráfego é repetido e pode repetir traceamentos do "tcpdump" arbitrários. O tráfego artificial

incomum gerado por via de programação o qual não aciona a inspeção de aplicação ou protocolo

que um "NIDS" faz e não reproduz anomalias do mundo real que aparecem em ambientes de

produção (rotas assimétricas, excesso de tráfego, fragmentação, retransmissões, etc.), já o

"tcpreplay" permite a replicação exata do tráfego real visto em redes reais. - GNU General

Public License (GPL)

tcpslice v1.2a1 - uma ferramenta para extrair partes de uma trilha de pacotes gerada

usando a opção "-w" do "tcpdump". - GNU General Public License (GPL)

tcptrace v6.2.0 - tcptrace é uma ferramenta escrita por Shawn Ostermann, da

Universidade de Ohio, para analisar os arquivos TCP carregados, pegando a entrada de arquivos

produzidas por diversos programas de captura de pacotes, incluindo o "tcpdump", o "snoop", o

"etherpeek", o "HP Net Metrix" e o "WinDump". O Tcptrace pode produzir diferentes tipos de

saída, contendo informações de cada conexão vista, assim como o tempo decorrido, bytes e

segmentos enviados e recebidos, retransmissões, tempos dos ciclos de conexão, janelas de

propagandas, largura de banda e mais. O "tecptrace" pode, inclusive, produzir um número de

gráficos para análises adicionais. - GNU General Public License (GPL)

TCT v1.11 - TCT ("The Coroner's Toolkit" - O kit do agente funerário) é uma coleção de

programas, por Dan Farmer e Wietse Venema, para uma análise pós-morte de um sistema UNIX

após sua quebra. - GNU General Public License (GPL)

TestDisk v4.4 - Ferramenta para checar e recuperar partições apagadas dos seguintes

tipos: FAT12 FAT16 FAT32 - Linux - Linux SWAP (version 1 and 2) - NTFS (Windows NT) -

BeFS (BeOS) - UFS (BSD) - Netware - ReiserFS - GNU General Public License (GPL)

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 89/166
The Sleuth Kit v1.61 - The Sleuth Kit (conhecido anteriormente como "task"-TAREFA) é

uma coleção de ferramentas de forense em sistemas de arquivos de comandos de linha em base

UNIX que permite ao investigador examinar sistemas de arquivos NTFS, FAT, FFS, EXT2FS e

EXT3FS de um computador suspeito de uma forma não intrusiva. As ferramentas tem um

desenho baseado em camadas e podem extrair dados de estruturas internas de sistemas de

arquivos. Uma vez que as ferramentas não confiam no sistema operacional para processsar ao

sistema de arquivos, o conteúdo escondido e apagado é mostrado. - GNU General Public License

(GPL)

TNEF v1.2.0 - TNEF fornece uma maneira para desempacotar aqueles anexos do tipo

Microsoft MS-TNEF MIME. Opera como o "tar" para descompactar qualquer arquivo o qual

tenha sido colocado em anexo "MS-TNEF" ao invés de ser anexado separadamente. - GNU

General Public License (GPL)

VNC - tightvnc - VNC (uma abreviatura para computação virtual da rede - "Virtual

Network Computing" ) é um bom pacote de software cliente/servidor, que permite o acesso

remoto de rede a desktops gráficos. Usado no "biatchux" para emitir consoles remotos! - GNU

General Public License (GPL)

wipe v2.0 - Wipe é uma ferramenta segura de remoção de arquivo. - GNU General Public

License (GPL)

Ferramentas Windows

Ferramentas sugeridas para um conjunto de ferramentas para o investigador para forense

envolvendo plataforma windows e os respectivos objetivos de cada ferramenta:

pslist, psinfo, psfile - Identificar processos anormais


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 90/166
netstat, Fport, psservice - Identificar portas não usuais em estado de escuta

psfile, listdlls, Fport - Identificar arquivos abertos não usuais

psloggedon, nbtstat - Identificar usuários logados

Psloggedon - Identificar os donos dos processos

netstat, route - Examinar tabelas de roteamento

dir, type - Examinar arquivos temporários

dir, Explorer - Examinar arquivos e diretórios suspeitos

at.exe - Agendar e verificar agendamentos de comandos

cmd.exe - Shell de comando de linha

dir.exe - Listar diretórios e arquivos

ipconfig.exe - Verificar as configurações de rede

net.exe

netstat.exe - Analisar conexões de rede executadas de entrada e saída

nslookup.exe - Diagnósticos de rede como por exemplo para determinar configuração de

DNS reverso

route.exe - Verificação e modificação de roteamento do host

tracert.exe - Similar ao traceroute do Linux, também tem a função de traçar rota.

CygWin Tools: Versão para Windows de diversas ferramentas GNU, inclusive o dd.

Possível, graças às bibliotecas cygwin que simulam as chamadas de sistema e geram o ambiente

que tais ferramentas necessitam. - http://sources.redhat.com/cygwin/

MS-DiskEdit: Ferramenta acidentalmente inclusa no SP4 do Windows NT 4.0.

Aparentemente era uma ferramenta de depuração interna, usada pelos desenvolvedores do NTFS.

O importante é que ela pode acessar o disco em baixo nível (hexadecimal); e entende a estrutura

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 91/166
da MFT, interpretando e exibindo o conteúdo dos registros de forma organizada e legível. O

DiskEdit pode ser obtido no endereço http://www.informatik.fh-hamburg.de/pub/nt-

service/sp4en-ex/i386/diskedit.exe

MD5summer: Um exemplo dos inúmeros elementos de software para criação de

assinaturas digitais. Uma das suas vantagens é a compatibilidade com o md5sum do Linux, em

relação ao formato do arquivo de saída. Endereço:

http://homepages.ihug.co.nz/~floydian/md5/md5v11.zip

NetCat: Versão para NT do netcat original do UNIX. Muito usado, como backdoor, pelos

atacantes. Endereço: http://www.l0pht.com/users/10pht/nc11nt.zip

Streams: Programa que detecta a existência de "alternate streams" em um arquivo.

Endereço: http://www.sysinternals.com/files/streams.zip

Strings: Recupera todas as strings contidas em um arquivo executável. Muito útil durante

a identificação da função de um dado software. Endereço:

http://www.sysinternals.com/files/strings.zip

Knoppix-STD

Knoppix STD 0.1 security tools distribution

MD5: de03204ea5777d0e5fd6eb97b43034cb

Versão: Knoppix STD 0.1

O Knoppix-STD é uma distribuição customizada do "Knoppix Live Linux CD". Basta

inicializar pelo CD para se usar o Knoppix-STD. O Knoppix-STD inclui um kernel do linux

customizado (2.4.21 com os patches ntfs rw, openmosix e superfreeswan). Gerenciador de janelas

e possui uma excelente detecção de hardware e centenas de aplicativos. Depois de utiliza-lo é só


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 92/166
inicializar o micro sem o CD e se terá de volta ao sistema operacional original. Além de usar

energia e alguma RAM o Knoppix-STD não toca no computador que o serve de host.

O Knoppix-STD é focado em segurança da informação e ferramentas de gerenciamento

de rede. Isto significa que pode ser usado por um novato para aprender mais sobre segurança da

informação e por profissionais.

As ferramentas do Knoppix-STD são divididas nas seguintes categorias:

* autenticação

* criptografia

* forense

* firewall

* honeypot

* sistemas ids

* utilitários de rede

* ferramentas de senhas

* servidores

* packet sniffers

* ferramentas tcp

* tunelamento

* analizadores de vulnerabilidades

* ferramentas para redes sem fio

Mais informações sobre o Knoppix podem ser obtidas em: http://www.knoppix.net/

Mais informações sobre o Knoppix-STD podem ser obtidas em: http://www.knoppix-

std.org/

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 93/166
O canal #knoppix-std no irc.freenode.org : shop nos domingos às 11:00 PM EST

(Segunda-feira 3:00 AM GMT), chat a qualquer hora.

Knoppix-STD - Pacotes

Ferramentas do Knoppix-STD em grupos:

"Authentication" (Autenticação)

/usr/bin/auth/

* freeradius 0.9.3 : Servidor de cifragem RADIUS GPL

/usr/bin/crypto/

* 2c2 : múltiplos arquivos de texto -> um texto cifrado

* 4c : como o "2c2" (negativa plausível)

* acfe : criptoanálise tradicional (como Vigenere)

* cryptcat : netcat + criptografia

* gifshuffle : ferramenta de esteganografia para imagens gif

* gpg 1.2.3 : "GNU Privacy Guard"

* ike-scan : "VPN fingerprinting" (impressão digital em rede privada virtual)

* mp3stego : ferramenta de esteganografia para mp3

* openssl 0.9.7c

* outguess : ferramenta de esteganografia

* stegbreak : ferramenta de força bruta para quebrar esteganografia em arquivos JPG

* stegdetect : ferramenta para descobrir esteganografia em arquivos JPG


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 94/166
* sslwrap : "SSL wrapper" (encapsulador de SSL)

* stunnel : "SSL wrapper" (encapsulador de SSL)

* super-freeSWAN 1.99.8 : suporte de kernel para IPSEC

* texto : faz o conteúdo "gpg ascii-armour" parecer um inglês estranho

* xor-analyze : outra ferramenta de introdução à criptoanálise

"Forensics" (Forense)

/usr/bin/forensics/

* sleuthkit 1.66 : extensões para o kit de ferramentas forense "The Coroner's Toolkit"

* autopsy 1.75 : Interface Web para o "TASK". Padrão de evidências indo para

/mnt/evidence

* biew : visualizador binário

* bsed : editor de "streams" binários

* consh : shell logado (vindo do F.I.R.E.) . O que se faz é gravado.

* coreography : analisa arquivos "core"

* dcfldd : versão do "dd" do "US DoD Computer Forensics Lab" (Laboratório de

computação forense do Departamento de Defesa dos Estados Unidos)

* fenris : ferramenta para depurar código, fazer traceamento, decompilação e engenharia

reversa

* fatback : recupera arquivos "FAT" apagados

* foremost : recupera arquivos de tipos específicos a partir de imagens de disco (por

exemplo arquivos JPG)

* ftimes : ferramenta de linha base de sistema ("system baseline tool")

* galleta : recupera cookies do "Internet Explorer"


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 95/166
* hashdig : pesquisa em banco de dados de "hash"

* hdb : descompilador java

* mac-robber : escavador do "TCT" escrito em C

* md5deep : roda md5 em múltiplos arquivos e diretórios

* memfetch : força um "dump" de memória

* pasco : navega no index.dat do Internet Explorer

* photorec : obtém arquivos de câmeras digitais

* readdbx : converte arquivos .dbx do Outlook Express para o formato mbox

* readoe : converte um diretório inteiro do Outlook Express para o formato mbox

* rifiuti : navega nos arquivos INFO2 da lixeira do Windows

* secure_delete : apaga de forma segura arquivos, swap, memória, etc...

* testdisk : testa e recupera partições perdidas

* wipe : apaga uma partição seguramente e é bom para preparar uma partição para usar

"dd"

* e outras ferramentas de sistema típicas para uso em forense (dd, lsof, strings, grep, etc.)

"Firewall"

/usr/bin/fw/

* blockall : "script" para bloquear toda entrada TCP (exceto "localhost")

* flushall : limpa todas as regras de firewall

* firestarter : via rápida para um firewall

* firewalk : mapeia uma base de dados de firewall

* floppyfw : transforma um disquete em um firewall

* fwlogwatch : monitora logs de firewall


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 96/166
* iptables 1.2.8

* gtk-iptables : interface GUI

* shorewall 1.4.8-RC1 : pacote baseado no iptables

"Honeypots" (Potes de Mel - Sistemas falsos para intrusos)

/usr/bin/honeypot/

* honeyd 0.7

* labrea : retarda (lento para um "crawl") worms e scaneadores de porta

* thp : honeypot leve

"IDS" (Intrusion detection systems - Sistemas de detecção de intrusões)

/usr/bin/ids/

* snort 2.1.0: O IDS de rede favorito da maioria

* ACID : interface web do snort

* barnyard : processador rápido de log do snort

* oinkmaster : mantém as regras do snort atualizadas

* hogwash : controle de tráfego de rede baseado em assinaturas do snort

* bro : IDS de rede

* prelude : IDS de rede e de máquina

* WIDZ : IDS para interfaces de redes sem fio e ap ("access point" - pontos de acesso de

redes sem fio).

* aide : ferramenta de controle de integridade de máquina, como o "tripwire"

* logsnorter : monitor de logs

* swatch : monitora qualquer arquivo any file, como o "syslog"

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 97/166
* sha1sum

* md5sum

* syslogd

"Network utilities" (Utilitários de rede)

/usr/bin/net-utils/

* LinNeighboorhood : navega em redes SMB como o ambiente de rede do Windows

* argus : auditor de rede

* arpwatch : guarda os traços dos MACs no seu cabo de rede

* cdpr : reporta descobertas de protocolo cisco

* cheops : ferramenta para descobertas na rede e de snmp e de monitoração.

* etherape : ferramenta de monitoramento e visualização de rede

* iperf : mede a performance de IP

* ipsc : calculadora de subnet ip

* iptraf : monitor de rede

* mrtg : "multi router traffic grapher" (faz gráficos de tráfego de rede)

* mtr : ferramenta para traçar rotas

* ntop 2.1.0 : "network top" analisador de protocolos

* rrdtool : banco de dados "round robin"

* samba : suporte a SMB de código aberto

* tcptrack : traceia as conexões existentes

"Password tools" (Ferramentas para senhas)

/usr/bin/pwd-tools/

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 98/166
* john 1.6.34 : quebrador de senhas "John the Ripper"

* allwords2 : dicionário de Inglês CERIAS - 27MB

* chntpw : reseta senhas em uma máquina Windows (inclusive do Administrador)

* cisilia : quebrador de senhas distribuído

* cmospwd : Encontra a senha local da CMOS

* djohn : "John the Ripper" distribuído

* pwl9x : quebra arquivos de senhas do Win9x

* rcrack : quebrador "rainbow" (arco-íris)

Servers (Servidores)

/usr/bin/servers

* apache

* ircd-hybrid

* samba

* smail

* sshd

* vnc

* net-snmp

* tftpd

* xinetd

"Packet sniffers" (Capturadores de pacotes)

/usr/bin/sniff/

* aimSniff : captura tráfego AIM

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 99/166
* driftnet : capturador para imagens

* dsniff : capturador para senhas em texto claro

* ethereal 0.10.0 : o padrão e inclui o Tethereal

* ettercap 0.6.b : captura pacotes em uma rede com switch e mais

* filesnarf : Obtém arquivos fora do tráfego NFS

* mailsnarf : captura tráfego smtp/pop

* msgsnarf : captura tráfego de aol-im, msn, yahoo-im, irc e icq.

* ngrep : "grep" de rede network grep, um capturador de pacotes com capacidades de

filtragem do "grep"

* tcpdump : a base dos outros capturadores

* urlsnarf : registra todas as "URLs" visitadas pelo cabo de rede

* webspy : faz cópias espelho de todas as "URLs" visitadas por uma máquina em um

browser local

"tcp tools" (Ferramentas TCP)

/usr/bin/tcp-tools/

* arpfetch : busca MAC

* arping : "ping" por MAC

* arpspoof : faz "spoof" (falseiamento) de "arp"

* arpwatch : monitora endereços MAC no cabo

* despoof : detecta pacotes "spoofed" (falsificados) por medida de TTL

* excalibur : gerador de pacotes

* file2cable : repete um pacote capturado

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 100/166
* fragroute : ferramenta de fragmentação de pacotes

* gspoof : gerador de pacotes

* hopfake : respostas falsas de contagem de "hops" (nós)

* hunt : sequestrador de conexão tcp

* ipmagic : gerador de pacotes

* lcrzoex : conjunto de ferramentas tcp

* macof : inunda um "switch" com MACs

* packetto : conjunto de ferramentas de "Dan Kaminsky" (inclui 1.10 e 2.0pre3)

* netsed : insere e substiui strings em tráfego em tempo real

* packETH : gerador de pacotes

* tcpkill : mata tcp

* tcpreplay : repete pacotes tcp capturados

"tunnels" (túneis)

/usr/bin/tunnels/

* cryptcat : "netcat" criptografado

* httptunnel : tunelamento de dados sobre http

* icmpshell : tunelamento de dados sobre icmp

* netcat : o incomparável canivete suíço do tcp

* shadyshell : tunelamento de dados sobre udp

* stegtunnel : esconde informações em cabeçalhosTCP/IP

* tcpstatflow : detecta túneis de dados

* tiny shell : pequeno shell criptografado

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 101/166
"Vulnerability assessment" (Testes de vulnerabilidades)

/usr/bin/vuln-test/

* ADM tools : como ADM-smb e ADMkillDNS

* amap 4.5 : mapeia aplicativos rodando em máquinas remotas

* IRPAS : "Internet Routing Protocol Attack Suite" (Conjunto de programas de ataque a

protocolos de roteamento internet)

* chkrootkit 0.43 : procura por "rootkits"

* clamAV : anti-virus com atualização de assinaturas ao vivo com o "freshclam"

* curl : utilitário de comando de linha para transferir qualquer coisa com uma URL

* exodus : auditor de aplicação web

* ffp : Identificador "fuzzy" para conexões criptografadas

* firewalk : mapeia uma base de dados de firewall

* hydra : ferramenta de força bruta

* nbtscan : pesquisa redes SMB

* ncpquery : pesquisa servidores NetWare

* nessus 2.0.9 : detector de vulnerabilidades que atualiza seus "plugins" em tempo real

com o "nessus-update-Plugins"

* nikto : scanner CGI

* nmap 3.48 : padrão em enumeração de máquinas e portas

* p0f : identificador de sistema operacional passivo

* proxychains: canaliza juntos múltiplos servidores de proxy

* rpcinfo : Obtém informações do " RPC"

* screamingCobra : scanner CGI

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 102/166
* siege : Utilitário de teste e comparação de http

* sil : capturador de "banners" de identificação leve

* snot : repete regras do snort de volta para o cabo de rede para testar a resposta de um

"IDS"

* syslog_deluxe : falsifica mensagens de "syslog"

* thcrut : THC's "r you there?" (THC você está aqui?) mapeador de rede

* vmap : mapeia as versões das aplicações

* warscan : ferramenta de automação para "exploit" (exploração não autorizada do

sistema)

* xprobe2 : usa ICMP para identificação

* yaph : outro caçador de proxy

* zz : " zombie zapper" - matador de zumbis que mata zumbis DDoS

"Wireless tools" (Ferramentas para sistemas de rede sem fio)

/usr/bin/wireless/

* airsnarf : utilitário de obtenção de configuração de APs (access points - pontos de

acesso)

* airsnort : captura, encontra e quebra a segurança de redes com padrão 802.11b

* airtraf : analisador de performance de redes com protocolo 802.11b

* gpsdrive : usa GPS e mapas

* kismet 3.0.1 : para 802.11

* kismet-log-viewer : gerencia os logs do "kismet"

* macchanger : muda o seu "MAC address" (endereço de MAC)

* wellenreiter : descoberta e auditoria de 802.11b


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 103/166
* patched orinoco drivers : automático (sem necessidade de scripts)

AIDE

AIDE v0.9 AIDE - Advanced Intrusion Detection Environment (Ambiente avançado

de detecção de intrusões)

AIDE é um substituto de software livre para o Tripwire. AIDE faz o mesmo que o

Tripwire semi-free e mais.

URL antigo: http://www.cs.tut.fi/~rammer/aide.html

Agora como projeto no SourceForge.Net

URL: http://sourceforge.net/projects/aide

Ambiente: console (baseado em texto).

Licença: GNU General Public License (GPL)

Linguagem: Inglês

Sistema operacional: BSD, Linux, Other, SunOS/Solaris

Linguagem de programação: C

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 104/166
Capítulo V - CASOS E EXEMPLOS

Casos estudados de exemplo

Estudo de Casos

Os casos apresentados tem o objetivo de exemplificar diferentes ocorrências de aplicação

de técnicas de forense computacional e respostas a incidentes na internet abrangendo situações de

causas e efeitos desde a fase pré-incidente, durante o incidente e na fase pós-incidente.

Visando a preservar a segurança e imagem das empresas, instituições de governo,

policiais e indivíduos envolvidos e por questões de segurança os casos reais abaixo relatados

estão mesclados a casos hipotéticos, que tiveram ou não a participação direta do autor.

CASO 1: Site pichado

Informado por:

A vítima recebeu um e-mail em inglês de uma empresa que monitora site listados como

pichados em sites internacionais de arquivo on-line de cópias de pichações, informando que seu

site havia sido cadastrado como pichado.

Tipo de alvo: Site institucional

Observações: A pichação foi assinada por um grupo de pichadores que possui em seu

perfil, percebido durante o processo investigativo, a característica de invadir e pichar sites

usando vulnerabilidades do Front Page.


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 105/166
Não foram encontrados registros suspeitos de log em FTP.

Não foram encontrados registros suspeitos de log de exploração de vulnerabilidades via

web no IIS.

Não foram encontrados registros suspeitos de log de exploração de vulnerabilidades via

web nos sistemas de detecção de intrusão a nível de rede e nem nos logs dos sistemas de firewall.

Fazia uso de Extensões do Front Page 98 e desatualizadas, quando já deveria estar usando

Extensões do Front Page de versão mais recente.

O site não tinha necessidade de usar Front Page, nem asp, nem de estar em Windows pois

usava apenas as linguagens html e php.

Suspeita: O atacante possivelmente usou o acesso via Front Page para acessar e alterar a

página principal (home page) do site da vítima. Mas isto não pode ser confirmado, pois a vítima

preferiu que o trabalho fosse focado apenas na recuperação e não na investigação e nem em

outras etapas.

Resultado: A vítima não tinha interesse em tomar mais providências, pois desejava apenas

o site no ar. Devido a recomendação do investigador o site foi totamente removido, mudado de

servidor inclusive para uma outra plataforma, no caso a plataforma escolhida foi a plataforma

Linux. O site foi monitorado e não teve mais ocorrências de incidentes de segurança detectadas.

CASO 2: Site pichado

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 106/166
Informado por: Um administrador do sistema vítima verificou que o site havia sido

alterado.

Tipo de alvo: A vítima era um site em construção, ou seja que ainda não havia sido

lançado e não estava em produção.

Observações: Junto ao provedor onde se encontrava o site uma equipe trabalhou em

conjunto com a investigação. Não foram detectadas vulnerabilidades conhecidas, nem logs

suspeitos em rede e nem no acesso via web. Não foram detectados potenciais problemas na

máquina servidora, nem presença de root kits e também o tráfego de rede foi analisado

verificando-se os gráficos passados e o conteúdo do tráfego atual foi capturado em diferentes

períodos e analisados. Nos logs de acesso via FTP, foi observada a exata ocorrência dos passos

do atacante.

O atacante acessou com uso da conta válida da vítima e senha normal, sem errar nenhuma

vez e alterou a página principal. Foi perfeitamente identificado a data, hora e o IP do atacante,

assim como suas ações. Em seguida, no minuto seguinte, o mesmo IP foi registrado acessando o

site via web. Os sistemas de IDS (detecção de intrusão) que estavam logando inclusive este tipo

de atividade, mesmo quando devidamente autorizada (senha e usuário corretos) que estavam com

horários sincronizados ao do servidor de web envolvido, confirmou os dados no log de FTP. A

conexão vinha de um provedor gratuito via conexão discada (dial up).

Resultado: A vítima preferiu adiar a decisão de punir ou não o atacante, então, todos os

procedimentos foram devidamente registrados e documentados, inclusive com cópia pericial de

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 107/166
todo o disco do servidor envolvido e cópias de todos os conteúdos e logs envolvidos. Como

testemunhas assinaram as etiquetas e ficaram com cópias em CDs dos arquivos, dados e todos os

"hashs" a empresa vítima, os investigadores e o um representante administrador do provedor. A

cópia pericial completa do disco principal do servidor que continha o site, por conter dados de

outros clientes, ficou apenas em posse do provedor em envelope lacrado e assinado por todos

acima citados, sendo que a empresa vítima e os investigadores também ficaram com uma cópia

do hash do conteúdo deste disco. A vítima não tinha interesse em tomar mais providências e

solicitou que o provedor de acesso usado pela vítima não fosse informado, pois não quis arcar

com o ônus de um processo judicial e, então ficou com medo de provocar a ira do atacante e seu

grupo judicilmente impunes provocarem novos incidentes de segurança.

CASO 3: Caso Tráfego suspeito

Quem informou: Gráficos de análises de uso de rede levaram a vítima a estranhar o uso

excessivo de sua rede em horários anormais

Tipo de alvo: Site de notícias

Observações: Devido a um excesso de tráfego de rede por motivo desconhecido, durante

meses, a rede da vítima foi analisada e não foram detectadas anormalidades. Tudo parecia normal

e sem suspeitas nem a nível de host (nas máquinas) nem a nível de rede. Foi instalado um sniffer

de rede para poder ser estudado o comportamento da rede e se percebeu que o tráfego excessivo

inclusive em horários estranhos correspondia a um servidor web, onde a empresa vítima tinha

disponibilizado alguns sites à internet. O tráfego deste host específico foi estudado e só se

encontrava tráfego normal e excessivo apenas na porta 80, que é tipicamente usada pelo servidor

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 108/166
web. Em horários de menor tráfego, como na madrugada, as conexões se resumiam a robôs da

web (como o robô do Google e robô do Altavista) e alguns outros Ips não determinados. Foram

utilizados o MRTG, o TCPDUMP, o NTOP e o ETHEREAL nas análises de rede e "host". As

conexões foram sendo estudadas e foi percebido um padrão de acesso ocorrendo milhares de

vezes por dia e tratava-se de um único IP. A origem do IP foi investigada a partir de serviços de

"whois" e após algum tempo procurando determinar a identidade do suposto atacante a equipe de

investigação chegou a conclusão de que se tratava de um robô da web de uma rede específica. Na

verdade trata-se do robô de um site de serviço de notícias que indexa sites de notícias de todo o

mundo. Em pesquisa, na internet foram encontrados inúmeros comentários de outras vítimas

reclamando do mesmo robô deste site de notícias. A vítima fez inúmeros contatos e por se tratar

de caso internacional não tinha como iniciar um processo judicial contra o site proprietário do

robô, e mesmo se o fizesse, talvez não pudesse fazer nada contra judicialmente, afinal trata-se de

um caso questionável de legalidade se é ou não ilegal usar em excesso ou de forma repetitiva e

automatizada um serviço grátis como o acesso a um site.

Solução: Foram implementadas entradas de arquivos robots.txt nos sites da vítima

bloqueando o robô em questão, além de bloqueios de controle ao IP a nível de firewall "host" e a

nível de firewall rede.

CASO 4: Caso de vulnerabilidade detectada

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 109/166
Quem informou: A vítima contratou os investigadores para verificar a sua rede, por

vontade própria, sem suspeitas específicas.

Tipo de alvo: Servidor de Rede Windows 2000

Observações: Ao se efetuar uma checagem de vulnerabilidades em servidor Windows

foram detectadas portas abertas em estado de escuta ("listen"). As portas tratavam-se de portas

típicas de vírus que abrem o computador para novas invasões em vírus. O anti-vírus do Cliente

estava desatualizado e inúmeros "patchs" conhecidos de segurança não estavam aplicados.

O servidor foi reinstalado do zero, aplicadas as devidas melhorias de segurança

Foram feitas duas imagens idênticas do disco, utilizando o F.I.R.E Linux. Uma das

imagens foi devidamente etiquetada, documentada e guardada. A outra imagem serviu de bas

para investigações. Foi feita uma rede local restrita laboratorial para testes e colocado o host

(máquina) a partir da imagem com IP restrito à esta rede de testes para exame pericial dinâmico,

examinando-se processos em execução provocados ou não pelos investigadores, e estático,

examinando o conteúdo de programas, entradas em registro e conteúdos suspeitos. Foram

analisadas as entradas em registro e utilizado softwares de detecção de vulnerabilidades, como

NESSUS e RETINA, e anti-vírus como SYMANTEC NORTON, AVG, CLAMAV e MCAFEE.

A máquina servidora se encontrava infectada com o "W32.Nimda". Entre as portas investigadas

em especial foram consideradas em especial as portas 25, 69, 80, 137, 138, 139 e 445 utilizadas

tipicamente pelo W32.Nimda. Para detectar como foi a infecção os investigadores foram mais em

frente e perceberam que o "worm" "Code Red II" havia anteriormente comprometido esta

máquina e propiciado a entrada do "W32.Nimda". Tratava-se de uma máquina com anti-virus

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 110/166
desatualizado e com inúmeros "patchs" (pacotes de alterações) de segurança não ainda

implementados. Como haviam logs na máquina, no servidor de replicação de logs e no servidor

IDS de rede guardados foi possível confirmar a data e hora da infecção pela típica entrada: "GET

/default.ida?XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXX%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u

9090%u6858%ucbd3%u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%

u0078%u0000%u00=a". Esta entrada constiui a exploração de estouro de "buffer" da DLL do

serviço de indexação do IIS no Windows pelo CODE RED, que é possível em sistemas cujo o

"patch" de segurança correspondente não tenha sido aplicado.

Solução: Como o comprometimento por "CODE RED II" implica em um nível de

comprometimento de sistema, onde atacantes podem utilizar a infecção como via de aplicação de

comandos arbitrários e implantação de código malicioso, o sistema foi reinstalado totalmente a

partir do zero. O novo sistema teve todos os antivírus atualizados e "patchs" já existentes

aplicados via CD antes de ser colocado em rede.

CASO 5: Usuários de SNMP

Informado por: Investigadores do CASO 4.

Observações: No mesmo caso anterior, uma outra questão relevante foi detectada.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 111/166
Devido ao administrador do sistema deixar o serviço de SNMP ativo e com configuração

de comunidade padrão ("default") foi observado que um atacante externo às rede poderia listar

facilmente todos os usuários com logon cadastrados na máquina utilizando simplesmente as

características de gerenciamento de rede SNMP, de forma simples, sem necessidade de fazer

engenharia social ou uma ataque sofisticado.

Solução: Os usuários tiveram seus nomes de acesso (usernames) alterados para novos

nomes e foram feitas as devidas alterações desabilitando serviços desnecessários e configurando

adequadamente os necessários.

CASO 6: Servidor de e-mails de departamento de governo

Informado por: Chefe de departamento de um governo

Sintoma: Sistema linux com serviço de rede parando periodicamente.

Descrição: Em um órgão de governo uma equipe de administração de redes resolveu

trabalhar com sistema de código livre Linux, com Sendmail, para o sistema de e-mails de um

determinado departamento, como experiência para evitar custos de licenciamento de sistemas

Windows. Devido à falta de experiência a equipe fez uso de uma distribuição de Linux antiga e

manteve o sistema sem novas atualizações.

Observações: A equipe de investigadores iniciou a pesquisa, considerando que a equipe

local já havia descartado a hipótese de falha de hardware para paradas inexplicáveis do servido de

rede e interface de rede na máquina em questão. Foi implementada monitoração de rede

capturando e examinando os pacotes que tinham a máquina suspeita como origem ou destino. Foi

observado um tráfego ftp, onde pequenos arquivos criptografados estavam sendo enviados para

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 112/166
fora da rede de forma periódica e sistemática. O exame do tráfego FTP foi facilitado, pois na rede

em que se encontrava a máquina vítima estava sendo utilizado um "hub" ao invés de um "switch"

de rede, então era possível capturar o tráfego de todos as máquinas naquele segmento com

facilidade. O conteúdo do tráfego FTP suspeito oriundo da máquina vítima não pode ser

identificado por estar criptografado. Após monitorar, capturar e guardar uma boa amostragem do

tráfego de rede a equipe de investigadores resolveu parar a máquina para fazer duas imagens

periciais do disco rígido do sistema vítima, com o utilitário "dd", identificou e preservou uma das

cópias e passou a investigar em uma cópia da imagem. Numa investigação dinâmica, no sistema

vítima, inclusive com os códigos maliciosos em execução, foi bastante fácil perceber com a

execução de um software de detecção de "rootkits", o "chkrootkit", a presença de software

malicioso na máquina infectada fazendo "sniffing"(captura de pacotes) de rede. Ficou explicada a

questão da queda de serviço de rede, pois, como o tráfego da rede era elevado e a captura de

pacotes deixada pelo atacante não foi planejada para alta capacidade, pois tratava-se de um

"rootkit" padrão com poucas alterações do script original, então ocorria sobrecarga na captura e

guarda de pacotes pelo sistema do atacante e isso provocava a queda do serviço de rede. O

tráfego era composto inclusive de documentos importantes trafegando pela rede via web numa

intranet do departamento e mais o tráfego elevado de e-mails passando por esta máquina vítima e

por um sistema de e-mails ainda mais crítico e de uso muito mais demandado que o sistema de e-

mails na máquina vítima. Foi observado que o atacante criou diversos diretórios e arquivos com

nomes "..." (três pontos), isso certamente para enganar um investigador em uma possível

investigação usando o comando "ls", onde o investigador se confundiria com o diretório de "."

(um ponto) que representa o diretório atual ou ".." que representa o diretório superior. Além

disso, o arquivo ou diretório com nome iniciado com um ponto será oculto da visualização via ftp

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 113/166
e via web na maior parte dos sistemas. A equipe de investigação partiu para uma investigação

estática examinando com "cat", "more", "vi", "grep" e "strings" os arquivos encontrados deixados

pelo atacante. Não foi muita surpresa para a equipe de investigadores descobrir que se tratava de

um sistema totalmente automatizado para captura automatizada de usernames e senhas obtidas no

tráfego de rede, sendo guardadas em arquivos locais e depois compactadas, criptografadas e

enviadas por ftp. O destino de FTP por ser automatizado pode ser identificado e examinado pela

equipe de investigação. No destino de FTP não havia nada, apenas diretórios vazios. Mas bastou

procurar por arquivos ocultados com técnicas simples para perceber que haviam diretórios e

arquivos naquele destino que se compunham de arquivos criptografados, possivelmente

resultados de invasões deste sistema vítima e de outros sistemas. E, mais ainda, haviam diversos

kits de ferramentas para pesquisa de portas, identificação de sistemas remotos, detecção de

vulnerabilidades, invasão e exploração de sistemas. Este IP de destino do FTP era em uma

universidade no México.

Solução: O sistema vítima foi considerado como totalmente comprometido. Devido ao

comprometimento de rede, foi necessário, durante duas semanas, proceder a uma avaliação

minuciosa para determinar o escopo de comprometimento das máquinas locais e remotas que se

relacionaram com o sistema como clientes ou como servidores. Devido à profundidade do

comprometimento, com nível de administrador, a data de início do comprometimento foi, na

investigação, melhor se considerada como improvável. Como se tratava de sistema em uso

apenas a quatro meses, o sistema foi considerado como sendo comprometido desde a sua

instalação inicial. Todas as informações, dos últimos quatro meses, foram tidas como quebrada

sua confiabilidade. Como os usernames e senhas de vários serviços utilizados diariamente

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 114/166
naquela rede como FTP, E-MAIL e TELNET circulam em pacotes TCP em texto claro, legíveis

ao serem capturados, foram trocados os usernames e senhas e se partiu para uma reinstalação

metódica de todos os sistemas cujo dados de acesso possam ter sido comprometidos. As

informações de documentos trafegados em rede e os guardados em máquinas da rede foram

reavaliados do ponto de vista de análise de risco para a instituição do governo por uma equipe

formada por 18 pessoas chefiadas pelo chefe do departamento. A investigação foi feita com

formalidades de procedimentos para coleta, preservação e uso das evidência digitais de forma a

propiciar coerência e possibilidade de busca concreta da verdade e permitir o procedimento legal

que se instaurou a partir da investigação. O caso tomou proporções internacionais e a

investigação serviu para alimentar de dados e provas equipes policiais de investigação de outros

países que já estavam na com uma avançada investigação em busca do atacante que agia em

redes de governo internacionais, inclusive em redess militares de alta criticidade.

CASO 7: Servidor Windows com IIS de hospedagem compartilhada

Informado por: Um australiano proprietário de um site de venda de cosméticos em

provedor de acesso e de serviços de hospedagem de sites observou que seu site havia sido

pichado e entrou em contato com o provedor australiano local.

Descrição: Pichação de vários sites em uma mesma máquina.

Foi feita uma imagem do disco afetado.

Foi examinado e observado o que ocasionou.

O atacante tinha uma conta de usuário ftp válida e direitos a executar scripts ASP e

ASP.NET

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 115/166
A investigação foi bastante complexa, pois não se encontravam indícios no IDS de rede

da ação dos atacantes. A nível de máquina também não haviam indícios de ações externas em

massa.

Os investigadores partiram para investigar a possibilidade de ataque de dentro da

máquina.

Observou-se que o usuário e grupo dos usuários de sites compartilhados tinham em

comum um único usuário da web para visitantes de seu sites, com permissões para "Everyone"

(todos). Assim, fazendo uso de instância do FileSystemObjects o atacante que tinha permissão

para colocar e executar scripts ASP em seu site foi capaz de executar um código para alterar a

página inicial de todos os sites de outros usuários. Somente foi possível identificar o usuário que

efetuou a pichação, depois de restaurar arquivos apagados e comprovar a suspeita de que a

exploração de privilégios em outras pastas se deu pela exploração da instanciação do FSO

(FileSystemObjects) via ASP.

Solução: O provedor fez reinstalação completa do sistema a partir de backup em sistema

novo, e implementou novos sitemas com usuários diferenciados, permissões mais examinadas e

mais seguras e aumentou o rigor na aceitação de novos usuários e na monitoração das atividades

dos usuários.

CASO 8: Ataque de DOS (Deny Of Service - Negação de Serviço)

Informado por: Usuários internos e externos começaram a consultar o suporte técnico da

empresa.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 116/166
Descrição: Numa determinada empresa que se utiliza de estrutura própria para hospedar

sites do grupo empresarial, todos os serviços internet relacionados aos sites da empresa

começaram a apresentar mau funcionamento ao final da noite de um sábado. O horário de final de

semana, fora de expediente e à noite despertou a atenção do administrador da rede que logo

pensou em um sério incidente de segurança. A equipe de investigadores foi acionada e iniciou os

procedimentos investigativos. Depois de diversos procedimentos preliminares, a equipe

juntamente com o administrador da rede observaram que o serviços de resolução dos servidores

de nomes (DNS - Domain Name Server) não estava respondendo a contento e que os serviços

estavam funcionais se acessados via número de I.P. Foi identificado que o problema era apenas

no servidor DNS principal e não nos secundários. Como não haviam indícios de ataques logados

no IDS de rede e nem nos logs do servidor de DNS principal, os investigadores partiram para

pesquisar as ações dos usuários examinando principalmente os arquivos bash_history. Foi

observado que um determinado usuário com poderes de administrador fez logon no sistema,

depois mudou para root "usando" e naquela hora foram logados os seguintes comandos deste

usuário entre outros:

# cd /etc/domain/zonefiles/

# vi sitefilial01.com.br.zonefile

# date

# df -h

# du -sh var/log/

# du -sh var/log/

# du -sh /var/log/logsdeintranet/

# rm -rf var/log/logsdeintranet/arquivoantigo1.log

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 117/166
# df -h

# rm -rf var/log/logsdeintranet/arquivoantigo1.*

# rm -rf *

# df -h

# cd /var/log/logsdeintranet

# ls -la

# rm -rf *

# df -h

# exit

Examinando os comandos acima fiou óbvio o que aconteceu. Foi descartada pela equipe

de investigadores a hipótese de incidente de segurança. O que aconteceu foi uma falha provocada

por negligência deste usuário com poderes de administrador. Por preguiça ou falta de malícia o

usuário incidiu em erro e as conseqüências de seu erro foram desastrosas por ter a resolução de

nomes (DNS) importância crítica para o funcionamento de inúmeros serviços de rede. Ficou claro

nos logs a inabilidade do usuário tentando executar comandos, que pode falta de uma "/" (barra)

traziam resultados indesejados para ele. A grande questão foi que ele estava aparentemente dento

do diretório que contém todos os arquivos ZONE que são imprescindíveis para o funcionamento

do servidor de nomes (DNS) para os sites locais, para os quais o servidor de nomes responde com

autoridade. Naquele diretório o usuário esteve porque foi para editar um arquivo zone da filial 01

(sitefilial01.com.br.zonefile) e por algum motivo depois partiu para examinar o espaço em disco

e foi apagar arquivos de logs antigos de um sistema de intranet. Por imperícia este usuário usou

comandos errados e usou indevidamente as opções "-rf" do comando rm, inadvertidamente

tornando um erro de diretório potencialmente muito mais perigoso, pois a opção "r" torna o

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 118/166
comando "rm" recursivo, ou seja, apaga também arquivos e sub-diretórios que combinem com a

chave de pesquisa do comando e a opção "f" faz o comando "rm" não fazer perguntas de

confirmação do tipo "Tem certeza que quer apagar .... (y/n)?". Para piorar o "*" asterisco é

curinga e faz com que todos os arquivos combinem com a chave de pesquisa do comando. Ou

seja, o usuário por azar de seu destino estava no diretório doa arquivos ZONE e usou um

comando "rm -rf", que siginifica grosseiramente: "Apague todos arquivos, diretórios e sub-

diretórios e seus conteúdos, sem me perguntar nada, apenas faça." A questão de os serviços só

terem apresentado mau funcionamento no dia seguinte e a noite é que os serviços de resolução de

nomes (DNS) usados no acesso das máquinas clientes guardavam em "cache" as informações

consultadas por até 36 horas, então os problemas foram aparecendo quando os "caches" foram

sendo expirados. A boa fé do usuário pareceu certa, o que foi considerado pela administração da

companhia, mas ainda assim o usuário apresentou ficou extremamente constrangido e apresentou

seu pedido de demissão à empresa.

CASO 9: Máquina desktop Windows com cavalo de tróia

Informado por: usuário operador de micro em gabinete de deputado

Descrição: Um determinado usuário que trabalhava em gabinete de deputado relatou ao

administrador da rede, que sua máquina estava conectando sozinha e apresentando na tela vários

sites de cassinos, jogos e pornografia e que acreditava que sa máquina estava dominada e que

estes sites eram abertos por um invasor. Ao investigar, pode-se perceber que o usuário tinha o

hábito de acreditar em conteúdos de e-mails que solicitavam ao mesmo clicar para fazer

"download" e executar programas para visualizar cartões virtuais. Com a utilização de

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 119/166
ferramentas de detecção de vírus e um cavalo de tróia. Com sua máquina infectada o usuário

colocava em risco a rede do gabinete do deputado. Por isso, foi feita investigação mais a fundo

para detectar tráfego suspeito em rede e o comprometimento de mais máquinas de estação de

trabalho no gabinete. A máquina estava infectada com o "Cytron" que é um objeto componente

de browser ("Browser Helper Object: (BHO)") instalado poar activeX quando o usuário clica em

e-mail com cartão virtual falso. Ele fica instalado no browser e apresenta publicidade em janelas

("pop-ups") conforme o que o usuário está visitando e principalmente apresentando sites

pornográficos. A rede e demais máquinas foram investigados e não se encontraram mais

problemas.

Solução: A máquina foi desinfectada e passou a ser monitorada constantemente, com

revisão completa quinzenal. O usuário assinou um termo de boas práticas onde se comprometeu

em diversos aspectos no que diz respeito a hábitos mais seguros.

CASO 9: Fórum Web de universidade pichado

Informado por: O webdesigner de um site universidade no interior de São Paulo percebeu

que o fórum em .ASP de seu site estava com um texto na mensagem principal dizendo "Birald

Hacked Here"

Descrição: Os investigadores ao pesquisar o caso procuraram verificar se era possível

determinar o perfil de atividades do atacante que se intitulava como Birald (ps.: Este codinome

não é o codinome real do caso.). Notou-se logo que se tratava de um codinome presente em

centenas de pichações ("defacements") e todas as analisadas pela equipe de investigação

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 120/166
correspondiam a entradas em fóruns web, com pequenas variações no texto. Os investigadores

partiram para analisar a segurança do aplicativo e logo se percebeu que o mesmo tinha uma falha

de segurança séria e de simples exploração. O sistema de fórum tinha administração via web e

um usuário administrador, com plenos poderes de administração do fórum e dos conteúdos das

mensagens. Havia um sistema de logins e senha para acessar a administração do sistema, mas por

um erro de falta ou falha no projeto de segurança do aplicativo, se o atacante soubesse o caminho

completo da URL da página de alteração de senha do administrador, bastava ele não acessar a

página de autenticação e acessar diretamente a página de alteração de senha do administrador,

sair da mesma e entrar de novo, e por uma falha de controle de sessão ele agora poderia mudar a

senha do administrador ou usar o sistema como se fosse o administrador.

Solução: O fabricante do fórum que é distribuído gratuitamente ainda não forneceu

soluções, então, conforme orientações dos investigadores a própria equipe de desenvolvimento

web da universidade acrescentou umas poucas linhas de código para corrigir a falha de controle

de sessão, mensagem "Birald Hacked Here" foi removida e não foi dado mais andamento ao caso.

CASO 10: Acesso não autorizado a intranet

Certo dia um funcionário que estava de plantão à noite recebeu um telefonema. O sujeito

do outro lado da linha dizia que tinha encontrado uma séria falha de segurança e que poderia

provar isso. O funcionário perguntou como ele poderia provar e ele disse que queria falar com o

diretor ou dono da empresa. O funcionário informou que isso não seria possível e o sujeito

enfatizou que era muito sério, perguntou para qual e-mail ele poderia mandar prova de que estava

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 121/166
falando sério e o funcionário informou um e-mail. Minutos após o funcionário recebeu um e-mail

do sujeito contendo dados de um cliente da empresa. O funcionário ficou preocupado e ligou

imediatamente para o administrador da rede da empresa. Este administrador acionou a equipe de

investigadores e a polícia que passaram a acompanhar o caso.

Os investigadores analisaram todos os logs durante os períodos prováveis do atacante,

iniciando a procurar em logs próximos e anteriores ao telefonema inicial. Juntamente com um

exame de vulnerabilidades da rede, foi possível observar que os administradores da rede haviam

deixado a intranet da empresa funcionando em um IP válido e acessível a partir da intranet.

Assim que se fez uma análise ao vivo do sistema da intranet, observou-se em logs exatamente

quando e como o atacante havia obtido os dados. Havia entradas em log com IP exatamente igual

ao IP que estava no e-mail enviado pelo atacante à empresa. Examinando as entradas em logs foi

possível verificar que se tratava de uma exploração de vulnerabilidade da camada de aplicação. O

aplicativo em linguagem ASP acessava os dados em um banco de dados e estava sujeito ao

ataque de "SQL Injection". O atacante explorou a falha colocando entradas do tipo "' Or 1=1 --"

nos campos de logon da intranet e assim, conseguia passar o sistema de logon da intranet e

obtendo dados internos da empresa. Desta forma a empresa estava com sua intranet

inadvertidamente acessível via internet a ainda por cima com o acesso restrito por senha

vulnerável ao ataque de "SQL injection". O atacante não tinha conhecimento de que sua ação já

havia sido rastreada e devidamente documentada pela equipe de investigadores e continuou a

fazer contatos via e-mail e telefone exigindo uma elevada quantia em dinheiro para não "fazer

nada pior", para "não divulgar as informações obtidas" e para mostrar como corrigir a falha. A

diretoria da empresa foi orientada pelos policiais e pela equipe de investigadores a não reagir

grosseiramente e a não mostrar que já tinha os passos e as ações do atacante, que agia de uma

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 122/166
conexão adsl de sua própria casa e que ligava do telefone de sua casa e de telefônes públicos. O

atacante começou a ser mais ameaçador e com atitude de extorsão, que após documentados seus

rastros em computador, em rede, seus e-mails, com telefonemas gravados e com filmagem em

vídeo de suas atitutes extorsivas, culminou com sua prisão.

CASO 11: SPAM usando e-mail de usuário corporativo

Em apenas um dia cerca de 235000 (duzentos e trinta e cinco mil) e-mails foram

recebidos na conta de um único usuário de e-mail, o alan@sitecliente.com.br

Devido à política de segurança da empresa, que prevê punições para uso indevido de e-

mails, inclusive o envio de e-mails em série. O caso do usuário Alan foi levado à equipe de

forense computacional para investigação e parecer sobre o caso.

O caso foi bastante simples de ser resolvido, bastando analisar o conteúdo interno das

mensagens, que estavam retornando ao usuário alan@sitecliente.com.br como se ele houvesse

enviado a mensagem de propaganda típica de SPAM para milhares de destinos.

O conteúdo típico das mensagens era como o seguinte, que indicava ser uma típica

mensagem de retorno por não ser possível a entrega de mensagem.

************************************************************************

**

Return-Path: <>

Delivered-To: alan@tl7.mailserver.com.br

Received: (ludmail 29484 invoked by alias); 23 Sep 2004 21:00:58 -0000

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 123/166
Delivered-To: alias-sitecliente_com_br-climail@sitecliente.com.br

Received: (ludmail 29466 invoked from network); 23 Sep 2004 21:00:58 -0000

Received: from unknown (HELO tl6.mailserver.com.br) (207.88.159.6)

by tl7.mailserver.com.br with SMTP; 23 Sep 2004 21:00:58 -0000

Received: (ludmail 14848 invoked by alias); 23 Sep 2004 21:01:00 -0000

Delivered-To: alan@sitecliente.com.br

Received: (ludmail 14845 invoked for bounce); 23 Sep 2004 21:01:00 -0000

Date: 23 Sep 2004 21:01:00 -0000

From: MAILER-DAEMON@l6.mailserver.com.br

To: alan@sitecliente.com.br

Subject: failure notice

************************************************************************

**

E trazia o cabeçalho da mensagem original em seu conteúdo, que foi o mais importante

para entender o caso:

************************************************************************

**

Return-Path: <alan@sitecliente.com.br>

Delivered-To: alanis@mailserver.com.br

Received: (ludmail 6844 invoked by alias); 24 Sep 2004 01:17:00 -0000

Delivered-To: alias-sitecliente_com_br-climail@sitecliente.com.br

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 124/166
Received: (ludmail 6841 invoked by alias); 24 Sep 2004 01:17:00 -0000

Delivered-To: alias-sitecliente_com_br-climailredir@sitecliente.com.br

Received: (ludmail 6838 invoked by alias); 24 Sep 2004 01:17:00 -0000

Delivered-To: alias-sitecliente_com_br-sitecliente@sitecliente.com.br

Received: (ludmail 6835 invoked from network); 24 Sep 2004 01:17:00 -0000

Received: from unknown (HELO e10.mailserver.com.br) (200.109.000.10)

by l7.mailserver.com.br with SMTP; 24 Sep 2004 01:17:00 -0000

Received: (ludmail 11994 invoked by alias); 24 Sep 2004 01:17:03 -0000

Delivered-To: alias-sisisi_com_br-alesi@sisisi.com.br

Received: (ludmail 11990 invoked by uid 504); 24 Sep 2004 01:17:03 -0000

Received: from eventrix@eventrix.com.br by e10.mailserver.com.br by uid 0 with

ludmail-scanner-1.22st

(clamuko: 0.65. Clear:RC:0(200.139.97.181):SA:1(13.3/5.5):.

Processed in 0.350576 secs); 24 Sep 2004 01:17:03 -0000

X-Spam-Status: Yes, hits=13.3 required=5.5

X-Spam-Level: +++++++++++++

Received: from unknown (HELO 82AV5RD) (200.000.00.181)

by e10.mailserver.com.br with SMTP; 24 Sep 2004 01:17:02 -0000

From: "Cursos e Eventos" <eventrix@eventrix.com.br>

To: marketing@sitecliente.com.br

Subject: [SPAM?] Fraudes Corporativas

Sender: "Cursos e Eventos" <eventrix@eventrix.com.br>

Date: Thu, 23 Sep 2004 22:09:37 -0300

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 125/166
X-Priority: 5

X-MSMail-Priority: Low

Content-Type: text/html; charset="iso-8859-1"

X-ludmail-Scanner-Message-ID: <109598862281311981@e10.mailserver.com.br>

************************************************************************

**

Foi comprovada a inocência do usuário, interrompendo o processo administrativo e da

investigação.

CASO 12: Formmail

Informado por: Administrador de rede corporativa de uma empresa de advocacia.

Descrição: O administrador de rede começou a perceber que o site da empresa, uma

empresa de advocacia, estava tendo lentidão por longos períodos e com uma freqüência cada vez

maior. O fornecedor de conexão à internet foi acionado e o mesmo disponibilizou ao

administrador relatórios gráficos de acesso a sua rede (MRTG) onde se podia observar que os

momentos de lentidão coincidiam com grandes utilizações da banda de internet disponível. O

administrador de redes acionou a equipe de investigadores suspeitando que a rede pudesse estar

sendo utilizada para atacar redes de terceiros ou que dados internos da empresa pudessem estar

sendo metodicamente e freqüentemente roubados. A investigação foi iniciada em nível de rede

com a captura de pacotes para examinar o tráfego suspeito. Foi percebido o fato de que a

quantidade de tráfego era principalmente na porta 25, que é tipicamente utilizada no envio de e-

mails. Foi possível determinar que a máquina responsável por todo o tráfego não era o servidor

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 126/166
de e-mails da empresa e também não era uma máquina de funcionário, cliente de e-mail, mas sim

o servidor web da empresa. A equipe de investigadores examinou os logs da máquina e refinou a

configuração de um IDS (sistema de detecção de intrusão) de rede para determinar o que estava

havendo. Foi possível determinar exatamente o que estava acontecendo. Havia um formulário

para contato dos internautas com os advogados a empresa que era processado via um "script"

(programa) chamado "Formmail". O "script" na versão que estava sendo utilizada permitia que

"spammers" (indivíduos que enviam e-mails de propaganda em massa) se utilizassem de um

"bug" do programa para enviar milhares de e-mails. O exame de logs mostrou que a falha estava

sendo explorada por dezenas e dezenas de "spammers" com IPs originados em todo o mundo.

Alguns dos IPs foram analisados e levavam a conexões discadas com ip variável e locais públicos

de conexão à internet. Os sócios da empresa pretendiam processar os "spammers" na justiça, mas

devido à dificuldade de eliminar o anonimato e de agir em esfera mundial em diferentes

jurisdições a opção final foi de eliminar o bug (a falha) instalando uma nova versão do programa.

CASO 13: Pornografia infantil

Informado por: denuncia anônima

Descrição: A polícia recebeu uma denúncia de comercialização ilegal, tráfico, de imagens

de pornografia infantil via internet. A investigação durou meses e foi feita em conjunto com a

participação da polícia com a equipe de investigadores. Depois de muita pesquisa via internet

pôde-se determinar o provedor de acesso uilizado pelo criminoso. O provedor de acesso, de

forma discreta colaborou com a investigação de forma que foi possível identificar a conta do

usuário a partir das datas no exame de tráfego cruzadas com os horários de conexões do usuário.

O envio de imagens era feito utilizando esteganografia (técnica usada para esconder informações

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 127/166
dentro de imagens) colocando imagens dentro de imagens de paisagens. Isso foi detectado com a

captura e remontagem de sessões de comunicação via internet do suspeito e utilizando software

de detecção de esteganografia. Felizmente a informação esteganografada não estava criptografada

e como estava sendo utilizado um software convencional de esteganografia de fácil detecção foi

possível juntar provas do ilícito. A autorização judicial para grampo telefônico para investigar a

residência de onde partiam as conexões foi essencial para identificar quem dentre os moradores

da residência era o criminoso ou criminosa, pois apesar do ilícito estar claro e já haver provas a

identidade do indivíduo precisava ser também incontestável, afinal qualquer um dentro daquela

casa poderia ser o criminoso. O estudo das ligações telefônicas e do tráfego de rede entrada e

saída, juntamente com um flagrante em delito, foram fundamentais para que o criminoso não

pudesse se eximir das culpas. Em defesa posterior ao flagrante, o criminoso alegou ser inocente e

que alguém deveria ter invadido e estar usando seu computador para o ilícito. Realmente o

computador dele tinha um software cavalo de tróia em execução, mas a equipe de investigadores

já tinha tomado o cuidado de investigar e guardar o tráfego de rede de entrada e saída e

documentando formalmente todo o conteúdo e assim foi possível provar que não havia tráfego

nas portas utilizadas pelo cavalo de tróia na maioria das conexões com ações ilícitas e que o

cavalo de tróia foi plantado pelo próprio acusado para servir de álibi.

CASO 14: Caso checkrootkit porta 465 smtps

Um alerta de gravidade emergencial foi iniciado por um administrador de sistemas de um

cliente que havia instalado um novo servidor de e-mails e resolveu instalar um programa de

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 128/166
detecção de rootkits, chamado checkrootkit e notou que a porta 465 apresentava a seguinte

resposta do programa checkrootkit:

*********************************************

Checking `bindshell'... INFECTED (PORTS: 465)

*********************************************

O administrador de sistemas estava visivelmente transtornado por tratar-se de um sistema

altamente crítico nas comunicações sigilosas da empresa.

A equipe de forense computacional iniciou os seus trabalhos e por tratar-se de ambiente

já conhecido e relativamente controlado conforme orientações anteriores da equipe foi rápido

checar que o servidor não se encontrava comprometido e determinar o alarme como falso

positivo e identificar a causa.

O falso positivo se deu porque devido a um novo sistema implementado neste servidor de

e-mails, o mesmo passou a ter suporte a "secure SMTP" (SMTP seguro) que funciona na porta

465 e provoca falso positivo para o programa "checkrootkit".

CASO 15: Caso de funcionário enviando arquivos de imagem de protótipos de produtos

em indústria

Uma determinada indústria estava com suspeita de que um de seus funcionários estivesse

repassando informações sigilosas sobre novos produtos para um concorrente.

Foi contratada a equipe de investigação em forense computacional para monitorar os

usuários e em especial encontrar rastros de atividades já ocorridas.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 129/166
O funcionário em questão tinha privilégio de acesso a informações confidenciais e seu

acesso aos servidores da empresa era em nível de administrador.

Depois de muitas horas de investigação chegou-se a uma prova que demonstrava a ação

do usuário e, mais ainda a sua intenção de manter ocultas suas ações.

Foi utilizado o utilitário "unrm" do conjunto de ferramentas "The Coroner's Toolkit" e

não foi muita surpresa identificar que o usuário que além de enviar os arquivos de imagens via

FTP, tinha conhecimento dos logs de FTP do servidor e os apagava, assim como editava os

conteúdos de seu arquivo .bash.history, que é o arquivo que guarda os comandos digitados do

usuário. Foi observado que o usuário se conectava via FTP partir de um provedor externo

chamado hackprovider.net fora de seu horário de trabalho, cerca de 22:24hrs. Sendo que na

mesma conexão foi identificada atividade normal do usuário enviando um e-mail à sua equipe de

trabalho e acessando uma extranet da empresa, para atividades normais que somente ele poderia

fazer e que eram atividades em que ele se identificava e se autenticava normalmente, sem

nenhuma tentativa de negativa de autoria, ao contrário apresentou relatório requisitando horas

extras trabalhadas remotamente a partir de sua casa.

Para identificar atividade FTP do usuário suspeito de username usersusp em possíveis

logs apagados, o seguinte comando pesquisou na partição /var (/dev/hda7) que guarda os logs e

encontrou atividade FTP a partir do provedor hackprovider.net :

Comando:

bin/unrm /dev/hda7 | strings -a | grep "usersusp ftp" | more

Parte da resposta:

Wed Mar 24 22:24:16 2004 0 200-181-086-059.space705.dsl.hackprovider.net 0

/path_usersusp/dir/PROT0564.gif a _ d r usersusp ftp 0 * c

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 130/166
Wed Mar 24 22:24:16 2004 0 61-181-86-059.sparce756.dsl.hackprovider.net 0

/path_usersusp/dir/PROT0564.psd a _ d r usersusp ftp 0 * c

Wed Mar 24 22:24:16 2004 0 61-181-86-059.sparce756.dsl.hackprovider.net 0

/path_usersusp/dir/PROT0564.doc a _ d r usersusp ftp 0 * c

O comando "unrm" procura por conteúdos em arquivos apagados, o pipeline "|" passa o

que for encontrado para o próximo comando "strings -a" para obter as strings encontradas e o

comando "grep" filtra o resultado mostrando como resultado apenas o que já estavam procurando

que era uma entrada do usuário usersusp, colocando exatamente como é gravada uma ação de ftp

nos logs daquele tipo de servidor FTP. A indústria em questão solicitou que a equipe continuasse

de forma discreta, inclusive com monitoração de rede e muito mais foi sendo descoberto a

respeito do mesmo usuário avançado e suspeito.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 131/166
CONCLUSÃO

O desenvolvimento deste trabalho de projeto final traz várias conclusões a respeito

do tema estudado de forense computacional como descrito a seguir.

Conhecer as características do ambiente de trabalho de forense computacional foi

um dos resultados mais interessantes entre os obtidos. A determinação extrema dos

profissionais envolvidos nas atividades de forense computacional mostra o quanto a atenção

aos detalhes é necessária, assim como, as formalidades de procedimentos e com a aplicação

do conceito de melhores práticas.

Entender o ambiente de forense computacional como “cena do crime” resume com

uma analogia de fácil entendimento a realidade da atividade em si. A aplicação minuciosa

de técnicas investigativas na computação forense é, sem dúvida, muito semelhante às

técnicas de perícias investigativas utilizadas em crimes convencionais.

A grande abragência da forense computacional em diversas áreas que envolvem

segurança computacional traz complexidade aos trabalhos a serem realizados na

investigação de cada caso.

A leitura de materiais a respeito do tema principalmente livros e fontes em sites na

internet foram de grande valia para o entendimento da forense computacional. Foi uma

busca exaustiva por informações que se mostrou tão frutífera que tornou a tarefa de síntese

indispensável para apresentar o tema sem excesso de informações.

A pesquisa necessária em busca de informações a respeito de forense computacional

merece especial notação no que diz respeito a sistemas em plataforma Windows devido à

escassez de informações sobre os detalhes de funcionamento dos sistemas de arquivos, em

especial, do NTFS.
Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 132/166
A compreensão de cada camada de observação em um caso de investigação de

forense computacional ficou mais clara conforme se deu o desenvolvimento teórico e prático

da pesquisa e aplicação de práticas forenses. Pela expressão “cada camada” entende-se o

nível de investigação. Por exemplo, num caso de investigação de e-mail, pode-se procurar

um e-mail deletado na lixeira do programa de e-mail ou encontrar as informações em um

local bem mais secreto, numa camada ainda mais interna, como diretamente nos mais

baixos níveis do sistema de arquivo ou ainda num ativo de rede ou sistema servidor por

onde o e-mail tenha sido armazenado ao passar. Este exemplo serve para complementar o

entendimento que todo este trabalho procurou demonstrar a respeito dos diferentes níveis,

camadas, do processo investigativo da forense computacional.

A área forense de adquirir, preservar, recuperar e apresentar dados que foram

processados eletronicamente e guardados em uma mídia de computador é a ciência da

forense computacional. A forense computacional está se fazendo cada vez mais presente e

cada vez menos dispensável pelos motivos apresentados neste trabalho sobre o histórico

acelerado de crescimento da base de atividades computacionais nas relações humanas.

O investigador precisa estar perfeitamente sintonizado com os objetivos de cada

caso ao trabalhar com computação forense para minimizar o tempo e a quantidade de

dados que deve recuperar e analisar, maximizando sua eficiência e eficácia. Isso pôde ser

averiguado neste trabalho como indispensável para melhores resultados.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 133/166
As qualidades e experiência do investigador são de extrema importância, mas as

suas características devem estar acrescidas de boas ferramentas e com uma metodologia

excelente. Para isso, todo o trabalho em forense computacional começa muito antes de se

precisar dele, com muito estudo, planejamento e preparação efetiva.

A validade técnica e jurídica das metodologias para recuperar dados de

computadores envolvidos em incidentes de segurança tem se tornado fundamental.

Os procedimentos tem que ser tecnologicamente robustos para garantir que toda a

informação útil como prova seja obtida e também de uma forma a ser legalmente aceita de

forma a garantir que nada na evidência original seja alterado, adicionado ou excluído.

Devido à globalização dos crimes digitais é de fundamental que sejam feitos, em

cada país, esforços constantes a respeito de legislação local, nacional e internacional em

conjunto com a padronização de procedimentos, criação e uso de manuais de boas práticas

aceitas internacionalmente para a forense computacional.

A forense computacional lida com dados físicos, reais, mas numa realidade

metafísica digital, onde os dados físicos são informações elétricas, eletrônicas, magnéticas,

eletromagnética e em outras formas mais ou menos voláteis. Os dados mudam, as

tecnologias mudam, os equipamentos mudam, os conhecimentos mudam, sempre.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 134/166
Ao investigador que trabalha com forense computacional cabe a tarefa de se

preparar cada dia mais. Afinal, sempre haverá trabalho duro a fazer, pois, não existe um

ambiente totalmente seguro e não existe um crime que não deixe rastros, mas os criminosos

e as vítimas continuam existindo. A forense computacional e seus resultados positivos se

fazem a cada dia mais necessários.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 135/166
Glossário de siglas e termos

BIOS: "Basic input/output system" - Sistema básico de entrada e saída

ACEs: "Access Control Entries" - Entradas de controle de acesso ACID: Programa de

interface web para o snort

ACK: "acknowledgement code" - Caracter de controle de transmissão

ACLs: "Access Control Lists" - Listas de controle de acesso

ACPO: "United Kingdom's Association of Chief Police Officers" - Associação de oficiais

chefes de polícia do Reino Unido

AIDE: "Advanced Intrusion Detection Environment" - Ambiente avançado de detecção de

intrusões

ASCII "American Standard Code for Information Interchange" - Padrão de código

americano para intercâmbio de informações

ASCLD/LAB: "American Society of Crime Laboratory Directors" - Sociedade Americana

de Diretores de Laboratórios de Crime

ASP: "Active Server Pages" - Tipo de página para internet dinânica com extesão .ASP

browse SMB: "Server Message Block" - Formato de mensagem para compartilhar

arquivos, diretórios e dispositivos

BSD: "Berkeley Software Design" - Versão da Berkeley do sistema operacional UNIX

CMOS: "Complementary Metal Oxide Semiconductor" - Tipo de semicondutor

largamente usado em chips de computador


Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet
Daniel Linhares Lim-Apo
Pág. 136/166
DACL: "Discretionary Access Control List" - Lista de controle de acesso discricionária

DICT: "Dictionary attack" - Método de quebrar a segurança de sistemas com ataque

baseado em listas de palavras de dicionário

DLL: "Dynamic Link Library" - Biblioteca de funções executáveis ou dados para uso em

aplicações em plataforma Windows.

DNA: "Windows Distributed interNet Applications Architecture" - Nome comercial para

a integração do Windows com a Internet

DNS: "Domain Name Server" - Servidor de nomes de domínios

DoD: "US Department of Defense" - Departamento de Defesa dos Estados Unidos

EA: "Extended Attribute" - Atributos extendidos

EXT2FS: Sistema de arquivos Linux EXT2 (Extendido 2)

EXT3FS: Sistema de arquivos Linux EXT3 (Extendido 3)

F.I.R.E.: "Forensic and Incident Response Environment" - Ambiente Forense e de

Respsota a Incidentes

FAT: "file allocation table" - Tabela de alocação de arquivos

FAT12: "12-bit FAT" - Sistema de arquivos para disquetes, que suporta até 16MB.

FAT16: "16-bit FAT" - Sistema de arquivos FAT do Windows 95

FAT32: "32-bit FAT" - Sistema de arquivos FAT do Windows 98

Linux: Sistema operacional de código livre e aberto

NTFS: Sistema de arquivos do Windows NT, 2000, XP e 2003

BeFS (BeOS): Sistema de arquivos do sistema operacional BeOS

UFS (BSD): Sistema de arquivos nativo do BSD

Netware: Sistema operacional de rede desenvolvido pela Novell Corporation

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 137/166
ReiserFS: Sistema de arquivos Reiser - Possivelmente o mais rápido sistema de arquivos

FBI: "Federal Bureau of Investigation" - Birô Federal de Investigação dos Estados Unidos

Fdisk: Ferramenta para preparar discos rígidos para formatação, examinando, criando ou

modificando partições.

FILE: Arquivo. Coleção de dados que tem um nome, normalmente gravado em um

sistema computacional

FN: "File Name Attribute" - Atributo de nome do arquivo

FSO: "File System Objects" - Componente de acesso ao sistema de arquivos em

plataforma Windows

Ftimes: Ferramenta de linha e coleta de evidência

FTP: "File Transfer Protocol" - Protocolo de transferência de arquivos

SFTP: "SSH File Transfer Protocol" - FTP via SSH

GNU: "GNU's not UNIX" - O GNU que não é Linux - Sistema de software compatível

desenvolvido pela "Free Software Foundation (FSF)" (Fundação do Software Livre).

GPG: "The GNU Privacy Guard" - Uma ferramenta livre substituta do PGP para

criptografia de arquivos e e-mails

GPL: "General Public License" - Licença pública de uso geral que acompanha vários

softwares de código aberto a respetio de poderem ser livremente copiados, distribuídos e

modificados.

GUI: "Graphical User Interface" - Interface gráfica para o usuário

HD: "Hard Disk" - Unidade de armazenamento em disco rígido

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 138/166
HPFS: "High Performance File System" - Sistema de arquivos criado para o OS/2 da IBM

para superar as limitações do sistema FAT

HTML: "HyperText Markup Language" - Linguagem usada para criar documentos para a

web

HTTP: "HyperText Transfer Protocol" - Protocolo usado na Internet que define como as

mensagens (conteúdo de páginas) são formatadas e enviadas

HTTPS: "Secure HTTP" - HTTP com uso de criptgrafia SSL na transmissão.

IACIS: "The International Association of Computer Investigative Specialists" -

Associação Internacional de Especialistas em Computação Investigativa

IBM: "International Business Machines" - A maior empresa de computadores do mundo

fundada em 1911

ID code: Código de Identificação

IDS: "Intrusion Detection System" - Sistema de detecção de intrusão

IHCFC: "International Hi-Tech Crime and Forensics Conference" - Conferência

Internacional de Crimes de Alta Tecnologia e Forense

IIS: "Internet Information Server" - Servidor web da microsoft que roda em plataforma

Windows

ISS: "Internet Security Systems" - Empresa de pesquisa, produtos e serviços de segurança

da informação.

IOCE: "International Organization on Computer Evidence" - Organização Internacional

em Evidência Computacional

IP: "Internet Protocol" - Especifica o formato dos pacotes (datagramas) e o esquema de

endereçamento de rede.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 139/166
iperf : Mede a performance do IP.

ipsc : Calculadora de sud-rede IP.

IPSEC: "IP Security" - Um conjunto de protocolos desenvolvidos pelo IETF para suportar

a troca segura de pacotes na camada IP.

iptraf: Ferramenta de monitoração de tráfego de rede

IrcII: Éum cliente de IRC e ICB que funciona na maioria das plataformas UNIX

IRPAS: Internet Routing Protocol Attack Suite

IRC: "Internet Relay Chat" - Sistema de conversas informais via escrita em meio

eletrônico.

IRPAS: "Internet Routing Protocol Attack Suite" - Ferramenta UNIX de comando de

linha útil para detectar novas vulnerabilidades de roteamento.

IRS-CID: "The Internal Revenue Service Criminal Investigation Division" - Divisão de

Serviços de Investigação Criminal Interna dos Estados Unidos

JPG: "Joint Photographic Experts Group" - Formato de imagem com compressão baseada

em cores

kerberos: Sistema de autenticação para comunicação entre dois pontos através de uma

rede insegura, baseado em tickets únicos.

LDAP: "Lightweight Directory Access Protocol", um conjunto de protocolos para acessar

diretórios de informação, baseado no X.500, mas mais simples.

LDE: "Linux Disk Editor" - Editor GNU de disco para Linux, originalmente escrito para

ajudar na recuperação de arquivos apagados.

MBOX: "Linux MBOX format" - Formato de arquivamento de mensagens de e-mail em

arquivos únicos

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 140/166
MailDir: Formato de arquivamento de e-mails em arquivos distribuídos em diretórios

MACTimes: "Modified, Access, and Change Times" - Datas de criação, acesso,

modificação e deleção

MBR: "Master Boot Record" - Um pequeno programa que é executado quando um

computador é inicializado, que procura pela tabela de partições para determinar que partição usar

para a inicialização.

MD5: "Message Digests 5 (digital signatures)" - Algoritmo de hash de assinatura digital

MD5sum: Soma de verificação do algoritimo MD5

MFT: "Master File Table" - Tabela de arquivos mestre do NTFS

Mozilla: Programa de navegação em páginas na internet ("browser")

MRTG: multi router traffic grapher - Sistema gráfico de representação de tráfego de rede.

mtr : traceroute tool - Ferramenta de traceamento de rotas.

Napster: Programa de compartilhamento de músicas na internet. nbtscan: "Scan SMB

networks" - Scanner de redes SMB

netstat, Fport, psservice: Programas identificadores de portas em estado de escuta.

netstat, route: Programas para examinar tabelas de roteamento

Netware: sistema de rede local da Novell.

Ngrep: Ferramenta para a maioria das características

do grep aplicada à camada de rede.

NIDS: Comando utilizado para iniciar manualmente o IDS na Rede.

nikto: Scanner CGI.

Nmap: Ferramenta livre para scanear redes.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 141/166
NT Resource Kit - Kit de aplicativos adicionais do NT.

NTFS: Sistema de arquivos NT.

ntop 2.1.0 : "network top", analisador de protocolos de rede

OS: Sistema operacional

p0f: passive OS fingerprinter - Detector passivo de sistema operacional

pasco: Navegador para o arquivo index.dat do Internet Explorer

Perl - "Practical Extraction and Report Language" Linguagem de programação

desenvolvida por Larry Wall, desenhada principalmente para processamento de texto.

PHP - Auto referência para "PHP: Hypertext Preprocessor" Linguagem de programação de

código aberto, "server-side" para criação de scripts em conjunto com HTML usada para criação

de páginas web dinâmicas.

PostgreSQL: Sistema de banco de dados

PPP: "Point-to-Point Protocol" - Protocolo para conectar um computador à internet.

Mais estável que o antigo SLIP.

Prompt: Símbolo para indicar queo computador está pronto aguardando uma entrada de

dados ou commandos.

psfile, listdlls, Fport. Identificar arquivos abertos não usuais

pslist, psinfo, psfile: Identificar processos anormais

Psloggedon - Identificar os donos dos processos

psloggedon, nbtstat: Identificar usuários logados

pwl9x: crack Win9x password files

RAM: "Random Access Memory" - Memória volátil do sistema em computadores

periféricos e impressoras..

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 142/166
rcrack: rainbow crack - Programa de quebra de códigos.

RDA: is a computer forensics tool to remotely acquire data.

Registro MFT: Registro na tabela MFT do NT.

ReiserFS: Sistema de arquivos Reiser

Rlogin: Sistema de login remoto para sessão de terminal.

Rootkits - Kits prontos tipicamente usados para facilitar o trabalho de exploração de

sistemas e ou invasões de sistemas.

RPC: "Remote Procedure Call" - Um tipo de protocolo que permite a um programa

executar um programa em outro computador servidor.

rrdtool : round robin database

SACL: System Access Control List

samba : opensource SMB support

SCM: Security Configuration Manager

SD: Security Descriptor

SD: Security Descriptor Attribute:

sha1sum: Soma de verificação do algoritmo de hash SHA1.

SI: Standard Information Attribute - Atributo de informação padrão

SMTP: Simple Mail Transfer Protocol - Protocolo para envio de mensagem de correio

eletrônico (e-mail) a um servidor.

Snort IDS: Programa popular, software livre. Sistema de Detecção de Instrusões.

SOPs: Standard Operating Procedures

SPAN: espelhamento de portas

SSH - "Secure Shell" - Programa cliente-servidor de shell seguro para acesso remoto.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 143/166
SSL: "Secure Sockets Layer" - Camada de soquetes seguros - Desenvolvida pela

netscape para transmissão cifrada de páginas web com criptografia assimétrica, com uso de

chaves privadas, públicas e certificados.

ssldump is an SSLv3/TLS

super-freeSWAN 1.99.8 : kernel IPSEC support

super-freeSWAN 1.99.8: kernel IPSEC support

swap: Área de paginação de memória em uma partição de disco rígido.

SWGDE: (Scientific Working Group on Digital Evidence) Grupo de Estudo Científico em

Evidencia Digital

SWGDOC: Questioned Documents (Documentos questionados) Grupo de Estudo

Científico a Respeito de Documentos

syslogd: Sistema de logs.

TASK: Nome como o "Sleuth Kit" era conhecido.

TCP: "Transmission Control Protocol" - (Protocolo de controle de transmissão). O TCP

é um dos principais protocolos em redes TCP/IP.

Tcpdstat:

TCPDump: Capturador de pacotes de redes, popular e muito robusto.

tcptrack : track existing connections

TCT: The Coroner's Toolkit - O kit do agente funerário, nas verdade um kit de programas

para a forense computacional.

tctutils : Utilitários do TCT citado acima.

TELNET: Software de acesso remoto

Testdisk: Teste de disco

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 144/166
THC's: network mapper - Mapeador de rede

TNEF: Transport Neutral Encapsulation Format - Sistema proprietário da Microsoft para

formatação de e-mails e seus anexos.

UNIX: Sistema operacional multi-usuário popular desenvolvido pela Bell na década de

70.

URL: "Uniform Resource Locator" - Endereço web na internet.

US Postal Inspection Service - Serviço de inspeção postal dos Estados Unidos

US Secret Service: Serviço secreto dos Estados Unidos

VCN: virtual cluster number - Número de cluster virtual

VNC: "Virtual Network Computing" - Programa de acesso remoto gráfico

VPN: "Vitual Private Network" - Rede privada virtual

VPN fingerprinting: Identificador de VPN

WIDZ: Wireless IDS - Sistema de detecção de intrusão para rede sem fio.

zz: "zombie zapper kills DDoS zombies" - Programa que elimina zumbis de ataque

distribuído

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 145/166
Bibliografia

Arquiteturas e estruturas NTFS - http://www.pcguide.com/ref/hdd/file/ntfs/arch_MFT.htm

ASCLD Accreditation - American Society of Crime Laboratory Directors -

http://www.ascld.org/accreditation.html

Astonsoft PC DoorGuard virus encyclopedia -

http://www.ultrasoftware.net/viruslist/info.asp?id=trojan

Atributos de arquivos NTFS - http://www.pcguide.com/ref/hdd/file/ntfs/files_Attr.htm

AusCERT - Australia's National Computer Emergency Response Team -

http://www.auscert.org.au/

Beginners Guides: Hard Drive Data Recovery - PCStats.com

Biblioteca Mhash - http://schumann.cx/mhash/

CERT® Advisory CA-2001-19 "Code Red" Worm Exploiting Buffer Overflow In IIS Indexing

Service DLL - http://www.cert.org/advisories/CA-2001-19.html

CERT® Advisory CA-2001-23 Continued Threat of the "Code Red" Worm -

http://www.cert.org/advisories/CA-2001-23.html

Code Red - Windows 2000, IIS 5.0 -

http://www.microsoft.com/technet/itsolutions/security/tools/iis5chk.asp

Código fonte do AIDE - http://www.cs.tut.fi/~rammer/aide.html

Compilador ANSI C (GCC) - http://www.gnu.org/sofware/gcc/gcc.html

Computer Forensics and Forensic Computing - Computer Forensics Expert - Judd Robbins -

http://knock-knock.com/expert/forensic.htm

Computer Forensics Tools & Software - http://www.forensics.nl/tools/

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 146/166
Computer Forensics, Cybercrime and Steganography Resources -

http://www.forensics.nl/filesystems

Computer Forensics, Cybercrime and Steganography Resources - http://www.forensics.nl/

DATA RECOVERY SERVICES - http://www.datarecovery.net/Forensics.asp

Detalhes completes a respeito do "Code Red" - ANALYSIS: .ida "Code Red" Worm -

http://www.eeye.com/html/Research/Advisories/AL20010717.html

Detecting Backdoors - http://www.icir.org/vern/papers/backdoor/

Dicionário de computador Webopedia - O que é "trojan horse" (cavalo de tróia) -

http://www.webopedia.com/TERM/T/Trojan_horse.html

Digital Evidence: Standards and Principles - Scientific Working Group on Digital Evidence

(SWGDE) - International Organization on Digital Evidence (IOCE) - October 1999 U.S.

Department of Justice - Federal Bureau of Investigation -

http://www.fbi.gov/hq/lab/fsc/backissu/april2000/swgde.htm

Digital Evidence: Standards and Principles, by SWGDE and IOCE (Forensic Science

Communications, April 2000) - http://www.fbi.gov/hq/lab/fsc/backissu/april2000/swgde.htm

Diretórios e arquivos NTFS - http://www.pcguide.com/ref/hdd/file/ntfs/files_Files.htm

E-card Sneakware Delivers Web Porn - http://www.securityfocus.com/news/1350

eTrust PestPatrol Pest Encyclopedia - Cytron - http://www.pestpatrol.com/PestInfo/C/Cytron.asp

Flávio de Souza Oliveira em "METODOLOGIAS DE ANÁLISE FORENSE PARA

AMBIENTES BASEADOS EM NTFS"

G8 Proposed Principles For The Procedures Relating To Digital Evidence -

http://www.ioce.org/2002/G8%20Proposed%20principles%20for%20forensic%20evidence.pdf

GNU Bison - ftp://ftp.gnu.org/pub/gnu/bison/

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 147/166
GNU Flex - ftp://ftp.gnu.org/pub/gnu/flex/

GNU Make - ftp://ftp.gnu.org/pub/gnu/make

Google - Pesquisas de páginas na Web - http://www.google.com.br

Hidden Threat: Alternate Data Streams -

http://www.windowsecurity.com/articles/Alternate_Data_Streams.html

Honeypots, Intrusion Detection, Incident Response - http://www.incident-response.com/

http://www.agilerm.net/webmedia.php

http://www.eeye.com/html/ - eEye Digital Security

http://www.eeye.com/html/Research/Tools/codered.html - Scanner de detecção de CodeRed da

eEye Digital Security

http://www.pcstats.com/articleview.cfm?articleID=1139

Linux Project - NTFS Documentation - http://linux-ntfs.sourceforge.net/ntfs/help/layout.html

Lista de discussão sobre forense - http://www.securityfocus.com/forums/forensics/intro.html

Livro "Hackers adolescentes"

Livro "Hackers - Resposta e Contra-Ataque"

Marcelo Abdalla dos Reis e Paulo Lúcio de Geus da Universidade Estadual de Campinas

Instituto de Computação em: "Analise Forense de Intrusões em Sistemas Computacionais:

Técnicas, Procedimentos e Ferramentas"

Mark Russinovich - Articles - Windows Network Magazine -

http://www.win2000mag.com/Authors/AuthorID/76/76.html

Mark Russinovich em Exploring NTFS On-disk Structures -

http://www.win2000mag.com/Article/ArticleID/15720/15720.html

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 148/166
Mark Russinovich em Inside Win2K NTFS, Part 1 -

http://www.win2000mag.com/Article/ArticleID/15719/15719.html

Mark Russinovich em Inside Win2K NTFS, Part 2 -

http://www.win2000mag.com/Windows/Articles/ArticleID/15900/pg/1/1.html

Microsoft security bulletin for the .ida hole (Boletim da Microsoft sobre o furo de segurança do

.ida) -

http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS01-

033.asp

National Infrastructure Protection Center (NIPC) - Publications - CyberNotes - 2002 -

http://www.nipc.gov/cybernotes/cyber2002.htm

NTI - Master File Table Defined - http://www.forensics-intl.com/def11.html

Página criada pelos desenvolvedores do W2K.Stream -

http://viry.bonusweb.cz/kniha_o_virech/ntfs.html

PCGuide - Ref - New Technology File System (NTFS) -

http://www.pcguide.com/ref/hdd/file/ntfs/index.htm

PCGuide - Ref - New Technology File System (NTFS) -

http://www.pcguide.com/ref/hdd/file/ntfs/archMFT-c.html

Permissões no NTFS - http://www.pcguide.com/ref/hdd/file/ntfs/secPerm-c.html

PostgreSQL - http://www.postgresql.org/

Projeto Honeynet - http://project.honeynet.org/

Recovering and Examining Computer Forensic Evidence - October 2000 Volume 2 Number 4

- U.S. Department of Justice - Federal Bureau of Investigation -

http://www.fbi.gov/hq/lab/fsc/backissu/oct2000/computer.htm

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 149/166
Recuperação de dados Active@ UNDELETE. Restore Deleted Files - http://www.active-

undelete.com/

Redepar recuperação de dados - http://www.redepar.com.br/servicos/forense.htm

Scientific Working Group on Digital Evidence - http://ncfs.org/swgde/index.html

SecurityFocus HOME Infocus: Windows Forensics: A Case Study, Part 1 -

http://www.securityfocus.com/infocus/1653

Sistemas de arquivos de PC - http://www.pcguide.com/ref/hdd/file/file.htm

Sistemas de arquivos mais comuns atualmente - http://www.pcguide.com/ref/hdd/file/os.htm

TCPDump - http://www.tcpdump.org/

The Aide manual, Rami Lehti <rammer@cs.tut.fi> - aide-0.10\doc\manual.html

The Coroner?s Toolkit - http://www.porcupine.org/forensics/tct.html

US CERT - http://www.us-cert.gov/

Vulnerabilidade do .dda - http://www.eeye.com/html/Research/Advisories/AD20010618.html

What Forensic Analysts should know about NT ALTERNATE DATA STREAMS (ADS) -

http://www.dmares.com/maresware/articles/ads.htm

Who is SWGDE and what is the history? - SWGDE_History.pdf, Mark M. Pollitt, 22/01/2003

Windows IT Pro forensics -

http://search.winnetmag.com/query.html?col=windows&ht=0&qp=windows%3A1&qs=&qc=&p

w=100%25&ws=0&la=en&st=1&nh=10&lk=1&rf=0&rq=1&fs=&si=1&oq=&qt=forensics

Using The Coroner's Toolkit : Rescuing files with lazarus - http://www.cert.org/security-

improvement/implementations/i046.03.html

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 150/166
ANEXOS

Roteiro de apresentação: forense computacional e uso de cópia pericial.

Roteiro de apresentação de procedimentos

Caso de exemplo com linhas gerais dos passos aplicados em apresentação deste trabalho.

Cena: Análise forense de um disquete encontrado em cesto de lixo de secretária suspeita de


manipular informações sigilosas do gabinete em que tragalha em determinado órgão do gorverno.
Este disquete estava com uma etiqueta escrito jogos e foi encontrado aparentemente vazio,
juntamente com materiais de colagem e pintura da filha da secretária. A decisão para
procedimento inicial foi partir para uma cópia pericial do disquete para poder ser feita
investigação preservando-se a possível prova. O resultado final foi perceber que realmente foram
encontrados dois arquivos de jogos apagados no disquete, um executável e um arquivo de dados,
ambos do jogo infantil "Supera Mariver". Entretanto, havia também arquivos apagados
anteriormente ao jogo, em especial uma planilha do Microsoft Excell.

Apresentação das linhas gerais de procedimentos para demosntrar o funcionamento da base da


investigação de forense computacional aplicável a este caso da cena hipotética relatada:

Foi inicializado um computador utilizando o "KNOPPIX Linux Live CD"

O ambiente de "shell forense" foi escolhido, para permitir a guarda do histórico dos comandos e
respostas dos comandos utilizadas.
Para usar este ambiente de shell forense no "KNOPPIX Linux", foi utilizado:
### Botão direito > forensics > forensics shell

Foi utilizado o utilitário kbdconfig que possui uma interface simples para configurar o teclado do
sistema conforme o teclado utilizado:
# kbdconfig
> portuguese
> pt-latin1

Foi criado o diretório de nome "el" na partição em memória /ramdisk para ser usado pelo
"Evidence Locker" do Autopsy.
# mkdir /ramdisk/el

Foi criado o diretório de nome "img" na partição em memória /ramdisk:


# mkdir /ramdisk/img

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 151/166
A prova, no caso, o disquete encontrado, foi devidamente identificado com etiqueta assinada
pelas testemunhas presentes e anotadas as identificações destas pessoas.

Para preservação da prova foi feita uma cópia pericial.


A ferramenta utilizada para a cópia dos dados foi o "dd" que faz cópias em baixo nível copiando
o arquivo da origem especificada usando os blocos de entrada e saída especificados.
# mkdir /arquivoimg
# dd if=/dev/fd0 of=/arquivoimg/arquivo1.dd bs=1024

A prova agora já devidamente identificada e copiada, foi lacrada e guardada em local seguro
iniciando uma cadeia de custódia para a mesma.

Para examinar as características básicas do arquido de imagem usamos o comando "file":


# file /ramdisk/img/arquivo1

No ambiente gráfico do KNOPPIX Linux foi iniciado o navegador ("browser") Mozilla. (


Ctrl+Alt+F5 _ Botão direito > internet > mozilla ), pois, em seguida será utilizado e por já estar
aberto facilitou copiar a URL a ser utilizada.

Em seguida, foi iniciado o aplicativo "autopsy" no "shell":


/usr/bin/forensics/autopsy/autopsy -d /ramdisk/el 8898

A URL apresentada na inicialização, foi selcionada para copiar para a área de transferência;

No navegador Mozilla foi acesada a URL para fazer uso do Autopsy via navegador.

Então, foram utilizados os seguintes passos:


### Open Case > New case. Preencher dados do formulário > OK
### ADD host , indicação de Timezone > OK
### ADD image
### location /arquivoimg/arquivo1.dd
### copy to evidence locker
### File system type fat12
### Original Mount Point \mnt\floppy

A partir daí, houveram demonstrações de como o programa Autopsy funciona de diversas formas
para investigação dos dados encontrados, inclusive arquivos já anteriormente apagados e os
conteúdos de dados de arquivos apagados contidos na imagem examinada, a qual corresponde a
uma cópia fidedigna da prova original.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 152/166
Manual do AIDE (Tradução livre por Daniel Lim-Apo)

"The Aide manual", Rami Lehti <rammer@cs.tut.fi>

aide-0.10\doc\manual.html

O que é o AIDE?

AIDE (Advanced intrusion detection environment) é um programa de detecção de

intrusões. Mas especificamente um programa para checar a integridade de arquivos.

O AIDE constrói um banco de dados de arquivos, conforme especificado em aide.conf, o

arquivo de configuração do AIDE. O banco de dados do AIDE guarda vários atributos de

arquivo, incluindo: permissões, número de inode, usuário, grupo, tamanho do arquivo, mtime

(alteração), ctime (criação) e atime (acesso), "growing size" e número de links. O AIDE também

cria um cálculo de verificação (checksum) criptográfico ou "hash" de cada arquivo usando a

combinação de um ou mais dos seguintes algorítimos: sha1, md5, rmd160, tiger (crc32, haval e

gost estão sendo compilados e mhash support estará disponível).

Tipicamente um administrador de sistemas criará um banco de dados AIDE em um

sistema novo antes de colocá-lo em rede. Este primeiro banco de dados do AIDE é uma

fotografia do sistema em seu estado normal e o yardstick no qual todas as atualizações

subseqüentes e mudanças serão medidas. O banco de dados deve conter informação sobre os

arquivos binários chave do sistema, bibliotecas, arquivos "headers" e todos os arquivos que são

necessários para manter o sistema em funcionamento. O banco de dados provavelmente não

precisa conter informações sobre arquivos que freqüentemente alterados como arquivos de log,

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 153/166
caixas postais de e-mails, sistemas de arquivo "proc", diretórios de usuários ou diretórios

temporários.

Depois de um incidente de quebra de segurança, um administrador deve começar a

examinar o sistema através de ferramentas como "ls", "ps", "netstast" e "who", que são as

ferramentas mais comumente substituídas por cavalos de tróia. Suponha-se que o "ls" alterado

pelo atacante tenha um filtro para não exibir nenhum arquivo chamado "sniffedpackets.log", que

seria o nome que o atacante escolheu para um arquivo onde guarda o conteúdo dos pacotes

capturador por seu "sniffer", e que o "ps" e o "netstat" tenham sido re-escritos para não mostrar

nenhuma informação de um processo chamado "sniffdaemond", que seria um programa sniffer do

atacante. Assim, mesmo um administrador que previamente imprimiu em papel as datas e

tamanhos dos arquivos de sistemas não terá certeza de que os arquivos chave do sistema não

foram modificados de alguma forma ao efetuar uma comparação. As datas e tamanhos dos

arquivos podem ser manipulados, inclusive alguns "root-kits" melhores tornam isso trivial.

Enquanto é possível manipular data e tamanhos de arquivos, é muito mais difícil

manipular um simples cálculo de verificação (cheksum) como o md5 e exponencialmente mais

difícil manipular cada cálculo de verificação (cheksum) de um "array" inteiro de cálculos de

verificação (cheksums) que o AIDE suporta. Um administrador de um sistema pode rapidamente

identificar mudanças em arquivos chave e ter um nível altíssimo de confiança quanto à precisão

dos resultados.

Infelizmente o AIDE não pode prover certeza absoluta a respeito de mudança nos

arquivos. Assim como os arquivos do sistema, os binários do AIDE podem ser alterados.

Compilando o AIDE

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 154/166
Depois de obter o código fonte do AIDE e descompactar, basta entrar no diretório e usar:

# ./configure

# make

# make install

Obtendo o que é necessário

Antes de compilar o AIDE, você deve ter:

* Um compilador ANSI C (GCC vai funcionar) -

http://www.gnu.org/sofware/gcc/gcc.html

* GNU Flex - ftp://ftp.gnu.org/pub/gnu/flex/

* GNU Bison - ftp://ftp.gnu.org/pub/gnu/bison/

* GNU Make - ftp://ftp.gnu.org/pub/gnu/make

* Código fonte do AIDE - http://www.cs.tut.fi/~rammer/aide.html

* Biblioteca Mhash - http://schumann.cx/mhash/

* E, se quiser usar o PostgreSQL para armazenamento de dados deve-se ter a biblioteca de

desenvolvimento do PostgreSQL instalada (postgres sql developer library) -

http://www.postgresql.org/

Uma vez que se tenha o código fonte do AIDE deve-se descompatá-lo. Tendo o "GNU

tar" , então o comando é:

# tar zxvf aide-versao.tar.gz

Configuração da compilação

Em seguida, você deve configurar o "script" encontrado no código fonte do AIDE para

configurar o processo de compilação.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 155/166
Há diversas opções que se pode dar ao configurar. Pode-se encontrar quais são as opções

disponíveis com o comando "# ./configure --help". A maioria das vezes não é necessário dar

nenhuma opção. Pode-se apenas usar "./configure" sem nenhum parâmetro.

Se for usado o pacote de expressões regulares GNU, utiliza-se a opção "--with-gnu-

regexp". Em sistemas operacionais nos quais há um implementação com bug do regexp deve ser

usada esta opção.

Se for alterado o diretório onde o AIDE está instalado, deve-se usar a opção --prefix. Por

exemplo, "# ./configure --prefix=/usr"

Compilação e instalação

A compilação é feita simplesmente digitando "make". Você pode, em seguida, digitar

"make install" para instalar os binários e as páginas de manual. Os binários devem ser instalados

em um mídia "read-only" (apenas leitura) ou em outro lugar à prova de alterações. Os banco de

dados também devem ser guardados em algum lugar onde um possível invasor não possa alterá-

los.

Configuração

Em seguida, cria-se um arquivo de configuração. A documentação a respeito é encontrada

na página de manual do "aide.conf". Aqui estão alguns poucos indicadores para o que se procura.

Há três tipos de linhas no arquivo "aide.conf":

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 156/166
- Linhas de configuração - usadas para determinar os parâmetros de configuração e definir

ou esvaziar (define/undefine) variáveis;

- Linhas de seleção - indicam que arquivos vão ser adicionados ao banco de dados

- Linhas macro - Define ou esvaziam (define/undefine) variáveis dentro do arquivo de

configuração;

- Linhas iniciadas com # (buffer - jogo da velha) são ignoradas como sendo comentários.

Abaixo segue um exemplo de arquivo de configuração:

#*****

#AIDE conf

# Here are all the things we can check - these are the default rules

#p: permissions

#i: inode

#n: number of links

#u: user

#g: group

#s: size

#b: block count

#m: mtime

#a: atime

#c: ctime

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 157/166
#S: check for growing size

#md5: md5 checksum

#sha1: sha1 checksum

#rmd160: rmd160 checksum

#tiger: tiger checksum

#R: p+i+n+u+g+s+m+c+md5

#L: p+i+n+u+g

#E: Empty group

#>: Growing logfile p+u+g+i+n+S

# You can alse create custom rules - my home made rule definition goes like this

MyRule = p+i+n+u+g+s+b+m+c+md5+sha1

# Next decide what directories/files you want in the database

/etc p+i+u+g #check only permissions, inode, user and group for etc

/bin MyRule # apply the custom rule to the files in bin

/sbin MyRule # apply the same custom rule to the files in sbin

/var MyRule

!/var/log/.* # ignore the log dir it changes too often

!/var/spool/.* # ignore spool dirs as they change too often

!/var/adm/utmp$ # ignore the file /var/adm/utmp

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 158/166
#*****

Aqui foram incluídos os arquivos em /etc, /bin e /sbin. E também foi incluído o /var, mas

ignorados o /var/log, o /var/spool e o arquivo específico /var/adm/utmp. É normalmente uma boa

idéia ignorar diretórios que mudam freqüentemente, ao menos que você queira ler longos

relatórios. É uma boa prática excluir diretórios de arquivos temporários, mail spools, diretórios de

log, sistemas de arquivos "proc", diretórios de usuários, diretórios com conteúdo par aa web, tudo

o que muda regularmente. É uma boa prática incluir todos os binários de sistema, bibliotecas,

arquivos "include" e arquivos de códigos fonte de sistema. Também será uma boa idéia incluir

diretórios que você normalmente não monitora como /dev /usr/man/.*usr/. Claro que você não vai

querer incluir muitos arquivos por questão de praticidade, mas pense a respeito do que você deve

incluir. Por exemplo, se você tem um bloco do dispositivo (block device) o qual o proprietário

sempre altera você pode apenas gravar os atributos que normalmente não mudar (inode,número

de links,ctime). Note que se você está se referindo a um arquivo específico, você deve adicionar

um $ (cifrão) ao final da expressão regular (regexp). Assim, a expressão regular vai checar o

nome do arquivo exatamente e não vai incluir quaisquer outros arquivos que tem o mesmo início.

Por exemplo, se não houvesse um sinal de cifrão no final da linha, significaria que todos os

arquivos com nome começando com /var/adm/utmp seriam ignorados. Assim, um atacante

poderia criar um diretório chamado /var/adm/utmp_root_kit e colocar todos os arquivos que

quisesse ali e eles seria ignorados pelo AIDE.

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 159/166
Problemas com o seu arquivo de configuração

Fazer um arquivo de configuração é bastante trabalhoso e deve ser feito caso a caso. Esta

seção mostra algumas dicas sobre como depurar o seu arquivo de configuração.

Pode-se usar "aide --verbose=255" para gerar um monte de saídas de depuração para

ajudar você a ver que arquivos serão adicionados e quais serão descartados. Para realmente

entender as regras do AIDE uma sugestão é ler um bom livro sobre expressões regulares

(regexps) e a seguinte seção.

Entendendo as regras de comparação do AIDE (Aide rule matching)

Antes de ler esta parte, deve-se ter um conhecimento básico sobre como expressões

regulares funcionam. Há diversos bons livros sobre isto. Diversos livros de Perl tem boas

explanações sobre este assunto. É bom lembrar que o Perl tem algumas extensões para as

expressões regulares comuns. As expressões regulares são trabalhadas da mesma forma sem

depender da plataforma escolhida para sua implementação.

No processo de inicialização o AIDE cria uma árvore de regras de expressões regulares.

Cada tipo de regra é colocado em uma lista separada de cada nó na árvore. Então nós temos um

lista de regras iguais, uma lista de seleções e uma seleção negativa de todos os nós. Estas listas

devem estar vazias. O nó no qual uma regra é colocada é determinado pela primeiro caracter

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 160/166
especial na expressão regular da regra. Por exemplo !/proc será colocado no nó raiz. Enquanto,

!/proc/.* será colocado no nó /proc.

Também, na frente de cada regras o AIDE adiciona um implícito ^.

Quando o AIDE faz uma checa se uma regra combina (rule matching) ele usa o seguinte

algorítimo. O seguinte é uma adaptação de pseudo-código do src/gen_list.c.

check_node_for_match(node,filename)

if(no deeper match found)

check(equals list for this node)

if(no deeper match found)

check(select list for this node)

check_node_for_match(nodes parent,filename)

if(this file is about to be added)

check(negative select list for this node)

return (info about whether this file should be added or not and how)

Armadilhas

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 161/166
Há alguns efeitos colaterais neste algorítimo que podem parecer estranhos à primeira

vista. Por exemplo, com as seguintes regras:

/R

=/etc R+a

!/etc/ppp/logs

O resultado poderia ser que /etc e todos os arquivos dentro dele e dentro de /etc/ppp

exceto /etc/ppp/logs seriam adicionados ao banco de dados. Isto é perfeitamente normal. Isto

acontece porque o =/etc combina não apenas com /etc, mas também com todos os arquivos dentro

dele. Lembre-se que expressões regulares combinam exatamente com a parte à que elas se

referenciam. O resto da linha é incluída por padrão. Então, =/etc$ R+a pode ser a forma correta.

Se você não quer ter o !/etc/ppp/logs você deve obter os resultados pelos quais você está

procurando. Não há nó /etc na árvore de expressões regulares e por isso ele não é checado quando

o AIDE constrói a lista de arquivos a adcionar ao banco de dados. Mas quando você tem as regras

negativas /etc e /etc/ppp são criados e eles tem são checados quando a lsita de arquivos é gerada.

Então, o =/etc é usado para encontrar uma combinação naqueles nós e isso é bem sucedido.

Considere as seguintes regras:

/R

=/var/log/messages$ R+a

!/var/log/messages.*

Isto é o que deve-se escrever se quiser checar o /var/log/messages mas não

/var/log/messages.0, /var/log/messages.1, etc. Entretanto desde que uma seleção negativa de

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 162/166
regras sejam checadas por último e .* possa combinar com uma string vazia /var/log/messages

não é adicionado ao banco de dados. A seguir uma forma mais correta para fazer isto:

/R

=/var/log/messages$ R+a

!/var/log/messages\.[0-9]$

Agora, apenas os arquivos messages terminando com um número de 0 a 9 não são

incluídos ao banco de dados. Nota-se que um atacante pode camuflar um "rootkit" criando um

diretório chamado messages.9. Se messages.9 ainda não existia aí está.

Uso

Primeiro deve-se criar um banco de dados diante do qual futuras checagens serão

executadas. Isto é feito imediatamente depois do sistema operacional e aplicativos terem sido

instalados e antes de a máquina ser colocada em rede. Pode-se fazer isso dando o comando "aide

--init". Isto cria um banco de dados que contém todos os arquivos que foram selecionados em seu

arquivo de configuração. O novo banco de dados criado deve ser movido para um local seguro tal

como uma mídia apenas para leitura (read-only). Deve-se também colocar o arquivo de

configuração e os binários do AIDE e preferencialmente as páginas de manual e este manual

naquela mídia também. Por favor, lembre-se de editar o arquivo de configuração para que o

banco de dados de entrada (input) seja lido a partir daquela mídia apenas para leitura (read-only).

O arquivo de configuração não deve ser guardado na máquina alvo. O atacante pode ler o arquivo

de configuração e alterá-lo ou mesmo sem altera-lo poderá colocar o seu "rootkit" em um lugar

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 163/166
que o AIDE não esteja configurado para checar. Então, a mídia apenas para leitura (read-only)

deve ser acessível somente durante a checagem.

Pode-se agora checar a integridade dos arquivos. Isto pode ser feito dando o comando

"aide --check". O AIDE agora lê o banco de dados e compara-o aos arquivos encontrados no

disco. O AIDE poderá encontrar mudanças em lugares inesperados. Por exemplo, os dispositivos

tty mudam freqüentemente os proprietários e permissões. Conforme as especificações de

configuração podem ser gerados longos relatórios, o que pode ser uma opção pessoal, mas

certamente não será a escolha para maioria que não tem tempo ou a inclinação para ler toneladas

de lixo todo dia. Então, deve-se refinar o arquivo de configuração para incluir apenas os arquivos

e atributos de certos arquivos que não devem mudar. Mas tenha em mente que não se pode

ignorar tanto que deixe abertura para um ataque. Um atacante pode colocar um "rootkit" em um

diretório que você ignorou completamente. Um bom exemplo é o /var/spool/lp ou algum outro

similar. Este é o lugar que o "lp daemon" guarda o seus arquivos temporários. Ele não deve ser

ignorado totalmente, entretanto, deve-se ignorar os formatos de arquivos que o seu "lp daemon"

cria. Usa-se o símbolo $ no final das expressões regulares. Isto impede alguém de criar um

diretório que será ignorado juntamente com os seus conteúdos.

Agora foi refinado o arquivo de configuração deve-se atualizar o banco de dados e isto

pode ser feito pelo comando "aide --update". O comando de atualização (update) faz a mesma

coisa da checagem, mas também cria um novo banco de dados. Este banco de dados deve agora

ser colocado naquela mídia apenas para leitura (read-only) juntamente com o novo arquivo de

configuração. O ciclo de checagem, refinamento e atualização deve ser repetido quando

necessário. Eu recomendo que o arquivo de configuração seja revisado de vez em quando. A

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 164/166
definição de "quando" depende da necessidade de verificação caso a caso. Alguns podem achar

que devem fazer isso diariamente após cada checagem. Outros podem achar que devem fazer isso

semanalmente.

Há usualmente alguns desvios nos bancos de dados, que significa que novos arquivos são

criados, arquivos de configuração são modificados, toneladas de pequenas mudanças acontecem

até que os relatórios tornam-se impraticáveis de serem lidos. Isto pode ser evitado atualizando o

banco de dados de vez em quando. Mas, o banco de dados de entrada(input) não precisa ser

alterado com tanta freqüência. A substituição do dados de entrada(input) deve ser feita sempre de

forma manual. Esta não deve ser uma operação automatizada.

Há também um caminho alternativo de fazer isso. Este método pode ser preferido pelas

pessoas que tem várias máquinas que rodam AIDE. Pode-se executar "aide --init" em todas as

máquinas e mover os bancos de dados gerados para um host central onde comparam-se diferentes

versões dos bancos de dados com "aide --compare". Esta forma tem o benefício de liberar

recursos nas máquinas monitoradas.

Miscelânea

O banco de dados AIDE pode ser usado para encontrar os nomes reais e localização de

arquivos que foram movidos para o diretório "lost+found" pelo "fsck".

Linhas gerais para segurança

General guidelines for security

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 165/166
1. Não assuma nada

2. Não confie em nada e em ninguém

3. Nada é seguro

4. Segurança é um "trade-off" (inversamente proporcional) com a usabilidade

5. A paranóia é sua amiga.

# fim

Aplicação de Técnicas de Forense Computacional e Respostas a Incidentes na Internet


Daniel Linhares Lim-Apo
Pág. 166/166

Você também pode gostar