Sie sind auf Seite 1von 99

UNIVERSIDADE DE BRASLIA

FACULDADE DE TECNOLOGIA
DEPARTAMENTO DE ENGENHARIA ELTRICA

FORENSE DE MEMRIA: EXTRAO E ANLISE DE


DADOS ARMAZENADOS EM MEMRIA VOLTIL

ANA PAULA TEIXEIRA ROSA

ORIENTADOR: LAERTE PEOTTA DE MELO

MONOGRAFIA DE ESPECIALIZAO EM ENGENHARIA


ELTRICA

BRASLIA / DF: JUNHO/2011

ii

UNIVERSIDADE DE BRASLIA
FACULDADE DE TECNOLOGIA
DEPARTAMENTO DE ENGENHARIA ELTRICA
FORENSE DE MEMRIA: EXTRAO E ANLISE DE
DADOS ARMAZENADOS EM MEMRIA VOLTIL

ANA PAULA TEIXEIRA ROSA


MONOGRAFIA DE ESPECIALIZAO SUBMETIDA AO DEPARTAMENTO DE
ENGENHARIA ELTRICA DA FACULDADE DE TECNOLOGIA DA UNIVERSIDADE DE
BRASLIA, COMO PARTE DOS REQUISITOS NECESSRIOS PARA A OBTENO DO GRAU
DE ESPECIALISTA.
APROVADA POR:

LAERTE PEOTTA DE MELO, MSc, UnB


(ORIENTADOR)

EDNA DIAS CANEDO, MSc, UnB


(EXAMINADOR INTERNO)

DINO MACEDO AMARAL, MSc, UnB


(EXAMINADOR EXTERNO)

DATA: BRASLIA/DF, 07 DE JUNHO DE 2011.

iii

iv

FICHA CATALOGRFICA
ROSA, ANA PAULA TEIXEIRA
Forense de Memria: Extrao e Anlise de Dados Armazenados em Memria Voltil [Distrito
Federal] 2011.
99p., 297 mm (ENE/FT/UnB, Especialista, Engenharia Eltrica, 2011).
Monografia de Especializao Universidade de Braslia, Faculdade de Tecnologia. Departamento de
Engenharia Eltrica.
1. Segurana da Informao 2. Forense Computacional
3. Forense de Memria
I. ENE/FT/UnB. II. Forense de Memria: Extrao e Anlise de Dados Armazenados em Memria
Voltil

REFERNCIA BIBLIOGRFICA
ROSA, ANA PAULA TEIXEIRA (2011). Forense de Memria: Extrao e Anlise de Dados
Armazenados em Memria Voltil. Monografia de Especializao, Publicao Junho/2011,
Departamento de Engenharia Eltrica, Universidade de Braslia, Braslia, DF, 99p.

CESSO DE DIREITOS
NOME DO AUTOR: Ana Paula Teixeira Rosa
TTULO DA MONOGRAFIA: Forense de Memria: Extrao e Anlise de Dados Armazenados em
Memria Voltil.
GRAU/ANO: Especialista/2011.
concedida Universidade de Braslia permisso para reproduzir cpias desta Monografia de
Especializao e para emprestar ou vender tais cpias somente para propsitos acadmicos e
cientficos. Do mesmo modo, a Universidade de Braslia tem permisso para divulgar este documento
em biblioteca virtual, em formato que permita o acesso via redes de comunicao e a reproduo de
cpias, desde que protegida a integridade do contedo dessas cpias e proibido o acesso a partes
isoladas desse contedo. O autor reserva outros direitos de publicao e nenhuma parte deste
documento pode ser reproduzida sem a autorizao por escrito do autor.

Ana Paula Teixeira Rosa


QSA 18 Casa 05
CEP 72015180 Braslia DF - Brasil

vi

Dedico a realizao desse trabalho aos meus pais, que


sempre incentivaram meu desenvolvimento e a busca
pelo conhecimento, dedicando esforos para me oferecer
uma boa educao e possibilitar a realizao dos meus
sonhos.

vii

viii

AGRADECIMENTOS
Primeiramente a Deus, pela oportunidade da vida, com suas inmeras alegrias e
possibilidades de aprendizado.
Aos meus pais, Paulo e Sandra, e ao meu irmo, Matheus, pelo apoio e amor incondicional.
Ao meu orientador Prof. Msc. Laerte Peotta de Melo, pela colaborao, apoio e incentivo no
desenvolvimento deste trabalho.
A todos os colegas e amigos, meus sinceros agradecimentos.

ix

RESUMO

Tradicionalmente, a percia forense computacional trabalha com a coleta e


anlise de dados estticos, armazenados em discos rgidos, buscando adquirir
evidncias relacionadas ocorrncia de atividades maliciosas em sistemas
computacionais aps a sua ocorrncia. Com a evoluo dos recursos
tecnolgicos e a popularizao do uso da Internet, tem se tornado invivel
manter apenas a abordagem tradicional, devido ao grande volume de
informaes a serem analisadas e ao crescimento do nmero de casos de crimes
cibernticos. Nesse contexto, a anlise de dados armazenados em memria
voltil surge como nova abordagem, ao permitir a recuperao de dados
importantes percia forense computacional. Este estudo visa apresentar tal
abordagem, incluindo o tipo de informaes que podem ser recuperadas, assim
como tcnicas e procedimentos para extrao e anlise desses dados em sistemas
operacionais Windows, fazendo consideraes sobre as vantagens e
desvantagens verificadas.
Palavras-chave: segurana da informao, forense computacional, forense de
memria

xi

xii

ABSTRACT

Computer forensics traditionally works with the collection and analysis of static
data stored on hard drives, seeking to acquire evidence related to the occurrence
of malicious activity on the computer systems after their occurrence. With the
evolution of technological resources and the popularization of Internet use it has
become impracticable to keep only the traditional approach due to the large
volume of information to be analyzed and the growing number of cases of
cybercrimes. In this context, analysis of data stored in volatile memory comes as
a new approach, to allow recovery of important data for forensic computing.
This study aims to present such an approach, including the type of information
that can be recovered as well as techniques and procedures for extraction and
analysis of these data in Windows operating systems, with a consideration of the
advantages and disadvantages identified.
Keywords: information security, computer forensics, memory forensics

xiii

xiv

SUMRIO
1. INTRODUO .................................................................................................................... 1
1.1. OBJETIVOS ................................................................................................................. 3
1.2. ORGANIZAO........................................................................................................... 4
2. REVISO BIBLIOGRFICA ............................................................................................ 5
2.1. EVIDNCIAS DIGITAIS ............................................................................................... 9
2.2. DESAFIOS DA FORENSE COMPUTACIONAL ............................................................. 11
2.3. PROCEDIMENTOS ..................................................................................................... 13
2.3.1. Identificando as Evidncias............................................................................. 15
2.3.2. Preservando as Evidncias .............................................................................. 17
2.3.3. Analisando as Evidncias ................................................................................ 18
2.3.4. Apresentao dos Resultados.......................................................................... 20
3. PERCIA FORENSE COMPUTACIONAL: ANALISANDO A MEMRIA
VOLTIL ............................................................................................................................... 21
3.1. A MEMRIA VOLTIL ............................................................................................. 22
3.2. DADOS ENCONTRADOS NA MEMRIA VOLTIL ..................................................... 24
3.2.1. Processos ........................................................................................................... 24
3.2.2. Arquivos abertos e Contedo do Registro do Windows (Registry) ............. 24
3.2.3. Informaes de rede......................................................................................... 25
3.2.4. Senhas e Chaves Criptogrficas ..................................................................... 25

xv

3.2.5. Contedo decifrado ......................................................................................... 26


3.2.6. Dados Ocultos................................................................................................... 26
3.2.7. Cdigos Maliciosos........................................................................................... 26
3.3. TCNICAS PARA ANLISE FORENSE DA MEMRIA ................................................ 27
3.3.1. Recuperao de Arquivos Mapeados em Memria ...................................... 27
3.3.2. Recuperao de Arquivos Atravs de Assinatura ........................................ 29
3.3.3. Deteco e Recuperao de Dados Escondidos ............................................. 30
3.4. EXTRAO DE DADOS DA MEMRIA VOLTIL ...................................................... 31
3.4.1. Hardware .......................................................................................................... 31
3.4.2. Crash Dumps .................................................................................................... 32
3.4.3. Dumps ............................................................................................................... 33
3.4.4. Virtualizao .................................................................................................... 34
3.4.5. Hibernao ....................................................................................................... 34
3.5. FERRAMENTAS PARA AQUISIO DE CONTEDO DA MEMRIA RAM ................. 35
3.5.1. DD...................................................................................................................... 35
3.5.2. Mandiant Memoryze ....................................................................................... 35
3.5.3. ManTech Memory DD..................................................................................... 36
3.5.4. FastDump ......................................................................................................... 36
3.5.5. KntDD ............................................................................................................... 36
3.5.6. MoonSols Windows Memory Toolkit ............................................................ 37

xvi

3.5.7. Nigilant32.......................................................................................................... 37
3.5.8. FTK Imager ...................................................................................................... 37
3.5.9. Winen.exe.......................................................................................................... 38
3.6. FERRAMENTAS PARA ANLISE FORENSE DA MEMRIA ........................................ 38
3.6.1. Ferramentas bsicas ........................................................................................ 40
3.6.2. Volatility Framework ...................................................................................... 40
3.6.3. Mandiant Memoryze ....................................................................................... 45
3.6.4. Windows Memory Forensic Toolkit............................................................... 48
4. ESTUDO DE CASO ........................................................................................................... 51
4.1. CENRIO .................................................................................................................. 51
4.2. REALIZAO DOS TESTES ....................................................................................... 52
5. CONCLUSES .................................................................................................................. 59
6. BIBLIOGRAFIA ................................................................................................................ 63
7. ANEXO I ............................................................................................................................. 67
8. ANEXO II ........................................................................................................................... 72

xvii

xviii

NDICE DE TABELAS

TABELA 3.1 O CICLO DE VIDA ESPERADO DOS DADOS. ............................................................ 10

xix

xx

NDICE DE FIGURAS

FIGURA 2.1 DINMICA DE UM INCIDENTE DE SEGURANA DIGITAL .......................................... 7


FIGURA 2.2 PROCEDIMENTOS DA PERCIA FORENSE COMPUTACIONAL.................................... 14
FIGURA 2.3 FLUXOGRAMA DA FASE DE ANLISE DAS EVIDNCIAS ......................................... 19
FIGURA 3.1 - REPRESENTAO VISUAL DA RVORE DE DESCRITORES: VAD TREE. .................... 29
FIGURA 3.2 TELA DO VISUALIZADOR AUDIT VIEWER ABA FILES: ANLISE FORENSE DA
MEMRIA EFETUADA COM O SOFTWARE MEMORYZE. ......................................................... 47

FIGURA 3.3 TELA DO VISUALIZADOR AUDIT VIEWER ABA REGISTRY KEYS: ANLISE FORENSE
DA MEMRIA EFETUADA COM O SOFTWARE MEMORYZE.

.................................................... 48

FIGURA 4.1 DOWNLOAD DO BANKER ....................................................................................... 52


FIGURA 4.2 MENSAGEM DE ERRO AO EXECUTAR O BANKER .................................................... 53

xxi

xxii

NDICE DE QUADROS

QUADRO 3.1 - USO DO COMANDO VOLATILITY ............................................................................ 42


QUADRO 3.2 USO DO COMANDO IDENT DA FERRAMENTA VOLATILITY ..................................... 42
QUADRO 3.3 - UTILIZANDO A OPO HELP DA FERRAMENTA VOLATILITY .................................. 42
QUADRO 3.4 USO DO COMANDO PSLIST DA FERRAMENTA VOLATILITY ..................................... 43
QUADRO 3.5 USO DO COMANDO FILES DA FERRAMENTA VOLATILITY ...................................... 43
QUADRO 3.6 USO DO COMANDO DLLLIST DA FERRAMENTA VOLATILITY .................................. 44
QUADRO 3.7 USO DO COMANDO REGOBJKEYS DA FERRAMENTA VOLATILITY .......................... 44
QUADRO 3.8 USO DO COMANDO PROCDUMP DA FERRAMENTA VOLATILITY ............................. 44
QUADRO 4.1 AQUISIO DO DUMP DE MEMRIA UTILIZANDO A FERRAMENTA WIN32DD....... 54
QUADRO 4.2 PROCESSOS CRIADOS PELO BANKER .................................................................... 54
QUADRO 4.3 ARQUIVOS CRIADOS/ACESSADOS PELO PROCESSO AVGUIX.EXE ....................... 55
QUADRO 4.4 BIBLIOTECAS UTILIZADAS/CARREGADAS PELO PROCESSO AVGUIX.EXE ........... 56
QUADRO 4.5 CHAVES DE REGISTRO EM USO PELO PROCESSO AVGUIX.EXE ........................... 56
QUADRO 4.6 EXTRAO DO CDIGO EXECUTVEL DO PROCESSO AVGUIX.EXE .................... 56

xxiii

xxiv

TABELA DE SIGLAS

AES Advanced Encryption Standard


API Application programming interface
ASCII American Standard Code for Information Interchange
BIOS Basic Input-Output System
CPU Central Processing Unit
DKOM Direct Kernel Object Manipulation
DLL Dynamic-link Library
DMA Direct Memory Access
GPL General Public License
IBGE Instituto Brasileiro de Geografia e Estatstica
IDS Intrusion Detection System
IP Internet Protocol
MD5 Message-Digest Algorithm 5
PC Personal Computer
PCI Peripheral Component Interconnect
PDA Personal Digital Assistant
PEB Process Environment Block
RAM Random-Access Memory
RFC Request for Comments
URL Uniform Resource Locator
XML Extensible Markup Language

xxv

xxvi

1.

INTRODUO

Com a popularizao da Internet e crescente uso de dispositivos eletrnicos pessoais,


tem se tornado cada dia mais comum o consumo de produtos e servios atravs do meio
virtual. Atividades que antes s poderiam ser realizadas presencialmente, agora so
freqentemente concretizadas atravs da Internet, por meio digital, como o comrcio
eletrnico, o ensino a distncia e at mesmo a realizao de operaes financeiras e bancrias
por meio do Internet Banking.
No entanto, ao mesmo tempo em que oferece facilidades e convenincias, a crescente
utilizao destas tecnologias tambm trouxe um novo palco para a ocorrncia de atividades
ilcitas, praticadas atravs de meios digitais.
De acordo com os dados divulgados pelo IBGE em setembro de 2010, por meio da
PNAD 2009 - Pesquisa Nacional por Amostra de Domiclios, do ano de 2005 ao ano de 2009,
o nmero de domiclios com acesso Internet aumentou em 71%, comprovando que o
nmero de brasileiros com acesso Internet cresceu significativamente no pas.
Paralelamente, cresceu tambm no Brasil a quantidade de crimes praticados atravs de
meios digitais. Conforme divulgado no relatrio Global Fraud Report (KROLL, 2010) pela
Kroll, empresa de consultoria norte americana especializada em gesto de riscos, o roubo de
informaes eletrnicas e fraudes no pas possui nmeros alarmantes, mais expressivos que a
mdia da pesquisa para todas as outras regies do globo. Ainda de acordo com a pesquisa,
pela primeira vez, o roubo de informaes e dados eletrnicos teve incidncia maior que o
roubo fsico nas empresas brasileiras. E segundo relatrio publicado pela Symantec,
fabricante de softwares de segurana, 76% dos brasileiros usurios de Internet j foram
vtimas do cibercrime, um nmero acima da mdia global, que de 65%.
Desse modo, alm dos benefcios e comodidade oferecidos sociedade com a Internet,
vieram tambm os inconvenientes, resultantes de atividades ilcitas cometidas atravs dos
meios eletrnicos por pessoas mal intencionadas, ou seja, os crimes cibernticos. Contando
com a impunidade, com a iluso do anonimato, e aproveitando-se das brechas abertas pelos
usurios leigos e descuidados, que no se preocupam com a segurana de seus dispositivos
eletrnicos, muitos infratores praticam condutas criminosas contra pessoas ou sistemas
computacionais utilizando a rede. Como exemplo, o roubo de dados e informaes privadas,
1

estelionato ou o comprometimento de um sistema de comrcio online de uma empresa,


afetando sua disponibilidade. No entanto, pressupor que na Internet vigora o anonimato um
engano, j que a rastreabilidade das aes efetuadas neste meio possvel. Ento, havendo a
possibilidade de se responsabilizar os usurios, estes podem vir a responder civil e
administrativamente, desde que se comprovem os danos causados e a autoria.
Diariamente so descobertas novas vulnerabilidades e novos mtodos de ataque a
sistemas computacionais so desenvolvidos, bastando que se tenha um mnimo conhecimento
de informtica e redes de computadores para que uma pessoa interessada obtenha facilmente
ferramentas de invaso na Internet, possibilitando-lhe causar danos a pessoas e organizaes.
Nesse contexto, a Forense Computacional busca a aquisio e compreenso de
evidncias sobre a ocorrncia dos referidos crimes em ambientes computacionais, a fim de
provar sua existncia. Com os resultados de uma anlise forense, possvel fornecer
informaes a processos criminais, para aplicao das medidas legais cabveis, ou mesmo
determinar a causa de incidentes de segurana em empresas, subsidiando a adoo de medidas
corretivas e/ou preventivas nos sistemas e processos utilizados.
No entanto, com o constante aumento da capacidade de dispositivos de
armazenamento, tem se tornado muitas vezes invivel analisar todo o contedo disponvel
para a percia. Atualmente comum lidar com discos rgidos cuja capacidade de
armazenamento pode ser medida em terabytes, o que influencia consideravelmente no tempo,
dificuldade e custo requeridos para a coleta e anlise de todas as evidncias presentes no
disco. Alm disso, muitos sistemas, como os de comrcio eletrnico, no admitem perodos
de indisponibilidade enquanto os dados do disco esto sendo copiados. Por fim, muitos dados
valiosos sobre o que estava acontecendo no sistema, que poderiam fornecer informaes
importantes e contextualizar as evidncias encontradas em disco, podem ser perdidas quando
a mquina desligada.
Nesse sentido, a Live Forensics, ou Forense ao Vivo, busca trabalhar com um
snapshot, ou seja, uma imagem do estado do sistema, tentando obter uma imagem do
ambiente no momento em que ocorreu o incidente. E a memria voltil, que constitui-se como
um dos alvos de anlise da Live Forensics, pode prover informaes importantes, que em
conjunto com a abordagem tradicional da forense resulta em uma anlise mais completa do
cenrio em que ocorreu o incidente.

Diante desse cenrio, em que aes fraudulentas ou criminosas em sistemas


computacionais se tornam cada vez mais freqentes, a importncia da percia forense
computacional se torna cada vez maior para elucidar a ocorrncia de tais aes ilcitas.

1.1. OBJETIVOS

O escopo desse trabalho concentra-se na apresentao dos conceitos, procedimentos e


tcnicas empregadas na percia forense computacional, destacando a importncia da anlise
de dados volteis, obtidos a partir da memria RAM, para uma investigao forense. Para
isso, sero descritos quais os tipos de dados que podem ser recuperados da memria voltil
em sistemas que foram invadidos, a volatilidade das evidncias disponveis, assim como as
tcnicas e ferramentas que podem ser utilizadas para realizar a captura e anlise de dados da
memria RAM.
Sero apresentadas ferramentas e frameworks existentes para anlise forense da
memria principal de um sistema, que podem ser utilizadas visando recuperao de dados e
evidncias relevantes anlise e compreenso do evento. Por fim, pretende-se demonstrar,
atravs de um estudo de caso, a eficcia de ferramentas de forense de memria para a
elucidao de incidentes digitais de segurana.
Os objetivos especficos desse trabalho so:
Dissertar sobre a fundamentao terica da Percia Forense Computacional;
Descrever quais dados pode ser recuperados atravs da captura e anlise da memria
voltil;
Descrever tcnicas e procedimentos para recuperao de dados atravs da forense de
memria;
Analisar ferramentas e frameworks disponveis para a percia da memria voltil.
Apresentar um estudo de caso demonstrando a importncia da anlise de dados
volteis para a percia forense computacional.

1.2. ORGANIZAO

Esse trabalho foi dividido em cinco captulos. O presente captulo faz uma pequena
introduo ao tema proposto, apresenta os objetivos do trabalho, a motivao para seu
desenvolvimento e expe como ele ser estruturado.
No captulo 2 Reviso Bibliogrfica, realizada uma reviso terica, introduzindo
conceitos relacionados a crimes cibernticos, sua definio e cenrio encontrado no Brasil
atualmente. Tambm so abordados procedimentos e metodologias aplicveis percia
forense computacional e discutida a confiabilidade das informaes encontradas em um
sistema sob investigao.
O captulo 3 Percia Forense Computacional: Analisando a Memria Voltil,
aborda a aplicao da percia forense computacional para anlise de contedo obtido a partir
da memria voltil, enumerando que tipo de informao pode ser encontrada na memria
RAM e o quo persistente esses dados podem ser. Discorre sobre o gerenciamento de
memria, tcnicas, procedimentos e ferramentas para realizao de anlise forense da
memria.
O captulo 4 Estudo de Caso exemplifica a utilizao de ferramentas apropriadas
para forense de memria atravs de um estudo de caso, a fim de demonstrar a importncia da
investigao do contedo da memria para a percia forense computacional.
Por fim, o captulo 5 Concluso, realiza consideraes sobre o estudo realizado e
prope a realizao de novos trabalhos na rea.

2.

REVISO BIBLIOGRFICA

No Brasil ainda no h legislao especfica para combater os crimes cibernticos,


tambm denominados de crimes digitais, crimes tecnolgicos, crimes na Internet, cibercrimes,
dentre outras nomenclaturas. O artigo 5 da Constituio Federal de 1988, inciso XXXIX,
estipula que no h crime sem lei anterior que o defina, nem pena sem prvia cominao
legal (BRASIL, 1988). Ento, como ainda no existe tipificao para os crimes cibernticos,
a punio se torna difcil.
Existe, em andamento, um projeto de lei sobre crimes cibernticos amplamente conhecido
e discutido, proposto pelo Senador Eduardo Azeredo em substituio ao Projeto de Lei da
Cmara n 89, de 2003, e Projetos de Lei do Senado n 137 e n 76, de 2000, todos referentes
a crimes na rea de informtica. Porm, enquanto ainda no existe definio e tipificao para
delitos informticos, cometidos com a utilizao de meios de tecnologia e telecomunicaes,
a impunidade prevalece.
Em decorrncia de suas particularidades e natureza jurdica, a definio para crimes
cibernticos complexa. Castro (CASTRO, 2003) prefere cham-los de crimes de
informtica, a fim de englobar todos os crimes que possuem relao com os sistemas de
informtica e no apenas os que tenham relao com a Internet.
Crime de Informtica aquele praticado contra o sistema de informtica ou
atravs deste, compreendendo os crimes praticados contra o computador e
seus acessrios e os perpetrados atravs do computador. Inclui-se neste
conceito os delitos praticados atravs da Internet, pois pressuposto para
acessar a rede a utilizao de um computador. (CASTRO, 2003).

Admite-se essa definio com a ressalva de que para acessar a rede no necessria a
utilizao de um computador, j que atualmente inmeros dispositivos permitem o acesso
Internet, como celulares, smartphones, vdeo games, tablets, etc. Assim, outra definio
citada por Castro, mas proposta por Joo Marcello de Araujo Junior e que mais abrangente
[...] conceitua como sendo uma conduta lesiva, dolosa, a qual no precisa, necessariamente,
corresponder obteno de uma vantagem ilcita, porm praticada, sempre, com a utilizao
de dispositivos habitualmente empregados nas atividades de informtica. (CASTRO, 2003).
Quanto classificao, a mesma autora destaca que podem ser classificados como
prprios e imprprios. Os crimes prprios s podem ser consumados com a utilizao da
5

informtica, enquanto os imprprios podem ser prticos com ou sem o auxlio da informtica,
por se tratarem de condutas j tipificadas e protegidas pela legislao brasileira.
Existem outras classificaes bem aceitas para auxiliar o entendimento de crimes que
envolvem computadores. (HUEBNER, BEM, BEM, 2007) propem a seguinte classificao
em trs categorias:
Crimes centrados em computadores: atividade criminosa que tem como alvo sistemas
computacionais,

redes,

mdias

de

armazenamento

ou

outros

dispositivos

computacionais. Por exemplo, invadir um site comercial e alterar seu contedo.


Podem ser vistos como novos mtodos, promovendo uma nova classe de crimes.
Crimes assistidos por computadores: utilizao de sistemas computacionais como
ferramentas, para auxiliar em uma atividade criminosa em que o uso de computadores
no estritamente necessrio, por exemplo, a pornografia infantil. Podem ser vistos
como novas formas de se cometer crimes convencionais.
Crimes computacionais incidentais: atividade criminosa em que o uso do sistema
computacional incidental, no estando relacionado diretamente atividade criminosa
propriamente dita. Por exemplo, uso do computador para contabilizar e manter
registros de trfico de drogas. Podem ser vistos como a utilizao de novas
ferramentas em substituio s convencionais. No exemplo anterior, um livro de
registros de contabilidade estaria sendo substitudo por um software, como um editor
de planilhas.
Nesse trabalho tambm ser utilizado o termo incidente de segurana, que segundo
(MANDIA, PROSISE, 2003) pode ser definido como qualquer ao fora da lei,
desautorizada ou inaceitvel que envolva um sistema computacional ou uma rede de
computadores. Ainda, de acordo com o autor, essa ao pode incluir qualquer dos eventos a
seguir: roubo de segredos comerciais, correio eletrnico contendo spam ou assdio, intruses
ilegais ou no autorizadas em sistemas computacionais, desfalque, posse ou divulgao de
pornografia infantil, ataques de negao de servio (DoS), extorso, dentre outras aes cuja
evidncia esteja armazenada em mdias digitais, como fraudes, roubos e outros crimes
tradicionais.
Em outras palavras, a RFC 4949, define um incidente de segurana como [...] um evento
de sistema de segurana em que a poltica de segurana do sistema desobedecida ou
violada. (SHIREY, 2007), exaltando a importncia da implantao de polticas para gerir a
segurana de informao.
6

A Figura 2.1 ilustra a dinmica de um incidente digital, apresentando o relacionamento


entre os eventos para casos de ataques e incidentes. Para prevenir ataques deve-se impedir que
o invasor consiga realizar completamente a conexo atravs das sete etapas descritas.

Figura 2.1 Dinmica de um incidente de segurana digital


(HOWARD, 1998).

Grande parte destes eventos, que causam impactos significantes s pessoas e


organizaes, viola de alguma forma as leis e podem ser investigados como crime nas esferas
7

civil e criminal. O combate ao crime ciberntico um problema global, pois no existem


fronteiras no espao ciberntico; os criminosos esto distribudos por todos os lugares e a
cooperao internacional imprescindvel para combat-lo. Muitos esforos nesse sentido j
podem ser vislumbrados, no entanto ainda h um longo caminho a percorrer.
Assim, a percia forense computacional, tambm conhecida como computao forense,
informtica forense ou forense digital, dentre outros termos, tem ganhado importncia cada
vez maior para as autoridades policiais e judicirias, assim como para empresas e
organizaes, medida que utiliza conhecimentos em informtica aliados a tcnicas de
investigao a fim de obter evidncias sobre a ocorrncia de incidentes de segurana em
sistemas computacionais. A forense computacional prope mtodos cientficos para
identificar, coletar, preservar, analisar e documentar evidncias digitais em dispositivos
eletrnicos (FREITAS, 2006). Tem como objetivo primrio determinar a dinmica,
materialidade e autoria de ilcitos ligados rea de informtica, tendo como questo principal
a identificao e o processamento de evidncias digitais em provas materiais de crime, por
meio de mtodos tcnico-cientficos, conferindo-lhe validade probatria em juzo
(ELEUTRIO, MACHADO, 2011).
Outra definio, mais completa, e proposta por (PALMER, 2001) conceitua a Cincia
Forense Computacional como a utilizao de mtodos derivados e comprovados
cientificamente para a preservao, coleta, validao, identificao, anlise, interpretao,
documentao e apresentao de evidncias digitais provenientes de fontes digitais a fim de
facilitar ou promover a reconstruo de eventos considerados criminosos, ou auxiliar a
previso de aes no autorizadas que demonstrarem ser prejudiciais s operaes
planejadas.
Atravs do processo de anlise forense, um analista tem a inteno de reconstituir os
eventos passados para descobrir quem invadiu o sistema, quando o incidente ocorreu, como o
invasor obteve o acesso e conseguiu concretizar a invaso, a quais sistemas teve acesso e o
que fez enquanto teve domnio do ambiente. Vale ressaltar, porm, que to importante quanto
se encontrar os responsveis e buscar uma punio ou compensao litigiosa, o aprendizado
resultante da anlise do problema, que deve ser considerado como meta dos trabalhos forenses
aplicados rea de Segurana da Informao (ROSA, 2004).
Ainda, (FARMER, VENEMA, 2007) definem a forense computacional como o
processo de coleta e anlise de dados de maneira to livre de distoro ou vis que seja
possvel reconstruir os dados ou o que aconteceu no passado no sistema. Sugerem que, para
8

cumprir os mtodos investigativos tradicionais, o investigador deve seguir uma srie de


estgios quando est diante da cena de um incidente (FARMER, VENEMA, 1999):
Proteger e isolar.
Registrar o incidente.
Conduzir uma busca sistemtica por evidncias.
Coletar e manter as evidncias.
Manter cadeia de custdia.

2.1. EVIDNCIAS DIGITAIS

Edmond Locard foi um pioneiro na rea de cincia Forense e formulou um princpio


que bastante difundido e amplamente adotado pela cincia forense, conhecido como
Princpio da Troca de Locard. Este princpio afirma que sempre que dois itens entrarem em
contato haver uma troca de material, o que pode ser traduzido pela conhecida expresso
todo contato deixa um rastro. Fazendo uma analogia ao ambiente envolvido em um
incidente de segurana, sempre haver evidncias na cena do crime; inclusive as deixadas
pelos investigadores durante a realizao de seus trabalhos. Por isso mesmo, importante que
os investigadores documentem rigorosamente todos os procedimentos adotados, assim como
seus resultados previstos, para que os efeitos indesejveis sejam reduzidos ao mnimo
possvel e sempre com resultados previsveis (RODRIGUES, 2007).
Entende-se como evidncia digital qualquer informao de valor probatrio que
armazenada ou transmitida em formato digital (HUEBNER, BEM, BEM, 2007). Exemplos
de evidncias digitais que podem ser encontradas no local em que ocorreu o incidente ou
crime ciberntico so: vestgios de arquivos apagados, fragmentos de arquivos, arquivos
ocultos ou criptografados, registros de impresso e conexo Internet, etc.
A anlise forense de um sistema computacional envolve um ciclo de coleta de dados e
processamento das informaes coletadas. O ideal para o trabalho do perito em forense
computacional seria obter uma cpia exata do sistema, pois quanto mais precisos e completos
os dados forem, mais abrangente poder ser a avaliao. A dificuldade est na obteno de
uma cpia fiel do sistema em questo, pois enquanto a coleta de dados realizada em um
sistema, novas atividades podem estar coexistindo, como programas ou processos de sistema
9

que estejam rodando e causando alteraes no mesmo, destruindo vestgios valiosos. O


simples fato de se executar uma ferramenta para captura dos dados no sistema afetar o seu
estado, tornando-o diferente do momento em que o incidente de segurana ocorreu. Alm
disso, os invasores podem deixar armadilhas para destruir os dados (FARMER, VENEMA,
2007).
Para evitar essas alteraes, a forense computacional tradicional se concentra em
analisar os dados nos sistemas fora de execuo; quando um incidente de segurana
detectado, o sistema desligado e os dados que podem fornecer informaes teis so
copiados (logs de aplicativos, MAC Times, assim como o contedo de arquivos e o que mais
for considerado importante pelo investigador). Em seguida, a anlise feita com base na
cpia dos dados, garantindo que o cenrio original sofra o mnimo de alteraes possvel. No
entanto, ao se desligar ou interromper a energia de um sistema, muitas informaes teis que
poderiam auxiliar na investigao podem ser perdidas, como o que fica armazenado na
memria RAM ou em perifricos, cuja natureza efmera.
Um ramo da rea de Forense Computacional, a Live Forensics prope a coleta de
evidncias no sistema em funcionamento. Desse modo, possvel ter disposio mais
fontes para coletar as evidncias; quando correlacionadas, estas fontes podem auxiliar na
resoluo do problema, principalmente se os dados puderem ser obtidos durante a ocorrncia
do incidente. As informaes devem ser preferencialmente coletadas de acordo com sua
ordem de volatilidade no sistema; alguns dados possuem maior chance de se perderem,
devido natureza dos dispositivos que os armazenam e sua sensibilidade a corrupo
durante uma coleta de dados. Assim, deve ser considerado o ciclo de vida dos dados ao se
realizar uma coleta, para evitar grandes perdas. A tabela 3.1 ilustra o ciclo de vida esperado
dos dados, segundo (FARMER, VENEMA, 2007) e pode ser utilizada como um guia para a
ordem de volatilidade dos diferentes dispositivos de armazenamento.
Tabela 2.1 O ciclo de vida esperado dos dados.

Tipos de Dados
Registradores, memria perifrica, caches, etc.
Memria principal
Estado da rede
Processos em execuo
Disco
Disquetes, mdias de backup, etc.
CD-ROMs, impresses, etc.

Tempo de Vida
Nanossegundos
Dez nanossegundos
Milissegundos
Segundos
Minutos
Anos
Dezenas de anos
10

Uma vez que o sistema foi comprometido, pode haver dvidas quanto confiabilidade
das informaes obtidas. Como ter a certeza de que o investigador est diante de vestgios
autnticos ou invs de resultados manipulados e forados pelo invasor? Ao ter acesso ao
sistema, o invasor pode, por exemplo, ter modificado a sada de comandos do sistema
operacional, de modo que sejam exibidas apenas as informaes que ele deseja. Alvos de
modificao comuns so o Shell, bibliotecas dinmicas, drivers de dispositivos e at mesmo o
kernel. Assim, cada fragmento de informao deve ser cuidadosamente examinado, a fim de
se encontrar possveis inconsistncias. Quanto maior o nmero de fontes de informao, e a
independncia dessas fontes entre si, maior ser a confiabilidade das informaes (FARMER,
VENEMA, 2007).
Para garantir a confiabilidade das informaes encontradas, deve ser tomada uma srie
de cuidados:
Montar kits de ferramentas confiveis que estejam disponveis para uso quando um
incidente ocorrer. Como o ambiente foi invadido, at mesmo os comandos bsicos de
sistema operacional no podem mais ser considerados confiveis, pois podem ter sido
manipulados.
Montar um ambiente de laboratrio, com maior semelhana possvel ao ambiente
original, para auxiliar o procedimento de anlise.
Efetuar a anlise sobre a cpia das mdias originais, a fim de mant-las protegidas.
Utilizar assinaturas criptogrficas para autenticar as cpias.
Manter cadeia de custdia.
No armazenar os dados coletados na mquina sob anlise, pois o sistema no est
confivel. Enviar os dados coletados via rede para outros hospedeiros, utilizando
ferramentas como netcat ou cryptcat.

2.2. DESAFIOS DA FORENSE COMPUTACIONAL

A Cincia Forense Computacional ainda conta com muitos desafios, de ordem tcnica,
social e legal, alguns deles explicitados a seguir, baseado na leitura de (PALMER, 2001) e
(HUBNER, BEM, BEM, 2007):
11

De ordem prtica e tcnica:


Carncia de profissionais treinados, capacitados e com experincia na rea.
Avanos tecnolgicos ocorrendo constante e ininterruptamente. Unidades de disco
rgido simples j alcanaram a capacidade de 1TB (terabytes) em um PC padro.
Esses dispositivos com grande capacidade de armazenamento criam problemas de
ordem prtica, medida que analis-los com as ferramentas disponveis em tempo
hbil, uma tarefa difcil, pois a cpia de dados lenta e a realizao de pesquisas
ainda mais demorada.
Dispositivos de armazenamento com tamanho reduzido podem ser ocultados
facilmente.
Algoritmos de criptografia de dados se tornaram eficientes de tal modo que quebrar
uma senha utilizando o mtodo de fora bruta para ter acesso aos dados cifrados
impraticvel. Para fins de ilustrao, caso uma mensagem tenha sido cifrada utilizando
o padro AES (Advanced Encryption Standard), que possui chave de 128 bits, e o
atacante possua um sistema que tenta um bilho de chaves por segundo, seriam
necessrios

anos para verificar todas as combinaes possveis para a chave.

Ferramentas de criptografia so facilmente obtidas na Internet e distribudas


gratuitamente.
Muitas propriedades e mecanismos de sistemas operacionais ou softwares no so bem
documentadas pelos seus desenvolvedores, gerando dificuldades na anlise do
ambiente.
Muitas vezes os dados de interesse do investigador podem no residir no dispositivo
ao qual ele possui acesso fsico. O armazenamento online se tornou popular e
acessvel, e alguns provedores de servios na Internet j oferecem servio de
armazenamento virtual com criptografia.
A incerteza sobre a acurcia e eficcia das tcnicas utilizadas atualmente gera a
necessidade de manter os dados armazenados por longos perodos, desperdiando
recursos que poderiam ser aplicados na resoluo de outros problemas ao invs de
apenas armazenamento.

12

De ordem legal:
Pouco adianta desenvolver tecnologias extremamente avanadas de anlise forense se
os resultados produzidos no estiverem em conformidade com a lei e, portanto, no
tiverem validade jurdica.
Falta de padronizao de procedimentos, protocolos e terminologia, a fim de unificar a
prtica e fornecer validade legal ao processo.
Muitas vezes os dados de interesse do investigador podem estar armazenados em
outros pases, sob outra jurisdio, e podem ser acessados como se fossem locais. A
cooperao com o sistema jurdico de outros pases pode ser lenta e difcil, mesmo
naqueles que j possuem leis de crimes eletrnicos bem desenvolvidas; geralmente
criam-se regras complexas impedindo a liberao das informaes.
A utilizao da computao em nuvem (cloud computing), que vem se mostrando uma
tendncia de mercado, introduz vrios questionamentos de segurana: Como haver
garantia de privacidade? Onde esto as evidncias? As provas so admissveis nesse
contexto? Qual a jurisdio aplicvel? Nesse cenrio, possvel que o perito no
tenha mais acesso ao ambiente que ser investigado, dificultando a realizao da
percia.
Organizaes criminosas agindo inadvertidamente na Internet.
A coleta e acesso aos dados do sistema para realizao da anlise muitas vezes vai
contra os direitos de privacidade dos usurios.
Estabelecimento e reconhecimento da Forense Computacional como disciplina
cientfica.

2.3. PROCEDIMENTOS

Para assegurar a autenticidade e integridade dos dados obtidos em um processo de


anlise forense, devem existir procedimentos bem definidos, claros e documentados,
garantindo que as provas no foram comprometidas ou alteradas durante o processo de coleta
e enquanto estiveram sob custdia dos peritos envolvidos na investigao. Caso contrrio, as
informaes obtidas no processo forense perdem a validade e podem ser consideradas
ilegtimas. Como todo processo de forense nas outras reas de conhecimento, deve-se garantir
13

que, de posse dos dados, a anlise poder ser refeita por outros peritos e os mesmos resultados
sero obtidos.
Assim, importante destacar que durante todo o processo de anlise forense
necessrio documentar rigorosamente todos os passos seguidos, assim como manter registro
de todas as pessoas envolvidas no processo investigativo que tiveram acesso s informaes
sigilosas, ou seja, deve-se manter cadeia de custdia.
A adoo de mtodos e procedimentos tambm simplifica o processo de coleta,
armazenamento e anlise de evidncias, contribui para dar valor probatrio s evidncias
coletadas e minimiza o impacto e reaes negativas nos casos em que os envolvidos na percia
esto sob forte presso e elevado nvel de estresse, evitando aes errneas que possam
comprometer as evidncias. Os procedimentos para a Forense Computacional devem ser
amplos e generalizados de modo a abranger toda a heterogeneidade de softwares, hardwares e
padres diversos de tecnologia.
A percia forense computacional possui quatro procedimentos bsicos, que
contemplam a identificao, preservao, anlise e apresentao das evidncias (FREITAS,
2006). As tarefas envolvidas no processo de investigao estaro enquadradas nessas fases,
que so detalhadas a seguir e sintetizam as idias expostas at aqui.

Figura 2.2 Procedimentos da percia forense computacional

A figura 2.2 resume os quatro procedimentos da percia forense. O processo


transforma os dados coletados do sistema em evidncias, compondo provas que podem ser
utilizadas para aplicao da lei ou para uso interno em uma organizao. O primeiro contato
14

ocorre quando os dados so coletados. Em seguida, aps serem preservados, as cpias geradas
podem ser utilizadas para anlise, onde os dados so transformados em informao. Por fim,
ocorre a transformao de informao em evidncia, de forma anloga transformao de
conhecimento em ao, podendo ser utilizada com provas judiciais ou recomendaes de
segurana em uma organizao. Os resultados tambm podem servir como conhecimento para
gerao de novas pistas para um caso.

2.3.1. Identificando as Evidncias

Nessa fase o perito deve buscar todas as evidncias possveis, considerando o cenrio
e o tipo de incidente, j que diferentes tipos de crimes geram diferentes tipos de evidncias. A
capacidade de identificao vai depender da habilidade e experincia do perito e do uso de
ferramentas adequadas.
Para encontrar evidncias, o investigador deve identificar quais sistemas foram
afetados, procurar por dispositivos de armazenamento de evidncias, procurar informaes
acerca do acontecimento, como nomes de pessoas, nmeros telefnicos, datas e horrios, alm
de informaes sobre o sistema, como: rever a topologia de rede, identificar conexes de rede
estabelecidas, portas abertas, processos em execuo e etc.
Aps a identificao das fontes de evidncias, preciso realizar a coleta dos dados,
levando-se em conta a prioridade na ordem da coleta, ou seja, deve ser estabelecida uma
ordem na qual os dados devem ser adquiridos, considerando a volatilidade da informao, o
esforo de adquir-la e o seu valor estimado. A RFC 3227 possui orientaes sobre as
melhores prticas de coleta e armazenamento de evidncias que so teis e aplicveis ao
contexto da forense computacional.
O perito deve prezar pela otimizao da coleta de dados, j que no necessrio
coletar tudo que estiver disponvel em um sistema, mas apenas as informaes essenciais e
aplicveis anlise do incidente. Tambm deve minimizar os riscos de corrupo ou
destruio dos dados durante a coleta.
Possveis fontes de evidncias, a serem consideradas pelo perito, so listadas a seguir:
Dispositivos de Armazenamento na CPU - Registradores e cache
Fornecem pouca informao relevante e segundo (WARREN, 2002) a captura dos
dados pode ser considerada impraticvel.
15

Memria Principal
Pode fornecer informaes sobre o sistema operacional e os processos que esto em
execuo, alm de senhas, dados em manipulao que ainda no foram gravados no
disco, vestgios de cdigos maliciosos, textos em claro que esto cifrados no disco,
dados ocultos, etc. Os dados armazenados podem ser capturados atravs de
procedimentos especficos, que sero abordados no prximo captulo.

Memria de Perifricos
Pode fornecer informaes teis que no esto disponveis na memria principal,
como documentos impressos ou enviados por fax, imagens exibidas no monitor, etc.

Discos rgidos e mdias secundrias


Podem fornecer dados sobre os arquivos, assim como prover informaes sobre sua
manipulao (MAC Times) e permitir a recuperao de arquivos apagados. Alm de
informaes sobre os arquivos, pode conter informaes ocultas nas reas que no so
acessveis pelo sistema de arquivos. Normalmente, contm grande parte das
informaes utilizadas pelo perito para a extrao de evidncias.

Mdulos de Kernel
A identificao de mdulos de kernel maliciosos pode sugerir que o invasor carregou
mdulos com alguma finalidade maliciosa, como fornecer recurso indevidamente a um
dispositivo, incorporar nova linguagem de programao, ou alterar as chamadas de
sistema (system calls). Os mdulos maliciosos podem comprometer por completo o
funcionamento normal do sistema operacional, alterando comandos de sistema para
produzir resultados manipulados e esconder as aes do invasor.

Estado do Sistema Operacional


Dados sobre o estado do sistema operacional fornecem vestgios importantes, como
informao sobre processos em execuo e seus privilgios, usurios conectados, data
16

e hora do sistema, aplicativos que esto em funcionamento, em listening, conexes de


rede estabelecidas, status das interfaces de rede, tabelas de rotas, arquivos de
configurao e de logs.

Trfego de Rede
Com a utilizao de analisadores de trfego (sniffers), possvel capturar datagramas
que trafegam na rede e obter informaes sobre as conexes estabelecidas com a
mquina alvo, de modo a estabelecer uma seqncia de eventos e correlacionar com
outras evidncias. Alm disso, logs de IDS, firewall, proxy, roteadores e servidores de
autenticao podem fornecer informaes importantes.

2.3.2.

Preservando as Evidncias

As evidncias devem ser preservadas de modo que no haja dvidas sobre sua
veracidade. Para evitar que sejam comprometidas ou perdidas durante o processo de
investigao, devem ser tomados alguns cuidados:
Duplicao pericial: criar imagens do sistema a ser investigado para que a anlise seja
realizada trabalhando-se apenas com as cpias e mantendo o original como o mnimo
de alteraes.
Todas as evidncias devem ser lacradas e etiquetadas, registrando a data e horrio em
que a evidncia foi coletada, assim como os dados de quem a possui sob custdia.
Gravar as evidncias em mdias que no permitam regravao.
Identificar e anotar todos os componentes do sistema computacional envolvido, para
que o cenrio possa ser recriado em laboratrio.
Manter as evidncias guardadas em cofre, para evitar adulterao.
Manter cadeia de custdia. Deve-se registrar onde, quando e por quem as evidncias
foram coletadas; quem teve acesso s informaes aps a coleta, quanto tempo durou,
quando foi concedido esse acesso e a justificativa para a concesso; quem teve
custdia da evidncia, por qual perodo e como as evidncias foram armazenadas

17

durante o intervalo; como e quando ocorreu a transferncia de custdia, nos casos em


que esta ocorrer.

2.3.3. Analisando as Evidncias

A anlise dos dados depende de trabalho especializado para a coleta e interpretao


das informaes e normalmente a fase mais demorada do processo investigativo. Nessa fase,
o perito vai realizar a reconstruo da cena (quando possvel), fazer a correlao entre eventos
e anlise de todas as evidncias coletadas, a fim de responder as questes que norteiam a
percia forense: identificar quem fez, o que fez, quando fez e como fez. Depois de analisar e
interpretar as evidncias, o perito dever ser capaz de responder a questionamentos que
podem levar ao entendimento do incidente. Todas as atividades executadas nessa fase devem
ser minuciosamente documentadas.
A conduo do processo de anlise est relacionada ao tipo de incidente que o perito
est investigando, pois dependendo do caso, as pistas que ele busca sero diferentes. Por
exemplo, nos casos de pedofilia, os dados de interesse ao perito normalmente so: as
conexes com outros hosts utilizando protocolos de transferncia de arquivos, arquivos de
vdeo e imagem suspeitos, histrico de navegao na Internet exibindo endereos de sites de
pedofilia, servios de correio eletrnico enviando ou recebendo mensagens com anexos
suspeitos, dentre outros vestgios. J no caso de sites de hospedagem de contedo pirata, os
dados de interesse poderiam ser: servidores web ativos com pginas carregadas, conexes web
com requisio para as pginas hospedadas com contedo suspeito. Assim, a experincia do
perito, adquirida em analises anteriores, colabora para agilizar e melhor conduzir o processo
de anlise das evidncias.
A Figura 2.3 apresenta um fluxograma para conduo do processo de anlise das
evidncias. O modelo apresentado serve como referncia e pode ser adaptado de acordo com
as necessidades de cada organizao, mantendo-se os princpios e metodologia geral
apresentados.

18

Incio

Figura 2.3 Fluxograma da fase de anlise das evidncias


Figura adaptada de (DIGITAL, 2007)

19

2.3.4. Apresentao dos Resultados

Por fim, deve ser redigido um laudo pericial apresentando os resultados obtidos pela
investigao de forma clara, organizada, concisa, imparcial e conclusiva. O laudo pericial o
relato do perito aps anlise e correlao das evidncias, resultado de um processo de
avaliao. Consiste na traduo das informaes captadas pelo perito por meio de
conhecimentos especializados e deve estar pautado em aspectos ticos e legais.
No laudo, devem ser anexadas todas as evidncias e demais documentos que fizeram
parte do processo investigativo, buscando comprovar a integridade das informaes atravs
do detalhamento de todos os procedimentos e tcnicas empregados.
Devem constar tambm os materiais que foram analisados pelos peritos, o objetivo do
trabalho de investigao, mtodos e ferramentas que foram utilizados, dentre outras
consideraes especficas. Devem ser fornecidas mdias contendo o contedo que foi
analisado e que contm as evidncias, juntamente com suas assinaturas criptogrficas, a fim
de evitar alteraes. Em conjunto com o laudo, os peritos devem devolver as mdias e
dispositivos originais que foram confiscados no momento do incidente, no mesmo estado em
que foram recebidos.
Embora se deva conservar a terminologia tecnolgica e cientfica em seus relatos, o
laudo deve ser elaborado utilizando linguagem acessvel a quem ele se destina, utilizando
recursos grficos e visuais, se for possvel, para facilitar a compreenso.
Embora conclusivo, o laudo pericial pode ser questionado ou contestado, por isso de
extrema importncia que seja formulado com argumentaes bem embasadas e que a
integridade dos dados seja comprovada. Nele s devem constar afirmaes que podem ser
provadas e demonstradas tcnica e cientificamente.
Quando realizado para fins corporativos, o laudo tambm pode fazer recomendaes
sobre o que deve ser feito para prevenir ou corrigir o problema: alteraes nas polticas de
segurana da empresa, nos procedimentos, processos, ferramentas adotadas, dentre outros.
O Anexo I apresenta um modelo de laudo pericial utilizado pelo Departamento de
Polcia Federal para apresentao dos resultados de seus exames periciais.

20

3.

PERCIA FORENSE COMPUTACIONAL: ANALISANDO

A MEMRIA VOLTIL

Conforme mencionado no captulo anterior, a memria principal, ou memria voltil,


pode conter informaes relevantes para um processo de investigao forense, como senhas,
chaves criptogrficas, vestgios de cdigos maliciosos, informaes de rede e processos,
dentre outros dados. E medida que surgem novos desafios forense computacional, como a
utilizao de criptografia em discos rgidos e a disseminao de malwares que residem
exclusivamente na memria, tornou-se mais importante ir alm da forense tradicional e
desenvolver habilidades para examinar tambm os vestgios obtidos atravs da captura e
anlise da memria principal. Para realizar esse tipo de anlise, o perito deve atualizar
constantemente os seus conhecimentos, uma vez que a rea de informtica bastante
dinmica e os avanos so rpidos.
A memria principal de um computador, a memria RAM, por natureza considerada
um dispositivo de armazenamento de dados voltil, pois bastante provvel que estes sejam
perdidos quando a mquina for reiniciada ou que sejam sobrescritos enquanto a mquina
estiver em funcionamento com suas atividades padro. Porm, muitas informaes advindas
desses dados volteis, que s podem ser recuperadas atravs da memria, so de grande
importncia para a conduo de um processo investigativo. Segundo (AMARI, 2009), a
anlise de qualquer memria voltil menos precisa do que a do disco rgido, j que estes
possuem uma estrutura pr-definida e conhecida pelos peritos, que baseados nisso sabem onde
devem buscar determinados tipos de informaes em um sistema de arquivos. Ao contrrio, a
memria, pode ser alocada e desalocada de acordo com a necessidade de sua utilizao, sendo
impossvel prever o que ir encontrar na memria voltil ou onde estar armazenado.
Embora a coleta de informaes especficas da memria voltil, sobre conexes de
rede ou processos em execuo, por exemplo, seja conhecida h algum tempo e
extensivamente discutida, a questo da coleta, manipulao e anlise de todo o contedo da
memria fsica um esforo relativamente novo, pelo menos do ponto de vista pblico
(CARVEY, 2007).
Nesse captulo sero expostas tcnicas, procedimentos e ferramentas para a coleta e
anlise de dados da memria principal, assim como os dados que podem ser obtidos atravs
do dump (cpia dos dados) da memria. No se pretende aqui abordar todas as tcnicas e
21

ferramentas existentes e possveis, mas destacar a importncia delas, apresentando as mais


utilizadas atualmente e incentivar a sua aplicao, assim como o aprimoramento e
desenvolvimento de novas ferramentas especficas que facilitem, complementem e estendam
esse tipo de anlise.

3.1. A MEMRIA VOLTIL

Considerando a arquitetura de um computador de uso geral, todo programa e dado


precisa ser armazenado temporariamente na memria principal (RAM) para que seja
executado ou processado pela CPU, devendo permanecer na memria principal apenas
enquanto o processamento dos dados for necessrio. Assim, quando um programa gravado em
mdias de armazenamento, como o disco rgido, precisa ser executado, ele carregado em
uma rea da memria RAM e fica disponvel para processamento; quando finalizado, a rea
alocada para esse programa na memria pode ser liberada, fornecendo espao para a execuo
de outros programas e processos. Diferentemente disso, as arquiteturas de propsito especial,
como de PDAs e celulares, normalmente armazenam os programas e dados em posies de
memria diretamente endereveis, ento no h necessidade de serem copiados para a
memria principal a fim de serem processados (FARMER,VENEMA, 2007). Porm, as
idias propostas neste trabalho se baseiam na arquitetura de mquinas de uso geral, na qual os
dados so armazenados na memria principal para que haja acesso rpido pelo processador.
Esse tipo de memria (RAM) possui natureza voltil, devido rapidez com que os
dados se perdem quando ocorre a realocao das reas da memria. Segundo a literatura,
quando o computador desligado, seu contedo perdido; no entanto, essa informao j foi
questionada em estudos de caso. De acordo com o trabalho realizado por (LISITA, MOURA,
PINTO, 2009), em que foi questionada a persistncia dos dados na memria voltil, mesmo
aps a interrupo de energia, mostrou-se que ainda possvel encontrar resqucios de dados
na memria voltil. Segundo os autores, aps a realizao de testes no sistema operacional
Linux (Slackware kernel 2.6.24.5-smp), foi possvel identificar resqucios de dados antigos na
memria aps o reboot da mquina. Nesse mesmo teste, no foi possvel identificar vestgios
no sistema operacional Windows XP SP2, pois a memria provavelmente foi limpa no boot
posterior ao desligamento do sistema.

22

O gerenciamento de memria, funo desempenhada pelo sistema operacional,


responsvel pela organizao da memria e pelas estratgias de gerenciamento, alocao de
espao e interao da memria com dispositivos. o gerenciador de memria que determina
como as reas da memria devem ser alocadas para os processos sob condies de restrio
de espao, estabelecendo as prioridades de acordo com a necessidade, e tambm gerencia
como a memria pode ser utilizada pelos processos de sistema.
Segundo (FARMER, VENEMA, 2007) podem residir nas pginas de memria dois
tipos de dados bsicos fora os do kernel: dados lidos de arquivos e dados de pginas
annimas, sendo que as pginas annimas contm informaes sobre o estado dos processos:
o heap, a pilha, se esto ou no em execuo, etc. Cabe ao gerenciador de memria virtual
decidir se determinada pgina de memria ser armazenada em um arquivo (memria virtual
ou secundria), na memria principal ou no espao de troca (swapping). Depois que um
arquivo lido na memria principal, seus dados permanecem ali por um tempo, dependendo
do grau de atividade do computador, sendo que as pginas de memria annimas tendem a ser
mais volteis que os dados de arquivos. Assim, dependendo do tipo de dado armazenado,
alguns so mais propensos a serem paginados ou sobrescritos, caso o sistema operacional
precise alocar espao na memria para armazenar outros processos ou dados.
No Windows, os dados e mtodos de manipulao utilizados pelo kernel,
denominados de objetos, possuem um OBJECT_HEADER, que consiste em uma estrutura
com informaes sobre o objeto armazenado. O kernel trabalha com dois conjuntos de
memria, e escolhe entre duas formas para armazenar um objeto na memria: utilizando o
espao de paginao (paged pool) ou o espao no paginvel (non-paged pool). A maioria dos
dados ser armazenada na rea paginvel, enquanto os objetos mais importantes, que
precisam ser acessados pelo kernel com maior freqncia, sero armazenados no espao no
paginvel. Os dados paginados so passveis de serem armazenados em arquivos no disco
rgido, caso a memria principal esteja com pouco espao disponvel. No entanto, processos e
threads, que so acessados com freqncia e possuem considervel importncia para o
sistema operacional, so armazenados fora do espao de paginao, garantindo que estaro
armazenados na memria principal. Por isso, possvel obter informaes sobre todos os
processos que estavam em execuo no momento em que a imagem da memria capturada
para a anlise forense (AMARI, 2009).
Ainda no Windows, existe uma estrutura que armazena informaes sobre os
processos, o Virtual Address Descriptor (VAD), descrevendo qual a rea de memria
23

utilizada pelos processos que esto em execuo, alm de outras informaes relacionadas a
cada um. Dessa forma possvel reconstruir o espao de endereamento virtual de um
processo e recuperar arquivos relacionados a ele que estejam mapeados na memria (van
Baar, Alink, van Ballegooij, 2008).

3.2. DADOS ENCONTRADOS NA MEMRIA VOLTIL

Existe uma grande diversidade de dados disponveis na memria principal, ou


memria voltil, de um sistema. Informaes de rede, informaes sobre processos, arquivos
abertos e chaves de registro (registry), dados ocultos, bibliotecas e mdulos carregados pelo
sistema operacional, dentre outros. Nessa seo sero apresentados os principais tipos de
dados que podem ser capturados da memria principal e que podem ser teis para o processo
de percia forense baseado em contedo obtido na memria.

3.2.1. Processos

Podem ser encontradas na memria informaes sobre os processos que estavam em


execuo no momento da captura, assim como sobre os processos ocultos e processos j
finalizados, caso a rea de memria que estes ltimos ocupavam no tenha sido realocada
aps sua finalizao. Por exemplo, podem ser encontradas bibliotecas carregadas por
determinado processo e/ou sua memria enderevel.

3.2.2. Arquivos abertos e Contedo do Registro do Windows (Registry)

Verificar quais arquivos foram abertos por determinado processo pode ser muito til
em uma investigao, pois possvel estabelecer quais as atividades associadas a este
processo. No caso de um malware instalado na mquina, por exemplo, encontrar os arquivos
associados ao processo em execuo pode levar descoberta do cdigo malicioso armazenado
no disco, que tipo de sada est sendo produzida e onde os dados esto sendo gravados, ou
quais arquivos pr-existentes foram removidos e modificados. Tambm possvel determinar

24

quais as chaves de registro (registry keys) que determinado processo estava acessando atravs
da anlise forense da memria.
Em sistemas UNIX, a estrutura de inodes prov informaes sobre os arquivos
mapeados na memria, como permisses de acesso, identificao dos donos do arquivo, data
e horrio do ltimo acesso e da ltima alterao, tamanho e ponteiros para o arquivo.

3.2.3. Informaes de rede

As informaes sobre as conexes de rede geralmente representam um dos dados mais


crticos e importantes para a conduo da investigao. Podem ser encontradas informaes
sobre as conexes estabelecidas, principalmente IPs e portas em listening. A obteno desses
dados a partir do dump da memria importante porque como o sistema est sob suspeita
aps a invaso, ferramentas bsicas que forneceriam esses dados, como o netstat, no so
mais confiveis, podem ter sido manipuladas pelo invasor para exibirem resultados diferentes.
Assim, utilizando as informaes coletadas diretamente da memria menos provvel que o
invasor oculte os dados de interesse do investigador.

3.2.4. Senhas e Chaves Criptogrficas

Uma das grandes vantagens da forense em memria a possibilidade de encontrar


senhas e chaves criptogrficas para decifrar contedos que esto criptografados no disco ou
ter acesso a arquivos protegidos por senha e contas de correio eletrnico ou de mensagens
instantneas, por exemplo. Dificilmente senhas e chaves criptogrficas poderiam ser obtidas
atravs de anlise do disco rgido, pois em geral so armazenadas com algum tipo de
proteo. Atravs da coleta dos dados em memria, no entanto, possvel obt-lo, pois ao
utilizar a senha o usurio precisa digit-la e inevitavelmente ela ser armazenada na memria,
permanecendo ali at que essa rea de dados seja reutilizada e seus dados sobrescritos.

25

3.2.5. Contedo decifrado

Caso no seja possvel recuperar as senhas e chaves criptogrficas na memria, esta


outra forma de se obter acesso aos dados cifrados no disco. Quando um arquivo criptografado
acessado, seu contedo ento decifrado e carregado na memria, podendo permanecer nela
armazenado mesmo depois que tiver sido fechado, desde que a rea de memria no seja
realocada e os dados sobrescritos. Assim, possvel recuperar todo o contedo dos arquivos
ou ainda alguns fragmentos teis.

3.2.6. Dados Ocultos

possvel que o invasor armazene dados que deseja esconder na memria ao invs do
disco rgido, pois a chance de serem descobertos menor, j que a anlise da memria
menos freqente que o exame do disco rgido. Para o invasor, mais seguro ocultar esses
dados na memria, porque sua eliminao tambm mais simples, bastando, por exemplo,
reiniciar a mquina da qual j possui controle.

3.2.7. Cdigos Maliciosos

Alm de poder ocultar na memria arquivos e informaes sensveis que deseja


proteger, o invasor pode executar cdigos maliciosos, como rootkits, que residem
exclusivamente na memria. Assim, o cdigo contendo as instrues e atividades maliciosas
no fica disponvel com facilidade para o investigador, dificultando seu trabalho e uma
possvel engenharia reversa. Essa tcnica, de utilizar a memria ao invs do disco para
armazenar malwares tem crescido significativamente, pois os antivrus e ferramentas de
deteco de malwares no so to eficazes na deteco de cdigos maliciosos na memria
voltil quanto o so no disco; alguns nem possuem essa funcionalidade.

Enquanto um programa est em execuo, sabe-se que pelo menos parte dele estar
residindo na memria. Porm, quando sua execuo finalizada e a rea de memria que este
ocupava desalocada, no se sabe por quanto tempo os dados persistem ali, devido a uma
26

srie de fatores que tornam o ciclo de vida desses dados no previsvel, como o tipo de
sistema operacional, nvel de atividade do sistema e quantidade de memria disponvel.
Mesmo tendo conhecimento de quais dados possvel extrair da memria, no
possvel medir ao certo a sua persistncia na memria, nem mesmo ter a certeza de quanto
tempo os dados que foram encontrados j estavam ali. Como cada kernel e seu gerenciador de
memria possui implementao prpria, obter metadados associados a tempo sobre a
memria no uma tarefa simples, ao contrrio de uma anlise utilizando MAC Times, por
exemplo, que pode prover informaes temporais sobre os dados no sistema de arquivos.
Alguns sistemas computacionais, independentemente do sistema operacional, quando
so reinicializados apagam os dados anteriores da memria principal. Pode ser importante
levar em considerao esta particularidade ao capturar os dados, para se vislumbrar a
potencial longevidade dos dados que esto na memria.
Conforme citado anteriormente, estudos j questionaram a volatilidade da memria
principal e mostraram que possvel recuperar dados nela presentes durante o funcionamento
do sistema, dependendo da intensidade de utilizao da memria e realocao de suas
pginas, ou at mesmo aps a sua reinicializao.

3.3. TCNICAS PARA ANLISE FORENSE DA MEMRIA

Para viabilizar a anlise forense baseada na memria RAM, necessrio que o perito
conhea bem procedimentos distintos para coleta de dados, assim como tcnicas para anlise
do contedo obtido. Nesse captulo sero discutidos procedimentos e tcnicas para a forense
de memria, assim como sero apresentadas ferramentas para a aquisio e anlise dos dados
existentes da memria voltil.

3.3.1. Recuperao de Arquivos Mapeados em Memria

No sistema operacional Windows, a estrutura EPROCESS concentra dados sobre


todos os processos, incluindo informaes sobre seus atributos e ponteiros para outros objetos
e estruturas de dados que so relacionados a ele. A estrutura EPROCESS contm o bloco
process environment (PEB), que contm dados carregados pelo processo, como mdulos e
27

arquivos, o que pode ser muito til na anlise de malwares e rootkits. O PEB tambm exibe
onde reside a imagem dos executveis, caminhos das DLLs e as linhas de comando utilizadas
para execuo do processo.
O PEB possui ponteiros para a raiz da rvore de descritores VAD (Virtual Address
Descriptor), uma estrutura que armazena informaes sobre os processos, descrevendo qual
a rea de memria utilizada pelos processos que esto em execuo, alm de outras
informaes relacionadas a cada um. Com base nessa estrutura possvel reconstruir o espao
de endereamento virtual de um processo e recuperar arquivos relacionados a ele que estejam
mapeados na memria.
A Figura 3.1 mostra a representao visual da estrutura VAD tree. Como pode ser
visto, o mapeamento de arquivos utiliza diferentes estruturas de dados. A figura apresenta as
ligaes estabelecidas entre essas estruturas de memria e exibe informaes sobre os
arquivos mapeados em memria. As linhas pontilhadas indicam ponteiros que so apagados
quando um processo finalizado.
Uma das estruturas da rvore VAD, denominada Object Table lista os objetos privados
que esto em uso por um processo: arquivos, chaves de registro (registry keys) ou eventos. Os
arquivos mapeados em memria associados com cada processo podem ser recuperados
percorrendo a estrutura da rvore VAD e encontrando os objetos de interesse. Tal como
acontece com os processos que foram finalizados, arquivos que foram fechados permanecem
na memria, apesar no serem elencados nas listas mantidas pelo sistema operacional, e assim
devem ser recuperados atravs de mtodos alternativos. O processo de reconstruo de tais
arquivos similar ao de reconstruir arquivos que foram removidos de um disco rgido,
embora o processo seja mais complexo com a memria, pelo fato desta ser mais fragmentada.
Geralmente, observando a estrutura Page Table possvel recuperar estes arquivos mesmo
que no estejam ativos na memria. A rea da memria denominada Control Area mantm os
vnculos entre nomes de arquivos e seus dados que foram armazenados nas pginas de
memria. Caso esta rea ainda esteja presente, possvel recuperar tambm o nome do
arquivo (AMARI, 2009).

28

Figura 3.1 - Representao visual da rvore de descritores: VAD tree.


(van Baar, Alink, van Ballegooij, 2008).

3.3.2. Recuperao de Arquivos Atravs de Assinatura

Outra tcnica, mais antiga e menos confivel, mas bastante utilizada para se recuperar
arquivos na memria conhecida como Data Carving ou File Carving. Essa tcnica se baseia
no fato de que cada tipo de arquivo tem uma assinatura diferente, que se refere a determinados
padres de valores que so nicos para aquele tipo de arquivo. Assim, arquivos do tipo zip, ou
com extenses doc e jpeg, por exemplo, tero assinaturas prprias, constituindo padres
nicos. O processo de escavao de dados, buscando pela assinatura, pode ser realizado
linearmente na imagem da memria; se realizado desta forma, arquivos contguos podem ser
recuperados, mas fragmentos de arquivos no. Porm, existem algoritmos de data carving
complexos que so capazes de recuperar arquivos fragmentados utilizando as estruturas que
os descrevem internamente com maior profundidade.
29

Essa tcnica tambm pode ser utilizada para recuperao em discos rgidos, inclusive
com maior xito que em dumps de memria, pois normalmente os sistemas operacionais
buscam no fragmentar os arquivos no disco. Assim, como comum que apenas partes de um
arquivo sejam carregadas na memria, ao invs dele inteiro, mesmo que seja utilizado um
algoritmo eficiente, possvel que as partes que o compem e que so de interesse do
investigador no sejam encontradas, impedindo sua recuperao.
Embora seja uma tcnica que nem sempre garante resultados satisfatrios,
importante que seja considerada e faa parte do kit de ferramentas de um perito forense.

3.3.3. Deteco e Recuperao de Dados Escondidos

importante levar em considerao que as tcnicas apresentadas anteriormente, apesar


de serem teis e auxiliar no processo de recuperao, no se aplicam a todos os processos e
threads. Quando um processo finalizado ou ocultado pelo sistema operacional, a estrutura
de dados que definia aquele processo no far mais parte da rvore VAD e demais listagens
que o sistema operacional mantm para controlar o que est em execuo.
No entanto, processos e threads encerrados, ou arquivos fechados, podem ser de
grande importncia ao investigador, j que podem estar relacionados ao incidente, mas terem
sido finalizados antes que o material para anlise fosse coletado. Um invasor pode utilizar
manipulao direta de objetos do kernel (DKOM) para remoo de processos suspeitos ou
outros tipos de objetos das listas e tabelas que o kernel utiliza para control-los, ocultando
esses objetos da API do Windows e tornando as tcnicas apresentadas nas sees anteriores
ineficientes. Dessa forma, importante desenvolver mtodos que no dependam das
estruturas de dados utilizadas pelo sistema operacional.
Conforme (AMARI, 2009), todos os tipos de objetos possuem padres relacionados a
eles, como exemplo, o cabealho de cada processo vai possuir constantes que sero as
mesmas para cada processo encontrado na memria. Assim, para encontrar processos no
referenciados nas estruturas de dados do sistema operacional, necessrio buscar por toda a
imagem da memria pelos valores dessas constantes, utilizando-os como guia no processo de
busca. Existem atualmente ferramentas que efetuam essa busca de forma automatizada para
alguns objetos comuns como processos e arquivos. Algumas caractersticas exploradas por
essas ferramentas para encontrar processos escondidos so explicadas por (AMARI, 2009): na
estrutura EPROCESS, o ponteiro DirectoryTableBase aponta para o incio de estruturas,
30

ento pode ser utilizado para percorrer a informao a fim de encontrar partes importantes e
checar com a assinatura previamente mapeada de um processo. Outra checagem o valor
da PageDirectorytable, que deve ser diferente de zero.
Cada processo requer, no mnimo, uma thread; as threads so armazenadas em uma
estrutura que basicamente outra lista de vnculos, semelhante ao que ocorre com os
processos, e fica armazenada no espao de kernel da memria. Dois ponteiros,
ThreadListHead.Flink e ThreadListHead.Blink, so verificados para se confirmar que
apontam para um endereo maior que 0x7fffffff, o que significa que devem apontar para o
espao do kernel na memria.
H tambm outras verificaes importantes que podem ser realizadas, para se verificar
a probabilidade de que os objetos em memria sejam processos ocultos.

3.4. EXTRAO DE DADOS DA MEMRIA VOLTIL

Existe uma diversidade de mtodos que podem ser utilizados para fazer a aquisio
dos dados presentes na memria, alguns deles baseados em hardware e outros em software. A
seguir sero apresentados os principais mtodos utilizados para extrao dos dados e alguns
aspectos tcnicos associados. Tendo conhecimento das opes, o perito pode eleger a que
mais se adequa ao sistema alvo e ao caso que est investigando e assim agir com maior
prudncia.

3.4.1. Hardware

Existem dispositivos que possibilitam a captura do contedo da memria RAM. Eles


so normalmente utilizados para depurar problemas de hardware, mas tambm podem ser
utilizados para anlise forense. O dispositivo Tribble, um carto PCI, foi desenvolvido
especialmente para a prtica forense no ano 2004.
Outra soluo baseada em hardware, que pode ser vivel em sistemas que disponham
de portas do tipo firewire, baseia-se no acesso direto memria (DMA), sem utilizao do
processador. Nesse caso, o mapeamento da memria executado diretamente em hardware,
de forma independente do sistema operacional. Dispositivos firewire podem ler a memria
31

com velocidades superiores aos sistemas que no utilizam DMA (Direct Memory Access) e,
alm disso, no enfrentam o problema de algumas verses do Windows que no permitem que
a memria seja acessada em modo usurio. No entanto, no h garantia de que a coleta via
dispositivos firewire ser bem sucedida, pois a memria pode no ser completamente copiada
ou o sistema pode travar durante o processo de aquisio.
A vantagem em se realizar a coleta utilizando solues baseadas em hardware que
esse procedimento menos intrusivo para o sistema. Em uma abordagem com software
preciso rodar um programa que carrega dados na memria, o que pode sobrescrever dados de
interesse que nela esto armazenados. Dependendo da forma em que o software foi
concebido, ele pode precisar utilizar bibliotecas disponveis no sistema operacional, que
podem ter sido manipuladas pelo invasor e no fornecer resultados confiveis. J em uma
coleta efetuada com hardware no so carregados programas no sistema, tornando o contedo
obtido mais confivel e fiel ao original.
As solues baseadas em hardware so opes interessantes principalmente quando o
sistema est bloqueado ou quando a possibilidade de alterao e contaminao do sistema
inaceitvel. A desvantagem que o hardware precisa ser instalado previamente ao incidente,
devido necessidade de reinicializao do sistema, e esse tipo de soluo possui custos mais
elevados.

3.4.2. Crash Dumps

A anlise de crash dumps outra forma de se obter informaes sobre o contedo da


memria RAM. Diferentemente de outros mtodos de coleta baseados em software, a imagem
obtida a partir de um crash dump uma cpia inalterada do contedo da memria de um
sistema no momento em que ocorreu o crash. Isso ocorre porque quando o crash dump
ocorre, o estado do sistema congelado e o contedo da RAM gravado em um arquivo de
paginao, para posteriormente ser escrito no disco, em um arquivo com tamanho igual ao da
memria fsica. Assim, o arquivo de paginao deve ser configurado para ser igual ao
tamanho da memria mais 1MB (megabyte) para o cabealho e deve haver espao em disco
suficiente para gravar um arquivo do tamanho da memria.
No necessrio instalar nenhum software no sistema para realizar a coleta, e
conseqentemente no h alterao do contedo da memria, mas como h gravao de
arquivo no disco, outros vestgios podem acabar sendo destrudos. A desvantagem desse
32

mtodo que os crash dumps ocorrem apenas quando h falhas no sistema. possvel induzir
um crash dump; no entanto, no Windows, isso requer alterao em uma chave do registro
(registry key) e reinicializao do sistema, ou seja, o ambiente j deve estar preparado para
essa possibilidade antes do incidente, caso contrrio, no ser vlido para a realizao da
coleta do contedo da memria. A Microsoft fornece ferramentas para anlise de crash
dumps.
Mesmo com as particularidades acima descritas, interessante que o perito tenha
familiaridade com a anlise de crash dumps, pois estes podem fornecer informaes
relevantes. Os sistemas operacionais da famlia Windows permitem gerar trs tipos de crash
dumps: pequeno, kernel e completo. O crash dump completo o que contm todo o contedo
da RAM, mas nem todas as verses de Windows permitem gerar um crash dump completo. O
Windows 2003 permite, mas o Windows Vista e Windows 2008 Server no permitem crash
dumps completos em sistemas com mais de 4GB (gigabytes) de memria.

3.4.3. Dumps

Existem diversos programas utilitrios que possibilitam a aquisio da imagem da


memria de um sistema, alguns sero descritos no captulo 3.5 deste trabalho. Essas
ferramentas fazem a leitura da memria bit-a-bit e copiam seu contedo para um arquivo, o
dump da memria. Esse arquivo ter o mesmo tamanho da memria fsica do sistema.
O que deve ser levado em conta, independente da ferramenta que est sendo utilizada,
que, como atesta o Princpio da Troca de Locard, quando um programa de aquisio de
dump executado, ele deve ser carregado na memria, significando ele deixar vestgios, e
que algum espao da memria que poderia conter informaes valiosas ser utilizado,
podendo acarretar inclusive a movimentao da rea ocupada por processos para arquivos de
paginao. Alm disso, enquanto a ferramenta est lendo o contedo da memria, o estado do
sistema no fica congelado, significando que enquanto algumas pginas esto sendo copiadas,
outras podem estar sendo alteradas, caso o processo que a utilize ainda esteja rodando, por
exemplo. O que vai definir o tempo gasto para coletar a imagem so fatores como a
velocidade do processador, taxas de barramento e operaes de entrada e sada do disco.
Apesar de no garantirem uma cpia fiel da memria, pois o sistema permanece em
alterao, a grande vantagem de utilizar ferramentas de dump que o sistema no precisa ser
desligado ou reiniciado, no h restrio sobre onde a imagem gerada deve ser armazenada
33

(localmente ou em outro host da rede, utilizando netcat) e existem ferramentas disponveis


gratuitamente para realizar anlise dos dumps gerados.
Este o mtodo mais utilizado atualmente pelos peritos em forense computacional
para aquisio do contedo da RAM.

3.4.4. Virtualizao

Adicionalmente, nos casos em que utilizada a virtualizao, com softwares como


VMWare, um produto bastante popular, possvel suspender a sesso do sistema operacional
que est em execuo, mantendo-a congelada temporariamente. E quando a sesso
congelada, o contedo da memria gravado em um arquivo cujo formato semelhante a um
dump de memria, e que pode posteriormente ser analisado.

3.4.5. Hibernao

Quando um sistema Windows entra em modo de Hibernao, o contedo da


memria comprimido e salvo em um arquivo chamado Hiberfil.sys. A compresso do
contedo se d para minimizar operaes de entrada e sada do disco, e a anlise deste arquivo
pode fornecer informaes sobre o que estava acontecendo no sistema no momento em que
ele entrou em hibernao.

Durante as fases da investigao, possvel que o perito se depare com uma situao
em que no seja necessrio coletar todo o contedo da RAM, bastando-lhe ter acesso ao
contedo da memria utilizado por determinado processo. Existem ferramentas disponveis
para coletar apenas o contedo da memria relacionado a um processo, assim como
informaes adicionais a seu respeito (mdulos carregados, arquivos abertos, etc). Essas
ferramentas no se restringem a coletar apenas a memria fsica utilizada pelo processo, mas
tambm a memria virtual, nos arquivos de paginao. Porm, so aplicveis apenas aos
processos que so visveis e considerados como ativos pelo sistema operacional; processos
ocultados por rootkits, por exemplo, no podem ser analisados com essas ferramentas
especficas.
34

3.5. FERRAMENTAS

PARA

AQUISIO

DE

CONTEDO

DA

MEMRIA RAM

Neste tpico sero apresentadas ferramentas comerciais e gratuitas que podem ser
utilizadas para se realizar a aquisio de memria em sistemas operacionais Windows. A
inteno no cobrir todas as possibilidades existentes, mas apresentar as ferramentas mais
utilizadas pelos profissionais da rea de forense computacional.

3.5.1. DD

Uma ferramenta bastante popular e considerada por muito tempo padro na rea de
forense computacional, o DD (data dumper), foi desenvolvida inicialmente para sistemas
Unix, no exclusivamente para possibilitar o dump da memria, mas tambm para realizar
cpias de discos rgidos, dentre outras funes como a gerao de hashes criptogrficos.
Posteriormente, o DD foi adaptado para rodar sob sistemas operacionais Windows,
permitindo coletar o contedo da memria RAM atravs do acesso ao dispositivo
\Device\PhysicalMemory em modo usurio. No entanto, nas verses mais recentes do
Windows, que vieram aps o Windows 2003 SP1, o acesso a determinadas reas da memria
foi limitado e ento somente os kernel drivers conseguem realizar o dump, tornando a
ferramenta inadequada para essa finalidade em sistemas Windows. Nas verses mais recentes
do DD, o device \\.\PhysicalMemory j no vem mais habilitado.

3.5.2. Mandiant Memoryze

Mandiant Memoryze um software gratuito de forense de memria que pode ser


utilizado tanto para a aquisio quanto para a anlise de imagens de memria. capaz de
realizar o dump de todo o espao fsico de memria, independente de APIs do Windows, ou
apenas do espao enderevel por um processo no disco. Tambm permite obter a imagem de
um driver especfico ou mesmo todos os drivers carregados na memria. A ferramenta
permite enumerar todos os processos em execuo e identificar mdulos do kernel presentes
na memria.
35

3.5.3. ManTech Memory DD

ManTech Memory DD um software open source, disponibilizado sob licena GPL


para uso governamental ou particular. capaz de adquirir imagens de memria e armazenar
em arquivos binrios em formato raw, que ento devem ser analisados por outras ferramentas.
Para auxiliar na verificao da integridade dos dados e preservao das evidncias, utilizado
o algoritmo de hash MD5. A ferramenta permite copiar at 4GB de memria em um arquivo
de dump para anlise posterior e no precisa ser instalada no sistema, podendo ser executado a
partir de mdias removveis.

3.5.4. FastDump

FastDump uma ferramenta gratuita especialmente voltada para o estudo de malwares


que auxilia o investigador a entender o funcionamento de executveis. A ferramenta gera um
arquivo binrio contendo a imagem da memria RAM, que vai depender do tamanho da
memria presente no sistema. Suporta apenas aquisio em sistemas 32 bits de at 4GB de
memria RAM, no suportando o Windows Vista, Windows 2003 e Windows 2008. Possui
uma verso comercial, o FDPro, que suporta todas as verses de Windows, 32 e 64 bits, em
sistemas com at 64BG de RAM.

3.5.5. KntDD

KntDD uma ferramenta de aquisio de memria que faz parte da sute KntTools.
Foi desenvolvido visando driblar a restrio de acesso memria fsica (\\.\PhysicalMemory)
em modo usurio existente nas verses mais recentes do sistema operacional Windows.
Atravs dessa ferramenta possvel adquirir imagens em um disco removvel local ou atravs
da rede, nos sistemas com Windows 2000 ou verses posteriores. Ela tambm permite
converter imagens em formato raw para o formato de crash dumps Microsoft, de forma que
os dados possam ser analisados utilizando o Microsoft Debugging Tools.
Essa ferramenta disponibilizada apenas para autoridades da lei ou profissionais de
segurana.

36

3.5.6. MoonSols Windows Memory Toolkit

MoonSols Windows Memory Toolkit um conjunto de ferramentas voltadas para


forense de memria em Windows. Os utilitrios Win32dd e Win64dd, considerados como um
dos melhores utilitrios para dump de memria pelos profissionais da rea, fazem parte do
grupo de ferramentas disponibilizados por esta sute, possibilitando a aquisio de memria
em formato raw, crash dumps Microsoft, arquivos de hibernao do Windows, e imagens de
VMWare. Alm dos utilitrios para realizao de dump da memria, tambm so
disponibilizados outros utilitrios para converso da imagem adquirida para diversos formatos
distintos de dump.
Uma funcionalidade muito importante que a ferramenta torna possvel a converso
de todos os dumps de memria fsica no Windows para o mesmo formato dos crash dumps
Microsoft, que podem ento ser analisados com a ferramenta Microsoft Windows Debugger
(WinDbg), uma ferramenta importante para a anlise de memria RAM.
Possui duas verses: Community Version e Professional Version, sendo a primeira
gratuita e a segunda comercial, contemplando algumas funcionalidades adicionais como o uso
dos utilitrios Win32dd e Win64dd em scripts/batchs.

3.5.7. Nigilant32

Nigilant32 uma ferramenta desenvolvida pela Agile Risk Management que permite
ao investigador visualizar a imagem de um disco rgido ou da memria e obter informaes
sobre os processos que esto em execuo e das portas que esto abertas no sistema. Essa
ferramenta causa alteraes relativamente pequenas no sistema, pois utiliza menos de 1MB
(megabyte) da memria quando carregado, minimizando assim o impacto causado pelo
processo de aquisio. A verso disponibilizada atualmente beta, e o software pode ser
baixado e utilizado gratuitamente.

3.5.8. FTK Imager

FTK Imager uma ferramenta gratuita disponibilizada pela Access Data para
aquisio de imagens forenses. A ferramenta permite criar, principalmente, imagens de discos
37

rgidos em vrios formatos, assim como a captura de arquivos bloqueados pelo sistema. Mas
tambm possibilita a aquisio de dumps da memria RAM e anlise de imagens forenses.

3.5.9. Winen.exe

Winen.exe uma ferramenta de aquisio de memria RAM que faz parte do software
de anlise forense comercial Encase Forensic, considerado padro e amplamente adotado no
mercado. O executvel pode ser rodado atravs de linha de comando ou arquivo de
configurao. possvel execut-lo atravs de um dispositivo USB conectado ao sistema alvo
e o contedo coletado da RAM salvo em um arquivo com extenso .E01. Existem as verses
32-bits e 64-bits.

3.6. FERRAMENTAS PARA ANLISE FORENSE DA MEMRIA

Aps a obteno da imagem da memria RAM, o investigador deve providenciar sua


replicao, gerando cpias e, em seguida, proceder com a anlise de seu contedo, com a
finalidade de obter evidncias sobre o incidente de segurana que ocorreu no sistema.
Segundo (CARVEY, 2007), at 2005, o procedimento padro para a anlise envolvia a
execuo de ferramentas simples, como strings e grep, para realizar buscas por endereos
de correio eletrnico, endereos IP, URLs, dentre outras informaes. Apesar de ser uma
abordagem que fornece resultados importantes, no prov informaes sobre o contexto em
que determinada informao foi encontrada. Assim, no permite estabelecer, por exemplo, a
que processo est relacionado determinado IP ou string que foi encontrada na memria.
Desde ento, esforos foram feitos para tentar adicionar contexto s informaes
encontradas na RAM, localizando processos especficos e as pginas da memria que estes
utilizam. Foram desenvolvidas ferramentas que podem ser utilizadas para analisar os dumps e,
como resultado, devolver informaes detalhadas sobre processos e outras estruturas.
Uma das primeiras coisas que um perito faz durante a atividade de anlise procurar
pelos processos que estavam em execuo quando a imagem foi capturada. Em sistemas
operacionais Windows existe uma estrutura bsica que contm todas as informaes a
respeito de um processo especfico; uma lista contendo os vnculos estabelecidos entre essas
38

estruturas utilizada para manter controle de todos os processos em execuo (AMARI,


2009). Conforme j mencionado anteriormente, a estrutura EPROCESS que representa um
processo no sistema operacional Windows. Essa estrutura varia entre as diferentes verses do
Windows, inclusive entre service packs da mesma verso. Assim, importante conhecer a
verso do sistema operacional em que foi obtida a imagem da memria, para que se escolha
adequadamente as ferramentas que sero utilizadas na anlise. A ferramenta osid.pl, um
script em Perl escrito por Harlan Carvey, autor do livro Windows Forensics Analysis, faz o
reconhecimento de qual a verso e service pack do Windows que esto em execuo no
sistema em que o dump foi obtido.
Existem atualmente diversas ferramentas para realizar percia forense de memria
voltil

em

sistemas

operacionais

Windows.

Nessa

seo,

algumas

ferramentas

disponibilizadas gratuitamente sero descritas e analisadas. Existem tambm ferramentas


comerciais que so padro no mercado, como os softwares Encase Enterprise, F-Response e
HBGary Responder; no entanto o foco desta seo estar voltado para ferramentas gratuitas.
No se pretende aqui manter uma lista de todas as ferramentas, mas apenas descrever algumas
das mais utilizadas pelos profissionais da rea.
importante que o perito conhea bem o comportamento das ferramentas utilizadas,
testando-as em imagens de memria conhecidas antes de adot-las em um processo de
investigao formal, pois assim, possvel conhecer bem suas sadas, o formato em que as
informaes sero apresentadas e evitar a ocorrncia de falsos positivos ou falsos negativos
por uso indevido ou desconhecimento acerca do comportamento do software. Ao testar as
ferramentas, tambm interessante realizar comparativos entre ferramentas similares, para
que o perito verifique se informaes importantes esto faltando ou se existe o retorno de
falsos positivos.

Caso alguma ferramenta apresente inconsistncias ou demonstre no

funcionar adequadamente em alguma situao, possvel que no seja aceita como vlida
para gerar provas em processos judiciais, tornando todo o processo investigativo invlido.
No foi possvel encontrar muitas informaes e documentao disponvel sobre as
ferramentas que sero apresentadas. Os dados so baseados, principalmente, no artigo
publicado por (AMARI, 2009), nos sites oficiais destas ferramentas e na instalao das
mesmas para testes em laboratrio. Deve-se tomar o cuidado de no utiliz-las diretamente no
sistema sob anlise, pois caso ele tenha sido comprometido, pode retornar falsos resultados,
escondendo informaes sobre as aes do invasor. O ideal executar as ferramentas atravs
de um CD, DVD ou dispositivo USB para mitigar esse risco.
39

3.6.1. Ferramentas bsicas

Algumas ferramentas que no foram criadas com a finalidade especfica de se realizar


anlise forense tambm podem ser utilizadas para realizao da percia, de forma a contribuir
com informaes significativas, sendo geralmente utilizadas para verificar o estado do
sistema. Dentre elas podemos citar o WinDbg, que faz parte do Debugging Tools for
Windows, uma ferramenta para depurao de erros em dispositivos, aplicativos e servios nos
sistemas operacionais Windows e que pode ser utilizada inclusive para analisar crash dumps.
Possui interface grfica e no precisa ser instalado na mquina sob anlise. Outras
ferramentas teis so os comandos tasklist - para exibir os processos em execuo e suas
informaes, strings para buscar strings em dumps de memria, ipconfig para fornecer
informaes sobre as interfaces de rede e sua configurao e netstat para fornecer
informaes sobre conexes de rede ativas.

3.6.2. Volatility Framework

O framework Volatility uma coleo de ferramentas implementadas em Python sob


licena GNU GPL para extrao de artefatos digitais de amostras de memria voltil (RAM).
As tcnicas de extrao so executadas de forma independente do sistema que est sendo
investigado, oferecendo visibilidade para o estado de execuo do sistema. Atualmente o
framework oferece as seguintes funcionalidades para extrao de dados na memria:
Exibe a data e hora da imagem
Processos em execuo, sockets abertos e conexes de rede ativas
Apresenta as DLLs carregadas para cada processo
Exibe os arquivos abertos para cada processo
Identificadores de registro abertos para cada processo
Espao de memria enderevel de um processo
Mdulos do kernel do sistema operacional
Informaes sobre o Virtual Address Descriptor
Extrao de executveis a partir de uma imagem da memria
40

A ferramenta suporta uma variedade de formatos de dump, efetua a converso


automtica entre alguns formatos e pode ser utilizada em qualquer plataforma que suporte
Python. Sua instalao e utilizao so simples, bastando descompactar o pacote fornecido
pela Volatility Systems em um sistema em que o Python j tenha sido instalado.
Seguem abaixo exemplos da utilizao de alguns comandos importantes do Volatility
em uma imagem de memria capturada utilizando a ferramenta Win32DD.
Primeiramente, o quadro 3.1 mostra a execuo do comando python volatility. Essa
opo exibe todos os comandos disponveis para execuo.

C:\Volatility>python volatility
Volatile Systems Volatility Framework v1.3
Copyright (C) 2007,2008 Volatile Systems
Copyright (C) 2007 Komoku, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
usage: volatility cmd [cmd_opts]
Run command cmd with options cmd_opts
For help on a specific command, run 'volatility cmd --help'
Supported Internel Commands:
connections
Print list of open connections
connscan
Scan for connection objects
connscan2
Scan for connection objects (New)
datetime
Get date/time information for image
dlllist
Print list of loaded dlls for each process
dmp2raw
Convert a crash dump to a raw dump
dmpchk
Dump crash dump information
files
Print list of open files for each process
hibinfo
Convert hibernation file to linear raw image
ident
Identify image properties
memdmp
Dump the addressable memory for a process
memmap
Print the memory map
modscan
Scan for modules
modscan2
Scan for module objects (New)
modules
Print list of loaded modules
procdump
Dump a process to an executable sample
pslist
Print list of running processes
psscan
Scan for EPROCESS objects
psscan2
Scan for process objects (New)
raw2dmp
Convert a raw dump to a crash dump
regobjkeys
Print list of open regkeys for each process
sockets
Print list of open sockets
sockscan
Scan for socket objects
sockscan2
Scan for socket objects (New)
strings
Match physical offsets to virtual addresses (may
take a while, VERY verbose)
thrdscan
Scan for ETHREAD objects
thrdscan2
Scan for thread objects (New)
vaddump
Dump the Vad sections to files
vadinfo
Dump the VAD info
vadwalk
Walk the vad tree
Supported Plugin Commands:
memmap_ex_2
Print the memory map
41

pslist_ex_1
pslist_ex_3
usrdmp_ex_2

Print list running processes


Print list running processes
Dump the address space for a process

Example: volatility pslist -f /path/to/my/file

Quadro 3.1 - Uso do comando volatility

O quadro 3.2 mostra o uso do comando ident, que pode ser utilizado para identificar a
data e hora em que a imagem foi coletada, assim como prover informaes sobre o sistema
operacional no qual foi gerado o dump:

C:\Volatility>python volatility ident f C:\dump_tcc_anapaula.dmp


Image Name: C:\dump_tcc_anapaula.dmp
Image Type: Service Pack 1
VM Type: nopae
DTB: 0x39000
Datetime: Fri May 13 14:24:36 2011

Quadro 3.2 Uso do comando ident da ferramenta Volatility

Pode-se utilizar a opo --help com qualquer comando para obter ajuda, conforme
mostra o quadro 3.3.

C:\Volatility>python volatility ident -help


Usage: ident [options] (see --help)
Options:
-h, --help
show this help message and exit
-f FILENAME, --file=FILENAME
(required) XP SP2 Image file
-b BASE, --base=BASE (optional, otherwise best guess is made) Physical
offset (in hex) of directory table base
-t TYPE, --type=TYPE (optional, default="auto") Identify the image type
(pae, nopae, auto)

Quadro 3.3 - Utilizando a opo help da ferramenta Volatility

Para listar os processos que estavam em execuo no momento em que foi gerado o
dump, pode-se utilizar o comando pslist. Como pode ser visto no quadro 3.4, a sada vai
conter o nome do processo, seu identificador (Pid) e identificador do processo-pai (PPid),
alm do horrio em que ele foi iniciado e outras informaes teis.

42

C:\Volatility>python volatility pslist f C:\dump_tcc_anapaula.dmp


Name
System
smss.exe
csrss.exe
winlogon.exe
services.exe
lsass.exe
svchost.exe
svchost.exe
svchost.exe
svchost.exe
spoolsv.exe
explorer.exe
NeroCheck_.exe
jusched.exe
ctfmon.exe
msmsgs.exe
jqs.exe
wmiapsrv.exe
swriter.exe
soffice.exe
soffice.bin
wuauclt.exe
cmd.exe
IEXPLORE.EXE
javaws.exe
javaw.exe
win32dd.exe

Pid
4
356
540
600
648
660
844
944
1200
1232
1348
1600
1740
1788
1796
1808
1932
404
1572
1580
1588
2016
416
1048
512
784
1440

PPid
0
4
356
356
600
600
648
648
648
648
648
1500
1600
1600
1600
1600
648
648
1600
1572
1580
944
944
1600
1788
512
416

Thds
46
3
11
21
23
25
10
69
7
15
12
14
7
1
1
13
5
4
1
1
5
6
1
25
1
14
1

Hnds
256
21
417
445
289
308
229
1013
67
136
113
394
31
95
53
269
195
125
19
19
154
94
20
626
0
0
23

Time
Thu Jan
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May
Sun May

01
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22

00:00:00
16:53:25
16:53:26
16:53:27
16:53:29
16:53:29
16:53:30
16:53:30
16:53:33
16:53:33
16:53:34
16:53:35
16:53:36
16:53:36
16:53:36
16:53:36
16:53:41
16:53:48
16:54:04
16:54:06
16:54:06
16:54:57
16:55:14
16:57:09
16:58:46
16:58:51
16:58:54

1970
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011
2011

Quadro 3.4 Uso do comando pslist da ferramenta Volatility

A opo connscan fornece informaes sobre as conexes de rede que estavam ativas
no momento em que os dados foram coletados da memria. J a opo sockets exibe os
sockets abertos no momento em que foi gerado o dump. O comando files exibe os arquivos
abertos para cada processo. possvel especificar o nmero do processo na linha de comando,
para exibir apenas os arquivos abertos por um processo especfico, conforme exemplifica o
quadro 3.5.

C:\Volatility>python volatility files p 1740 f C:\dump_tcc_anapaula.dmp


Pid: 1740
File
\Documents and Settings\anapaula
File
\WINDOWS\WinSxS\x86_Microsoft.Windows.CommonControls_6595b64144ccf1df_6.0.10.0_x-ww_f7fb5805
File
\WINDOWS\SYSTEM16

Quadro 3.5 Uso do comando files da ferramenta Volatility

O comando dlllist exibe uma lista contendo as DLLs carregadas para cada processo, e
o comando regobjkeys exibe uma lista contendo as chaves de registro abertas por cada
processo, o que pode ser visualizado nos quadros 3.6 e 3.7 respectivamente.

43

C:\Volatility>python volatility dlllist p 1740 f C:\dump_tcc_anapaula.dmp


NeroCheck_.exe pid: 1740
Command line : "C:\WINDOWS\System32\NeroCheck_.exe"
Service Pack 1
Base
Size
Path
0x400000
0x33000
C:\WINDOWS\System32\NeroCheck_.exe
0x77f50000
0xab000
C:\WINDOWS\System32\ntdll.dll
0x77e50000
0xf0000
C:\WINDOWS\system32\kernel32.dll
0x77db0000
0x9d000
C:\WINDOWS\system32\ADVAPI32.dll
0x78000000
0x86000
C:\WINDOWS\system32\RPCRT4.dll
0x77c50000
0x40000
C:\WINDOWS\system32\GDI32.dll
0x77d20000
0x8c000
C:\WINDOWS\system32\USER32.dll
0x761d0000
0x99000
C:\WINDOWS\system32\WININET.dll
0x77bf0000
0x53000
C:\WINDOWS\system32\msvcrt.dll
0x772b0000
0x64000
C:\WINDOWS\system32\SHLWAPI.dll
0x76290000
0x8c000
C:\WINDOWS\system32\CRYPT32.dll
0x76270000
0xf000
C:\WINDOWS\system32\MSASN1.dll
0x77100000
0x8b000
C:\WINDOWS\system32\OLEAUT32.dll
0x440000
0x121000
C:\WINDOWS\system32\OLE32.DLL
0x78090000
0xe4000
C:\WINDOWS\WinSxS\x86_Microsoft.Windows.CommonControls_6595b64144ccf1df_6.0.10.0_x-ww_f7fb5805\comctl32.dll

Quadro 3.6 Uso do comando dlllist da ferramenta Volatility


C:\Volatility>python volatility regobjkeys p 1740 f C:\dump_tcc_anapaula.dmp
Pid: 1740
\REGISTRY\MACHINE
\REGISTRY\USER\S-1-5-21-1482476501-1606980848-13430240911003\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\INTERNET SETTINGS
\REGISTRY\USER\S-1-5-21-1482476501-1606980848-1343024091-1003

Quadro 3.7 Uso do comando regobjkeys da ferramenta Volatility

Tambm possvel, atravs do comando procdump, extrair executveis a partir do


dump de memria, possibilitando ter acesso ao cdigo que estava sendo executado na
mquina e, assim conhecer melhor seu comportamento.

C:\Volatility>python volatility procdump p 1740 f C:\dump_tcc_anapaula.dmp


************************************************************************
Dumping NeroCheck_.exe, pid: 1740
output: executable.1740.exe
Memory Not Accessible: Virtual Address: 0x405000 File Offset: 0x5000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x409000 File Offset: 0x9000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x40a000 File Offset: 0xa000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x40b000 File Offset: 0xb000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x40c000 File Offset: 0xc000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x40d000 File Offset: 0xd000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x40e000 File Offset: 0xe000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x40f000 File Offset: 0xf000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x410000 File Offset: 0x10000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x411000 File Offset: 0x11000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x412000 File Offset: 0x12000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x413000 File Offset: 0x13000 Size: 0x1000
Memory Not Accessible: Virtual Address: 0x41f000 File Offset: 0x1f000 Size: 0x1000

Quadro 3.8 Uso do comando procdump da ferramenta Volatility

44

No quadro 3.8, foi possvel observar a gerao do executvel executable.1740.exe e


a ocorrncia de mensagens informativas do tipo Memory Not Accesible, aps utilizao do
comando procdump. Isso ocorre porque nem todos os endereos virtuais da memria esto
acessveis na imagem, pois podem ter sidos, por exemplo, paginados para o disco. Assim,
essas mensagens fornecem um log de auditoria para que se possa determinar quais partes do
executvel gerado foram recuperadas com xito.
Para executar o Volatility necessrio obter previamente o dump da memria,
utilizando qualquer ferramenta de dump, como as que foram citadas na seo 3.5 deste
captulo.

3.6.3. Mandiant Memoryze

Memoryze um software gratuito, disponibilizado pela empresa Mandiant


especialmente para a realizao de forense de memria. Pode ser utilizado para coletar dumps,
assim como para analisar o contedo da memria, tanto em sistemas que esto em execuo
quanto em imagens de memria. Caso a anlise seja realizada em sistemas que esto em
execuo, o software capaz de realizar a anlise do arquivo de paginao tambm. A
ferramenta pode ser executada a partir de uma estao forense, na mquina que est sob
anlise ou atravs de dispositivos USB. Possui as seguintes funcionalidades:
Captura a imagem de toda a memria do sistema, de forma independente de
chamadas de API.
Captura o espao enderevel de um processo no disco, incluindo DLLs,
executveis e pilhas.
Captura a imagem de um driver especfico (ou de todos) carregado na memria
e o identifica.
Enumera os processos em execuo, incluindo aqueles que possam estar
escondidos por rootkits.
Identifica os mdulos do kernel carregados na memria atravs do
rastreamento das estruturas e listas de vnculos mantidas pelo sistema
operacional

45

Identifica manipulaes envolvendo as chamadas de sistema e tabelas de


descritores, muitas vezes utilizados por rootkits.
O Memoryze trabalha com dois componentes: o prprio Memoryze e o Audit Viewer. O
primeiro responsvel por fazer a extrao e anlise do contedo da memria, enquanto o
segundo, opcional, responsvel por apresentar o resultado XML gerado pelo Memoryze em
um formato mais amigvel. Para utilizar o AuditViewer, preciso instalar o Python no
sistema.
Aps a instalao do Memoryze possvel verificar a existncia de vrios scripts
XML, cada um com funo distinta:
AcquireDriver.Batch.xml
AcquireMemory.Batch.xml
AcquireProcessMemory.Batch.xml
DriverAuditModuleList.Batch.xml
DriverAuditSignature.Batch.xml
HookAudit.Batch.xml
ProcessAuditMemory.Batch.xml
Alm dos scripts XML, tambm so encontrados os seguintes arquivos batch:
MemoryDD.bat - obtm a imagem da memria fsica
ProcessDD.bat - obtm a imagem do espao de endereo do processo
DriverDD.bat - obtm a imagem de um driver especfico
Process.bat - enumera todas as informaes sobre um processo especfico,
como memria virtual, portas de rede, handle e strings
HookDetection.bat - procura por hooks (ganchos) dentro do sistema
operacional
DriverSearch.bat - encontra drivers na imagem de memria analisada
DriverWalkList.bat enumera todos os mdulos e drivers em uma lista de
vnculos (linked list).

46

Existem trs formas de se utilizar o Memoryze: a primeira consiste em utilizar os


arquivos XML nativos ferramenta, o que requer a edio dos arquivos com extenso
*.Batch.xml citados acima, a fim de configur-los para realizar as atividades desejadas. A
segunda forma utilizar os scripts batch (extenso .bat) fornecidos. Esses scripts geram o
XML adequado para executar a tarefa desejada, de acordo com as opes fornecidas na linha
de comando ao execut-los. A terceira forma utilizar Audit Viewer, que possui uma interface
amigvel tornando a anlise mais rpida e intuitiva. Aps sua configurao, devem ser
escolhidas as tarefas a serem desempenhadas pelo software.
A seguir, as figuras 3.2 e 3.3 exemplificam o uso do Audit Viewer. Do lado esquerdo,
aparecem os processos encontrados na memria e algumas informaes extras sobre cada um,
como Pid, PPid, data em que foi iniciado e o caminho do executvel. Do lado direito da tela
existem diversas abas que podem exibir informaes especficas para determinado processo
que tenha sido selecionado: arquivos abertos, DLLs carregadas, chaves de registro, dentre
outros.

Figura 3.2 Tela do visualizador Audit Viewer Aba Files: anlise forense da memria
efetuada com o software Memoryze.

47

Figura 3.3 Tela do visualizador Audit Viewer Aba Registry Keys: anlise forense da
memria efetuada com o software Memoryze.

3.6.4. Windows Memory Forensic Toolkit

O Windows Memory Forensic Toolkit (WMFT) uma coleo de utilitrios destinada


para uso forense. Pode ser utilizado para realizar anlise forense em imagens de memria
capturadas a partir de sistemas operacionais Windows 2000, Windows 2003 e Windows XP.
Existem duas verses da ferramenta, uma para Linux e outra para Windows. A verso
desenvolvida para Windows foi escrita em C # para a plataforma .NET e possui
funcionalidades adicionais com relao verso criada para Linux, como a possibilidade de
detectar objetos escondidos.
Para configurar e utilizar o WMFT necessrio que o investigador realize um trabalho
manual previamente, a fim de localizar os smbolos que apontam para importantes objetos e
estruturas do kernel na memria. As instrues para realizao desta atividade prvia foram
publicadas no documento An introduction to Windows memory forensics, por Mariusz
Burdach, desenvolvedor da ferramenta. Aps localizar o endereo destes objetos na memria,
possvel alimentar o WMFT com esses valores e proceder com a anlise atravs das

48

estruturas de dados, a fim de recuperar processos e demais objetos armazenados na memria


RAM.
Como o WMFT utiliza as prprias estruturas de dados para percorrer a memria e
extrair as informaes relevantes, uma ferramenta vulnervel a ataques mais avanados, nos
quais o atacante esconde os processos e outros objetos deixando-os fora das estruturas de
dados mantidas pelo sistema operacional, que so utilizadas para acompanhamento desses
dados.
Alm das ferramentas gratuitas aqui expostas, podemos citar outras, que tambm so
importantes e comumente utilizadas por profissionais da rea: Memparser, FATKit, PTFinder
e VADTools, dentre outras.

49

50

4. ESTUDO DE CASO

Nesse captulo ser realizado um estudo de caso para anlise forense de malware em
sistema operacional Windows. Pretende-se mostrar que a anlise do contedo da memria
voltil (RAM) pode ser muito importante para um processo de investigao forense. Objetivase, tambm, mostrar como podem ser utilizadas ferramentas de dump e anlise de imagens de
memria apresentadas nesse trabalho, com o intuito de obter evidncias importantes para um
processo de anlise forense.

4.1. CENRIO

Para possibilitar a realizao deste estudo de caso, foi montado um ambiente de


laboratrio, no qual se instalou o sistema operacional Windows XP SP3 em uma mquina
virtual contendo 1GB (gigabytes) de memria, criada com o software de virtualizao
VMWare Player.
Configuraes do equipamento
Processador: Intel Core 2 Duo CPU T5670 @ 1.80 GHz
Memria: 3,00 GB
Tipo de sistema: Sistema operacional de 32 bits
Configuraes da mquina virtual
Software de virtualizao: VMWare Player 3.1.4
Sistema operacional: Windows XP Service Pack 3
Memria: 1,00 GB
Nesse ambiente foi instalado um banker, cdigo malicioso criado para roubo de
credenciais de acesso a servios de Internet Banking. Foi utilizado um banker j conhecido
pelas instituies bancrias e pelas principais ferramentas de antivrus, apenas para fins
didticos. Adicionalmente, com a finalidade de comprovar que se trata de cdigo malicioso, o
arquivo convite.com, que baixado e executado pelo banker, foi submetido para anlise no
site Virus Total (http://virustotal.com.br), que prov o servio de anlise automatizada de
51

arquivos e URLs suspeitas, facilitando a deteco de diversos tipos de malwares. O resultado,


corroborando que se trata de cdigo malicioso, pode ser consultado no Anexo II deste
trabalho.
As ferramentas de anlise forense utilizadas para este estudo de caso tambm foram
instaladas e configuradas no ambiente de laboratrio, visando simplificar a extrao e anlise
das informaes obtidas da memria.

4.2. REALIZAO DOS TESTES

Primeiramente, foram instaladas as ferramentas Moonsols Windows Memory Toolkit


1.0 Community Edition e Volatility Framework 1.3 no ambiente de laboratrio, para
realizao do dump e anlise da memria, respectivamente. Tambm foi necessrio instalar o
Python v2.7.1 no sistema para utilizao do software Volatility.
Em seguida, foi acessada a URL que faz o download do cdigo malicioso e solicita ao
usurio a sua execuo (http://www.djwirya.com/news/css/gif.php?=werhj34r839349rhj).
Normalmente utilizado ataque de engenharia social, com apelos para convencer o usurio a
executar o arquivo em seu computador, como uma mensagem de email com fotos de artistas
ou at mesmo solicitando a instalao de plugins de segurana para acesso ao Internet
Banking.
Ao acessar o link, o usurio direcionado a realizar o download do arquivo
convite.com, como pode ser visto na figura 4.1.

Figura 4.1 Download do banker


52

Quando o usurio executa o arquivo, exibida uma mensagem de erro,


conforme mostra a figura 4.2, no entanto o banker j executou suas atividades no computador.

Figura 4.2 Mensagem de erro ao executar o banker

Para iniciar a anlise, foi realizado um dump de memria utilizando a ferramenta


win32dd.exe, j apresentada neste trabalho. O quadro 4.1 mostra os procedimentos e comando
utilizados para coleta da imagem. Como pode ser observado, foi criada a imagem
dump_monografia_case.dmp com tamanho de 1GB (gigabytes), ou seja, com o mesmo
tamanho da memria fsica do sistema.

C:\Moonsols>win32dd.exe /f dump_forense_malware.dmp
C:\Moonsols>win32dd.exe /f dump_forense_malware.dmp
win32dd - 1.3.1.20100417 - (Community Edition)
Kernel land physical memory acquisition
Copyright (C) 2007 - 2010, Matthieu Suiche <http://www.msuiche.net>
Copyright (C) 2009 - 2010, MoonSols <http://www.moonsols.com>
Name
---File type:
Acquisition method:
Content:

Value
----Raw memory dump file
PFN Mapping
Memory manager physical memory block

Destination path:

dump_forense_malware.dmp

O.S. Version:
(build 2600)
Computer name:

Microsoft Windows XP Professional Service Pack 3


ANAPAULA-XP

Physical memory in use:


Physical memory size:
Physical memory available:

38%
1048048 Kb (
643664 Kb (

1023 Mb)
628 Mb)

Paging file size:


Paging file available:

2519744 Kb (
2034396 Kb (

2460 Mb)
1986 Mb)

Virtual memory size:


Virtual memory available:

2097024 Kb (
2083280 Kb (

2047 Mb)
2034 Mb)

Extented memory available:

0 Kb (

0 Mb)

Physical page size:


Minimum physical address:
Maximum physical address:

4096 bytes
0x0000000000001000
0x000000003FFFF000
53

Address space size:

1073741824 bytes (1048576 Kb)

--> Are you sure you want to continue? [y/n] y


Acquisition started at:

[31/5/2011 (DD/MM/YYYY) 16:0:58 (UTC)]

Processing....Done.
Acquisition finished at:
Time elapsed:

[2011-05-31 (YYYY-MM-DD) 16:02:02 (UTC)]


1:04 minutes:seconds (64 secs)

Created file size:


NtStatus
Total of
Total of
Total of

1073741824 bytes (

(troubleshooting):
written pages:
inacessible pages:
accessible pages:

1024 Mb)

0x00000000
262029
0
262029

Physical memory in use:


Physical memory size:
Physical memory available:

38%
1048048 Kb (
646392 Kb (

1023 Mb)
631 Mb)

Paging file size:


Paging file available:

2519744 Kb (
2034420 Kb (

2460 Mb)
1986 Mb)

Virtual memory size:


Virtual memory available:

2097024 Kb (
2083280 Kb (

2047 Mb)
2034 Mb)

Extented memory available:

0 Kb (

0 Mb)

Physical page size:


Minimum physical address:
Maximum physical address:

4096 bytes
0x0000000000001000
0x000000003FFFF000

Address space size:

1073741824 bytes (1048576 Kb)

Quadro 4.1 Aquisio do dump de memria utilizando a ferramenta Win32dd

Aps a obteno da imagem da memria, foi utilizada a ferramenta Volatility para


analisar o contedo do dump. Utilizando a opo pslist, foi gerada uma relao dos processos
que puderam ser identificados atravs da memria. O quadro 4.2 exibe apenas os processos
suspeitos e que so de interesse para realizao desta anlise. Como o comportamento do
banker que est sendo analisado j conhecido, foi possvel reconhecer de imediato os
processos a ele relacionados. Normalmente no se conhece o comportamento do malware
previamente, assim importante que o perito conhea bem os processos do sistema que est
analisando.

Name
convite.com
avguix.exe
Builder.exe

Pid
3084
3408
3508

PPid
4072
3376
3408

Thds
1
2
1

Hnds
107
85
89

Time
Tue May 31 03:10:53 2011
Tue May 31 03:12:41 2011
Tue May 31 03:12:45 2011

Quadro 4.2 Processos criados pelo banker


54

As opes connscan e sockets do Volatility tambm poderiam ser bastante teis para
identificao de endereos IP, portas e protocolos em uso pelos programas, mas nesse estudo
de caso no foi possvel obter essas informaes atravs do dump de memria.
especialmente importante mapear quais arquivos, chaves de registro e DLLs esto
sendo utilizados ou foram criados e alterados pelo banker. Isso possvel atravs das opes
files, dlllist e regobjkeys do volatility, como mostram os quadros 4.3, 4.4 e 4.5 para o processo
avguix.exe, cujo PID 3408 e foi executado pelo banker.

Pid: 3408
File
\DOCUME~1\anapaula\CONFIG~1\Temp\IXP000.TMP
File
\WINDOWS\WinSxS\x86_Microsoft.Windows.CommonControls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202
File
\WINDOWS\WinSxS\x86_Microsoft.Windows.CommonControls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202
File
\WINDOWS\WinSxS\x86_Microsoft.Windows.CommonControls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202

Quadro 4.3 Arquivos criados/acessados pelo processo avguix.exe

avguix.exe pid: 3408


Command line : C:\DOCUME~1\anapaula\CONFIG~1\Temp\IXP000.TMP\avguix.exe
Service Pack 3
Base
Size
Path
0x400000
0x819000
C:\DOCUME~1\anapaula\CONFIG~1\Temp\IXP000.TMP\avguix.exe
0x7c900000
0xb6000
C:\WINDOWS\system32\ntdll.dll
0x7c800000
0x100000
C:\WINDOWS\system32\kernel32.dll
0x7e360000
0x91000
C:\WINDOWS\system32\user32.dll
0x77e50000
0x49000
C:\WINDOWS\system32\GDI32.dll
0x77f50000
0xab000
C:\WINDOWS\system32\advapi32.dll
0x77db0000
0x93000
C:\WINDOWS\system32\RPCRT4.dll
0x77f20000
0x11000
C:\WINDOWS\system32\Secur32.dll
0x77100000
0x8b000
C:\WINDOWS\system32\oleaut32.dll
0x77bf0000
0x58000
C:\WINDOWS\system32\msvcrt.dll
0x774c0000
0x13e000
C:\WINDOWS\system32\ole32.dll
0x77be0000
0x8000
C:\WINDOWS\system32\version.dll
0x5d510000
0x9a000
C:\WINDOWS\system32\comctl32.dll
0x3fa50000
0xe6000
C:\WINDOWS\system32\wininet.dll
0x77ea0000
0x76000
C:\WINDOWS\system32\SHLWAPI.dll
0x340000
0x9000
C:\WINDOWS\system32\Normaliz.dll
0x43f90000
0x133000
C:\WINDOWS\system32\urlmon.dll
0x400f0000
0x1e9000
C:\WINDOWS\system32\iertutil.dll
0x76380000
0x48000
C:\WINDOWS\system32\comdlg32.dll
0x7c9c0000
0x81e000
C:\WINDOWS\system32\SHELL32.dll
0x76760000
0x9000
C:\WINDOWS\system32\SHFolder.dll
0x76360000
0x1d000
C:\WINDOWS\system32\IMM32.DLL
0x773b0000
0x103000
C:\WINDOWS\WinSxS\x86_Microsoft.Windows.CommonControls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\comctl32.dll
0x5b1c0000
0x38000
C:\WINDOWS\system32\uxtheme.dll
0x746e0000
0x4c000
C:\WINDOWS\system32\MSCTF.dll
0x75290000
0x2e000
C:\WINDOWS\system32\msctfime.ime
0x5f250000
0x17000
C:\WINDOWS\system32\olepro32.dll
0x71a70000
0x17000
C:\WINDOWS\system32\WS2_32.DLL
0x71a60000
0x8000
C:\WINDOWS\system32\WS2HELP.dll
0x71a10000
0x40000
C:\WINDOWS\system32\mswsock.dll
0x60b30000
0x58000
C:\WINDOWS\system32\hnetcfg.dll
0x71a50000
0x8000
C:\WINDOWS\System32\wshtcpip.dll
55

0x76f00000
0x76d40000
0x76f90000
0x76f40000
0x76fa0000
0x77b20000

0x27000
0x19000
0x8000
0x2d000
0x6000
0x22000

C:\WINDOWS\system32\DNSAPI.dll
C:\WINDOWS\system32\iphlpapi.dll
C:\WINDOWS\System32\winrnr.dll
C:\WINDOWS\system32\WLDAP32.dll
C:\WINDOWS\system32\rasadhlp.dll
C:\WINDOWS\system32\Apphelp.dll

Quadro 4.4 Bibliotecas utilizadas/carregadas pelo processo avguix.exe

Pid: 3408
\REGISTRY\MACHINE
\REGISTRY\USER\S-1-5-21-1644491937-1592454029-839522115-1005
\REGISTRY\USER\S-1-5-21-1644491937-1592454029-839522115-1005_CLASSES
\REGISTRY\MACHINE\SOFTWARE\MICROSOFT\INTERNET
EXPLORER\MAIN\FEATURECONTROL\FEATURE_PROTOCOL_LOCKDOWN
\REGISTRY\USER\S-1-5-21-1644491937-1592454029-8395221151005\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\INTERNET SETTINGS
\REGISTRY\MACHINE\SYSTEM\CONTROLSET001\SERVICES\WINSOCK2\PARAMETERS\PROTOCOL_CATALOG9
\REGISTRY\MACHINE\SYSTEM\CONTROLSET001\SERVICES\WINSOCK2\PARAMETERS\NAMESPACE_CATALOG5
\REGISTRY\MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\ADVANCED
\REGISTRY\MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\POLICIES\SYSTEM
\REGISTRY\MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN
\REGISTRY\MACHINE\SYSTEM\CONTROLSET001\SERVICES\TCPIP\LINKAGE
\REGISTRY\MACHINE\SYSTEM\CONTROLSET001\SERVICES\TCPIP\PARAMETERS
\REGISTRY\MACHINE\SYSTEM\CONTROLSET001\SERVICES\NETBT\PARAMETERS\INTERFACES
\REGISTRY\MACHINE\SYSTEM\CONTROLSET001\SERVICES\NETBT\PARAMETERS

Quadro 4.5 Chaves de registro em uso pelo processo avguix.exe

No

quadro

4.5,

possvel

perceber

que

chave

"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" foi alterada, possivelmente


para incluir os processos criados pelo banker na inicializao do sistema.
Para melhor avaliao dos processos sob suspeita, a fim de identificar se realmente
trata-se de cdigo malicioso, possvel extrair o executvel a partir da memria, utilizando a
opo procdump, exibido no quadro 4.6. Assim, o perito pode investigar com mais detalhes o
comportamento do malware em um ambiente controlado.

************************************************************************
Dumping avguix.exe, pid: 3408
output: executable.3408.exe

Quadro 4.6 Extrao do cdigo executvel do processo avguix.exe

De forma complementar, pode-se utilizar a ferramenta strings, que permite a


identificao de seqncias de dados imprimveis em arquivos binrios como o dump da
memria. Assim, direcionando a sada do comando strings para um arquivo no disco

56

possvel converter em ASCII todos os caracteres identificados no arquivo de dump da


memria, facilitando a identificao dos dados.
Dentre outras informaes significantes encontradas na imagem da memria
utilizando o comando strings, podemos citar as URLs que o banker utiliza para fazer
requisies (GET) e submisses (POST), assim como o endereo de email utilizado.
POST: http://www.ptm-deutschland.de//includes/info.php
GET: http://www.le-galetas.com/temp/ss.com
E-mail: apoloturbo01@yahoo.com.br
possvel estender a anlise aqui realizada utilizando o prprio Volatility, outras
ferramentas de anlise de memria ou ferramentas complementares de suporte anlise
forense, como sniffers. No entanto, o que foi apresentado nesse estudo de caso pode ser
considerado como relevante, do ponto de vista de obteno de provas para uma investigao
forense, pois pode gerar evidncias consistentes e que, em eventual necessidade de atuao da
Justia, poderiam ter valor probatrio, principalmente se as informaes forem
complementadas com outras obtidas em uma anlise post mortem.
Foi possvel demonstrar e comprovar que a anlise forense baseada em contedo
obtido a partir de dados volteis, capturados da memria, pode oferecer evidncias essenciais
elucidao de incidentes de segurana.
O prprio usurio baixou e instalou o cdigo malicioso em sua mquina, o que
acontece na grande maioria das vezes, sem ter conhecimento das conseqncias de sua ao.
Assim, o banker iniciou processos mal intencionados no sistema sem que o usurio sequer
percebesse. No entanto, a aquisio dos dados da memria voltil e posterior anlise
mostraram que possvel encontrar vestgios importantes, que confirmam a presena do
banker no sistema investigado, utilizando tanto ferramentas especficas para a forense de
memria, quanto ferramentas complementares, de uso geral.

57

58

5.

CONCLUSES

Muitos pesquisadores acreditam que a memria voltil est se tornando o alvo


preferido de explorao pelos usurios maliciosos, a fim de armazenarem dados que desejam
ocultar, ou mesmo para executar cdigos maliciosos de forma a impedir engenharia reversa. E
um dos motivos para esse interesse que poucas organizaes adotam a coleta de dados da
memria voltil como procedimento para tratamento de incidentes de segurana. Atualmente
vrios cdigos maliciosos foram desenvolvidos para residir exclusivamente na memria, sem
necessidade de utilizar o disco rgido; assim, a percia forense que contemple apenas o disco
rgido pode ser incompleta e ineficaz nesses casos
Diante do estudo apresentado, podem ser obtidas algumas concluses para aplicao
no processo de percia forense computacional, em especial forense de memria. Atravs do
referencial terico e do estudo de caso apresentado foi possvel ressaltar a importncia da
anlise forense in vivo a fim de obter maior nmero e diversidade de evidncias e foi
destacada a relevncia da anlise forense da memria, abordando os dados que nela podem ser
encontrados e sua importncia para a percia forense computacional, podendo ser utilizada
isoladamente ou de forma complementar tradicional forense post mortem, que
conduzida aps desligamento do sistema e no contempla a aquisio de dados volteis.
Pesquisadores e analistas j desenvolveram diversos trabalhos e tcnicas para recuperao de
dados da memria, mas muito trabalho ainda pode ser desenvolvido nesta rea, pois usurios
maliciosos esto sempre desenvolvendo novas tcnicas de ataque e formas de se explorar
vulnerabilidades existentes nos sistemas de tecnologia.
Foram apresentadas tcnicas, procedimentos e ferramentas essenciais prtica forense
computacional, assim como as fases que compem um processo investigativo, ressaltando-se
como importante documentar bem todos os passos envolvidos no processo e adotar
metodologias que privilegiem a integridade, autenticidade e confidencialidade dos dados. Foi
abordado que tipo de informao pode ser recuperada da memria e o quanto a extrao de
dados presentes na memria pode afetar seu contedo e vestgios nela presentes.
Conforme apresentado, mesmo sendo uma abordagem relativamente nova, existem
diversas ferramentas disponveis para a captura, gerao de imagens e anlise dos dados
contidos na memria RAM. Embora essas ferramentas estejam em constante desenvolvimento
e refinamento, possvel obter resultados valiosos com sua utilizao. Porm, mesmo tendo
59

recursos para realizao da anlise, necessrio que o perito esteja intimamente familiarizado
com o sistema operacional com o qual est trabalhando e como realizado o seu
gerenciamento de memria, para obter maiores ganhos. Em sistemas operacionais Windows,
em especial, at mesmo as verses de service packs distintas possuem grandes diferenas.
medida que as ferramentas so desenvolvidas e ganham novas funcionalidades, novas tcnicas
so oferecidas aos investigadores, o que juntamente com o amadurecimento dos processos e
procedimentos adotados, contribuem para investigaes do tipo Live Forensics.
No mbito corporativo, em especial, importante destacar a importncia da existncia
de polticas de segurana da informao como medida preventiva. A poltica de segurana
deve ser elaborada e divulgada de forma objetiva, clara e concisa e possuir controles
eficientes, permitindo que sua utilizao viabilize a padronizao dos procedimentos
relacionados aos incidentes de segurana. A norma ISO/IEC 27001 fornece diretrizes para a
elaborao de um sistema de gesto de segurana da informao.
muito importante que os sistemas de uma organizao sejam bem conhecidos e
atualizados atravs da aplicao de correes, principalmente as que envolvem patches de
segurana, a fim de evitar a presena de vulnerabilidades. Os analistas responsveis pela
resposta a incidentes e investigao forense da organizao devem se manter atualizados e
estar familiarizados com os sistemas em utilizao, a fim de fornecer resposta rpida quando
necessrio. E, alm disso, precisam estar conhecer bem as ferramentas de coleta de dados que
sero utilizadas, evitando ao mximo a contaminao do ambiente sob investigao. Deve ser
montado um kit de ferramentas e um ambiente de laboratrio que estejam prontos para
utilizao a qualquer momento, pois os incidentes e situaes de emergncia podem acontecer
a qualquer momento.
Tambm preciso investir nas pessoas, na educao dos usurios, que normalmente
so o elo mais fraco e vulnervel do sistema como um todo. A rea de segurana da
informao apoia-se em trs pilares bsicos: processos, pessoas e tecnologia. Assim, para
garantir a segurana de um sistema, no basta apenas manter processos com fluxos e
procedimentos bem elaborados e revisados com freqncia, nem mesmo se basear
exclusivamente na utilizao de recursos e ferramentas de proteo; preciso pensar nos
riscos advindos do envolvimento entre sistemas e pessoas.
Outro ponto importante e que deve ser de conhecimento dos peritos forenses so as
questes legais envolvidas no processo de investigao e inspeo dos sistemas.
Normalmente, lidam com dados sensveis, ento devem ser conscientizados sobre as
60

implicaes de suas aes e sobre o respeito privacidade das informaes. fundamental


que todo o processo seja transparente e pautado pela tica.
Prope-se, para trabalhos futuros, a realizao de estudos de caso utilizando as
ferramentas de anlise forense da memria tanto em sistemas operacionais Linux quanto
Windows, a fim de criar comparativos sobre o comportamento das ferramentas em cada
ambiente. Alm disso, a criao de frameworks agregando ferramentas voltadas
especificamente forense de memria voltil, desenvolvimento de ferramentas mais
interativas e documentao acerca de sua utilizao.

61

62

6. BIBLIOGRAFIA
[1]

IBGE; Pesquisa Nacional por Amostra de Domiclios PNAD 2009; Instituto


Brasileiro de Geografia e Estatstica.

[2]

KROLL; Global Fraud Report - Anual Edition 2010/11. Acessado em 10/01/2011


em http://www.kroll.com/library/fraud/FraudReport_English-US_Oct10.pdf

[3]

MANDIA, KEVIN; PROSISE, CHRIS; Incident Response & Computer


Forensics; Second Edition; McGraw-Hill, 2003.

[4]

CASTRO, CARLA RODRIGUES ARAJO DE; Crimes de Informtica e seus


Aspectos Processuais; 2a. Edio, Ed. Lumen Juris, Rio de Janeiro, 2003.

[5]

FREITAS, ANDREY RODRIGUES DE; Percia Forense Aplicada Informtica:


Ambiente Microsoft; Rio de Janeiro, Brasport, 2006.

[6]

ELEUTRIO, PEDRO MONTEIRO DA SILVA; MACHADO, MRCIO PEREIRA;


Desvendando a computao forense; So Paulo, Novatec Editora, 2011.

[7]

FARMER, DAN; VENEMA, WIETSE; Percia Forense Computacional: Teoria e


Prtica Aplicada; So Paulo, Pearson Prentice Hall, 2007.

[8]

FARMER, DAN; VENEMA, WIETSE; Murder on the Internet Express ; 1999.


Acessado
em
24/02/2011
em
http://www.neoprag.com/dcm/Murder_on_the_Internet_Express.pdf.

[9]

HUEBNER, EWA; BEM, DEREK; BEM, OSCAR; Computer Forensics Past,


Present And Future, 2007.

[10]

BRASIL; Constituio da Repblica Federativa do Brasil de 1988. Acessado em


24/02/2011 em http://www.planalto.gov.br/ccivil_03/constituicao/constituiao.htm.

[11]

RODRIGUES, TONY; Blog Resposta a Incidentes e Forense Computacional; Um


pouco
sobre
leis;
2007.
Acessado
em
17/02/2011
em
http://forcomp.blogspot.com/2007/11/um-pouco-sobre-leis.html.

[12]

ROSA, DANIEL ACCIOLY; Contextualizao da Prtica Forense; Revista Evidncia


Digital Edio 01, Ano I, Nmero 01, p. 5, Jan.,Fev.,Mar. 2004. Acessado em
15/02/2011 em http://www.guiatecnico.com.br/evidenciadigital.

[13]

WARREN, G., JAY, G. Computer Forensics:


Addison-Wesley, Massachusetts, 2002.

Incident

Response

Essentials.

63

[14]

PALMER, GARY; A Road Map for Digital Forensic Research; Technical Report DTR
T001-01, DFRWS. Report From the First Digital Forensic Research Workshop
(DFRWS), New York, 2001.

[15]

AMARI, KRISTINE; Techniques and Tools for Recovering and Analyzing Data from
Volatile Memory, SANS Institute, 2009.

[16]

CARVEY, HARLAN; Windows Forensics Analysis DVD Toolkit; Syngress


Publishing, Inc. ; 2007.

[17]

van Baar, R.B.; Alink, W.; van Ballegooij, A.R. ; Forensic memory analysis: Files
mapped in memory; Journal of Digital Investigation; Volume 5; September, 2008.

[18]

SHIREY, R.; RFC 4949: Internet Security Glossary, Version 2; 2007. Acessado em
30/04/2011 em http://www.rfc-editor.org/rfc/rfc4949.txt.

[19]

DAVIS, NAJA; Live Memory Acquisition for Windows Operating Systems: Tools
and Techniques for Analysis; Eastern Michigan University. Acessado 23/04/2011 em
http://www.emich.edu/ia/pdf/research/Live%20Memory%20Acquisition%20for%20Windows
%20Operating%20Systems,%20Naja%20Davis.pdf

[20]

BOILEAU, ADAM; Hit by a Bus: Physical Access Attacks with Firewire; Ruxcon,
2006.
Acessado
em
14/04/2011
em
http://www.securityassessment.com/files/presentations/ab_firewire_rux2k6-final.pdf

[21]

LISITA, BRUNO LOPES; MOURA, THIAGO SILVA MACHADO DE; PINTO,


TIAGO JORGE; Forense Computacional em Memria Principal; Servio Nacional de
Aprendizagem Industrial SENAI; Goinia, 2009.

[22]

BURDACH, MARIUSZ; An Introduction to Windows memory forensics; 2005.


Acessado
em
22/05/2011
em
http://forensic.seccure.net/pdf/introduction_to_windows_memory_forensic.pdf

[23]

KENT, KAREN; CHEVALIER, SUZANNE; GRANCE, TIM; DANG HUNG; Guide


to Integrating Forensic Techniques into Incident Response Recommendations of the
National Institute of Standards and Technology; NIST Special Publication 800-86;
August, 2006

[24]

HOWARD, JOHN D.; LONGSTAFF, THOMAS A.; A Common Language for


Computer Security Incidents; Sandia National Laboratories; United States Department
of Energy; SAND98-8667; October, 1998.

[25]

MEMORYZE. Mandiant Memoryze


1.4.4200. Acessado em 04/05/2011 em
http://www.mandiant.com/products/free_software/memoryze
64

[26]

MDD.
Mantech
Memory
DD.
Acessado
http://www.mantech.com/capabilities/mdd.asp

em

04/05/2011

em

[27]

VOLATILITY. Volatile Systems Volatility Framework v1.3. Acessado em 09/05/2011


em https://www.volatilesystems.com/default/volatility

[28]

WMFT. Windows Memory Forensic Toolkit. Acessado em 23/05/2011 em


http://forensic.seccure.net/

[29]

WIN32DD. Moonsols Windows Memory Toolkit Community Edition. Acessado em


29/05/2011 em http://www.moonsols.com/windows-memory-toolkit/

[30]

FASTDUMP. HBGary FastDump Community Edition. Acessado em 29/05/2011 em


http://www.hbgary.com/fastdump

[32]

KNTDD. GMG Systems, Inc. KnTTools with KnTList. Acessado em 29/05/2011 em


http://gmgsystemsinc.com/knttools/

[33]

FTKIMAGER. Access Data Forensic ToolKit 3. Acessado em 29/05/2011 em


http://accessdata.com/products/computer-forensics/ftk

[34]

ENCASE FORENSIC. Guidance Software Encase Forensic. Acessado em 29/05/2011


em http://www.guidancesoftware.com/forensic.htm

[35]

NIGILANT32. Agile Risk Management Nigilant32. Acessado em 29/05/2011 em


http://www.agileriskmanagement.com

[36]

DIGITAL Forensic Analysis Methodology: Process Overview; United States


Department of Justice; Computer Crime and Intellectual Property Section; August,
2007.
Acessado
em
30/05/2011
em
http://www.justice.gov/criminal/cybercrime/forensics_chart.pdf

[37]

SILVA, GILSON MARQUES DA; LORENS, EVANDRO MRIO; Extrao e


Anlise de Dados em Memria na Percia Forense Computacional; VI Conferncia
Internacional de Percias em Crimes Cibernticos; Natal, 2009. Acessado em
20/04/2011
em
http://www.gilsonmarques.com.br/artigos/extracao_e_analise_de_dados_em_memoria
_na_pericia_forense_computacional_iccyber_ijofcs.pdf

65

66

7.

ANEXO I

LAUDO N xxx/AAAA SETEC/SR/DPF/DF


LAUDO DE EXAME DE DISPOSITIVO DE
ARMAZENAMENTO COMPUTACIONAL
(Disco Rgido)

Em XX de <ms> de <ano>, no SETOR TCNICO-CIENTFICO da


Superintendncia Regional do Departamento de Polcia Federal no XXX, designados pelo
Chefe do Setor, Perito Criminal Federal XXXXXXX XXXX XXX, os Peritos Criminais
Federais KKKKK KKKK KKKKKK e YYYY YYYYY YYYYY elaboraram o presente
Laudo Pericial, no interesse do IPL n XXX/AAAA-SR/DPF/EE, a fim de atender a
solicitao do Delegado de Polcia Federal XXXX XXXXXXX XXXX, contida no
Memorando n XXXX/AAAA-SR/DPF/DF de DD/MM/AAAA, registrado no Sistema de
Criminalstica sob o n XXXX/AAAA-SETEC/SR/DPF/EE, em DD/MM/AAAA,
descrevendo com verdade e com todas as circunstncias tudo quanto possa interessar Justia
e atendendo ao solicitado <OU AOS QUESITOS>, abaixo transcrito<S>:

<SOLICITAO> OU <QUESITOS>

I MATERIAL
O presente Laudo refere-se ao exame do seguinte material:
a) Um disco rgido da marca MAXTOR, modelo MMMMM, nmero de srie
XXAXAXAAAXX, com capacidade nominal de XXGB, referencia interna
XXX/AAAA-SETEC/SR/DPF/EE.

II OBJETIVO
Os exames tm por objetivo extrair e analisar o contedo do material descrito
na seo anterior, atendendo solicitao contida no expediente supracitado.

67

III EXAMES
Inicialmente, foi realizado o levantamento e a identificao do material
enviado para exame, cujos resultados encontram-se na seo I.
Em seguida, por meio de tcnicas forenses apropriadas, o material original foi
duplicado. Esse processo de duplicao consiste na realizao de cpia integral do material
original para outra mdia de armazenamento. Como medida de segurana, os exames foram
realizados sobre a cpia, preservando-se o original.
O material original foi submetido a um processo de garantia de integridade,
cujo resultado e parmetros utilizados foram exportados na forma de arquivo de texto com
extenso .log para o diretrio principal da mdia tica includa anexa a este Laudo.
Os exames objetivaram a anlise e extrao de contedo do material
examinado. Este processo atingiu no apenas os arquivos diretamente acessveis, mas tambm
aqueles previamente apagados.
Os arquivos de interesse ao apuratrio foram extrados e gravados na mdia
tica anexa, agrupados por categorias.

IV CONCLUSO
Os arquivos de interesse ao apuratrio foram selecionados, agrupados e
gravados na mdia tica anexa sob as seguintes categorias:
a) Documentos: arquivos contendo documentos no formato MS Word.
b) Planilhas: arquivos contendo planilhas no formato MS Excel.
c) Planilhas com senha: a senha <LALALALAL>
Os arquivos gravados na mdia tica anexa passaram por um processo de
garantia de integridade baseado no algoritmo Secure Hash Algorithm (SHA) de 256 bits, cujo
resultado encontra-se em um arquivo denominado hashes.txt localizado no diretrio
principal da mdia tica. Por sua vez, o arquivo hashes.txt passa pelo mesmo processo, cujo
resultado encontra-se na Tabela 1.
Tabela 1 Resultado do clculo de integridade do arquivo hashes.txt
CDIGO HASH

Dessa forma, qualquer alterao do contedo anexo (remoo, acrscimo,


alterao de arquivos ou parte de arquivos), bem como sua substituio por outro com teor
diferente, pode ser detectada o APNDICE A contm informaes adicionais sobre a
garantia de integridade.

68

Para visualizar o contedo da mdia, basta coloc-la em uma unidade de leitura


apropriada e abrir o arquivo "index.htm" utilizando um navegador de Internet, como o
Microsoft Internet Explorer ou o Mozilla Firefox. A partir desse arquivo pode-se visualizar o
contedo gravado na mdia, navegando com o auxlio do menu localizado esquerda.

Com o Laudo, os Peritos devolvem o material descrito na seo I no mesmo


estado em que foram recebidos. Nada mais havendo a lavrar, os Peritos encerram o presente
laudo que, elaborado em XX pginas, incluindo um apndice e uma mdia tica em anexo,
lidos e achados conformes, assinam acordes.

XXXXXXXX XXXXXX XXXXX


PERITO CRIMINAL FEDERAL
Matrcula: XXXXX

YYYYYYY YYYYYYYY YYYYYYY


PERITO CRIMINAL FEDERAL
Matrcula: XXXXX

69

APNDICE A Consideraes sobre mdias ticas anexas

A.1 O Algoritmo SHA-256 (Secure Hash Algorithm - 256 bits)


O SHA-256 um algoritmo que, a partir de uma mensagem de entrada de
qualquer tamanho, gera uma sada de tamanho fixo de 256 bits (conhecido como resumo, hash ou
cdigo de integridade), calculada a partir do contedo dessa mensagem.
A segurana do procedimento consiste no fato de ser computacionalmente invivel
produzir duas mensagens distintas com o mesmo cdigo de integridade ou, a partir do cdigo de
integridade, obter a mensagem de entrada.
Cada arquivo contido na mdia tica tratado como se fosse uma mensagem que
passa individualmente pelo processamento do algoritmo. Ao final, obtm-se a relao dos nomes
dos arquivos e seus respectivos cdigos de integridade em formato hexadecimal.
Cada mdia tica anexa contm um arquivo denominado hashes.txt que contm
a relao supracitada (listagem dos nomes dos arquivos precedidos do respectivo cdigo de
integridade). Por sua vez, o cdigo de integridade do arquivo hashes.txt encontra-se na seo IV
deste Laudo.
Dessa forma, o acrscimo, alterao ou remoo de um nico caractere em um
arquivo condio suficiente para que o cdigo de integridade gerado seja diferente, tornando
detectvel a alterao do contedo da mdia tica.
A.2 Verificao de integridade
Para verificar a integridade das mdias ticas anexas, qualquer programa que
suporte o algoritmo SHA-256 pode ser utilizado. O processo de verificao envolve duas etapas
que devem ser executadas para cada mdia: (1) clculo da integridade do arquivo hashes.txt e
comparao com o resultado presente neste Laudo e (2) clculo da integridade dos arquivos
contidos na mdia e comparao com os registrados no arquivo hashes.txt.
Um dos programas que pode ser utilizado para realizar essa verificao o FSUM,
disponvel gratuitamente na Internet no endereo http://www.slavasoft.com. Utilizando esse
programa, as seguintes etapas devem ser executadas (assumindo que a mdia tica a ser verificada
esteja na unidade "d:"):
a) etapa 1: na linha de comando, a partir do diretrio do programa, digitar: fsum
-dd: sha256 hashes.txt
b) etapa 2: em seguida, digitar: fsum -jf -dd: -c hashes.txt
O resultado da etapa (1) deve ser idntico ao presente na seo IV deste Laudo. O
resultado da etapa (2) deve ser a correta verificao de todos os arquivos presentes na mdia, sem
nenhuma falha. Com isso, garante-se a autenticidade da mdia e a integridade do seu contedo.

70

71

8.

ANEXO II

Virustotal is a service that analyzes suspicious files and URLs


and facilitates the quick detection of viruses, worms, trojans,
and all kinds of malware detected by antivirus engines. More
information...
0 VT Community user(s) with a total of 0 reputation credit(s) say(s) this
sample is goodware. 0 VT Community user(s) with a total of 0 reputation
credit(s) say(s) this sample is malware.
File name:
convite.com
Submission date:
2011-06-22 01:42:28 (UTC)
Current status:
finished
Result:
29/ 42 (69.0%)
Antivirus
AhnLab-V3
AntiVir
Antiy-AVL
Avast
Avast5
AVG
BitDefender
CAT-QuickHeal
ClamAV
Commtouch
Comodo
DrWeb
eSafe
eTrust-Vet
F-Prot
F-Secure
Fortinet
GData
Ikarus
Jiangmin
K7AntiVirus
Kaspersky
McAfee
McAfee-GW-Edition

Version
2011.06.22.01
7.11.10.61
2.0.3.7
4.8.1351.0
5.0.677.0
10.0.0.1190
7.2
11.00
0.97.0.0
5.3.2.6
9148
5.0.2.03300
7.0.17.0
36.1.8399
4.6.2.117
9.0.16440.0
4.2.257.0
22
T3.1.1.104.0
13.0.900
9.106.4831
9.0.0.837
5.400.0.1158
2010.1D

Last Update
2011.06.22
2011.06.21
2011.06.22
2011.06.21
2011.06.21
2011.06.21
2011.06.22
2011.06.21
2011.06.22
2011.06.22
2011.06.22
2011.06.22
2011.06.21
2011.06.21
2011.06.21
2011.06.22
2011.06.22
2011.06.22
2011.06.22
2011.06.20
2011.06.21
2011.06.21
2011.06.22
2011.06.21

VT Community

not reviewed
Safety score: -

Result
Downloader/Win32.Dloadr
TR/Dldr.Agent.gljj
Win32:Delf-PHN
Win32:Delf-PHN
Downloader.Delf.12.BC
Gen:Trojan.Heur.GG0@YsZg1RpG
Win32.GenHeur.GG@YsZ
Gen:Trojan.Heur.GG0@YsZg1RpG
W32/DLOADR.AY!tr
Gen:Trojan.Heur.GG0@YsZg1RpG
Trojan-Downloader
Trojan/Chifrax.cvp
UDS:DangerousObject.Multi.Generic
Generic Downloader.x!fpl
Generic Downloader.x!fpl
72

Microsoft
NOD32
Norman
nProtect
Panda
PCTools
Prevx
Rising
Sophos
SUPERAntiSpyware
Symantec
TheHacker
TrendMicro
TrendMicro-HouseCall
VBA32
VIPRE
ViRobot
VirusBuster

1.7000
6227
6.07.10
2011-06-21.01
10.0.3.5
7.0.3.5
3.0
23.63.01.03
4.66.0
4.40.0.1006
20111.1.0.186
6.7.0.1.237
9.200.0.1012
9.200.0.1012
3.12.16.2
9653
2011.6.21.4525
14.0.90.0

2011.06.21
2011.06.22
2011.06.21
2011.06.21
2011.06.21
2011.06.21
2011.06.22
2011.06.21
2011.06.22
2011.06.22
2011.06.22
2011.06.22
2011.06.21
2011.06.22
2011.06.21
2011.06.22
2011.06.21
2011.06.21

Trojan:Win32/Dynamer!dtc
a variant of Win32/TrojanDownloader.Delf.QEV
W32/Suspicious_Gen.PKAT
Trojan-PWS/W32.QQPass.529408
Generic Trojan
Downloader.Generic
Mal/Generic-L
Downloader
TROJ_DLOADR.AY
TROJ_DLOADR.AY
TrojanDownloader.Agent.gboy
Trojan.Win32.Generic!BT
Backdoor.Win32.Hupigon.528384.F
Trojan.DL.Agent!vH/IwjyPGlQ

MD5 : 6af757c466f2b4513aded2dae23a2125
SHA1 : 7cb156e9cd8236b0c5b9244d806f8c72548322ef
SHA256: 7e09730269744cd60c8a3c740773cfe05451b6c6d7baa269db833b7f854cfdd2
VT Community
This file has never been reviewed by any VT Community member. Be the first one to comment
on it!
ATTENTION: VirusTotal is a free service offered by Hispasec Sistemas. There are no
guarantees about the availability and continuity of this service. Although the detection rate
afforded by the use of multiple antivirus engines is far superior to that offered by just one
product, these results DO NOT guarantee the harmlessness of a file. Currently, there is not
any solution that offers a 100% effectiveness rate for detecting viruses and malware.

73

Das könnte Ihnen auch gefallen