SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
PERÍCIA FORENSE COMPUTACIONAL:
Análise de Malware em Forense computacional utilizando
de sistema operacional GNU/Linux
Alex Sander de Oliveira Toledo1
Robert de Souza2

RESUMO: O presente trabalho apresenta as boas práticas na coleta, restauração, identificação, preservação, documentação, análise dos dados periciais,
apresentação de vestígios, evidências, provas digitais e interpretação aplicadas aos componentes físicos ou dados processados e/ou armazenados nas mídias
computacionais, garantindo assim o valor jurídico das provas eletrônicas.
PALAVRAS-CHAVE: Perícia forense computacional, Malware, Linux.

1 INTRODUÇÃO

“[...] Não há padrões internacionais para o tratamen-

Segundo Melo (2009), a informação é hoje um dos ativos

to de dados periciais, embora existam documentos

mais importantes das corporações, sendo de suma importân-

de boas práticas dedicados a classificar respostas a

cia que sua integridade seja mantida. Em um passado não

incidentes de segurança e um capítulo da ISO NBR

muito distante um servidor mal configurado representava ris-

IEC17799:2005 que endereça o assunto [ABNT].”

cos, mas estes eram confinados dentro dos limites da LAN da
corporação.

É importante empregar boas práticas na coleta, restaura-

Com o advento da Internet estas fronteiras foram elimina-

ção, identificação, preservação, documentação, análise dos

das, facilitando muito a ocorrência de crimes eletrônicos, onde

dados periciais, apresentação de vestígios, evidências, provas

o criminoso e a vítima podem encontrar-se em localidades ge-

digitais e interpretação aplicadas aos componentes físicos ou

ográficas diferentes, até mesmo em países distintos. O cres-

dados processados e/ou armazenados nas mídias computa-

cimento do número de computadores interconectados (Inter-

cionais, garantindo assim o valor jurídico das provas eletrônicas

net) e o aumento de softwares com finalidades ilícitas de fácil

captadas no processo de perícia forense computacional.

utilização disponíveis na rede aumentaram significativamente o
número de ataques.

Segundo Melo (2009), as principais fontes de dados periciais encontram-se nas estações de trabalho em ambiente

Ainda Segundo Melo (2009), por mais seguro que seja um

computacional distribuído, servidores, locais na internet, em lo-

Firewall ou um sistema de segurança, os sistemas operacionais

cal remoto na Internet, sistemas de informação, e equipamen-

estão sempre sujeitos a falhas ainda desconhecidas, por este

tos eletrônicos programáveis.

motivo sugere-se prudência ao afirmar que um sistema está
imune a invasões ou invulneráveis.

Segundo Tanenbaum (2003), existe uma diferença notória
entre Sistemas de Ambientes Computacional Distribuído e Sis-

As técnicas forenses são imprescindíveis para identificar

tema de Redes de Computadores, ou seja, não se pode con-

se um computador foi invadido, determinando de que forma

fundir uma unidade de controle (servidor) e vários dispositivos

foi alterado, estabelecendo critérios para preparar o ambiente

escravos com uma rede. Rede é uma visão conceitual aplicável

visando registrar os dados periciais, facilitar a identificação do

a um grande computador com terminais e/ou muitos micro-

invasor e amparar as medidas legais a serem tomadas para

computadores e impressoras conectados.

caso a resposta seja positiva, pois a invasão constitui crime
eletrônico.
O valor jurídico de provas eletrônicas manipuladas de forma incorreta, sem os padrões previstos e devidamente estabelecidos podem ser facilmente contestadas.
Segundo Melo (2009, p. 1), não há padrões internacionais
para o tratamento de dados periciais:

Um sistema computacional é considerado Distribuído
quando a camada de rede não está implementada, ou seja,
a interface de rede ativa pode-se comunicar diretamente com
todos os demais computadores.
Segundo Melo (2009), devido à evolução dos tipos de Malwares (softwares maliciosos) as soluções de seguranças devem
sempre ser revistas, os fabricantes de Sistemas Operacionais e

172 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
Softwares de Segurança sempre disponibilizam novas soluções.
Caso um invasor utilize de técnicas clássicas, como armazenar, manter, e ou esconder ferramentas anti-forense durante
sua ação em diretórios clássicos como /tmp, um perito pode
facilmente localizar evidências atuando apenas com binários

para executar ações maliciosas em um computador. O Malware contém ameaças reais de vários tipos e propósitos.” (MELO,
2009, p.10).
Segundo Brian, James e George (2003, p.194) a respeito
dos Cavalos de Tróia:

compilados estaticamente, neste caso imagina-se que rootkits

“Os cavalos de troia são programas criados para contor-

baseados em técnicas arrojadas de LKM (Loadable Kernel Mo-

nar a segurança da sua máquina, mas disfarçados como

dule) não sejam utilizadas.

algo benigno. Assim como a criação grega, um cavalo de

Segundo Melo (2009, p. 67) em relação à técnicas mais
arrojadas:

Tróia do computador não pode fazer nada sozinho, mas
precisa contar com o usuário ajudando-o a cumprir seu

“Caso seja constatado o uso de técnicas mais arroja-

destino. Existe três usos principais da palavra troiano no

das, os dados levantados durante uma Live Análise são

linguajar moderno do computador:

facilmente contestadas. Somente durante a Post Mortem

Programa de cavalo de Tróia: um programa malicioso que

Análise, os resultados são realmente confiáveis, pois du-

se disfarça de uma coisa, mas contorna sua segurança em

rante a Live Analise possivelmente as chamadas ao sis-

segredo. Esse é o uso mais comum da palavra.

tema podem ser interceptadas.”

Código-fonte troiano: uma cópia do código-fonte do programa que foi modificada para conter alguma porta dos

Segundo Farmer e Venema (2007, p. 174-175), os passos
para coleta de dados são:

fundos ou brecha na segurança.
Binários troianos: Após uma invasão um atacante pode

“(...) O(s) computador(es) em questão deve(m) ser

substituir binários do sistema por versões que contêm pos-

colocado(s) off-line. Há alguns potenciais problemas

tar dos fundos ou que ocultam suas atividades.”

com isso, porque o sistema talvez espere estar on-line.
Portanto, colocar a máquina off-line poderia destruir ves-

Segundo MELO (2009, p. 10), define-se Vírus:

tígios à medida que o sistema gera erros, repetidamente

“Programa que pode atuar como um binário indepen-

tenta novas conexões ou, em geral, altera seu estado.

dente ou alojar-se em um programa executável, tornan-

Alternativamente, você poderia tentar cortar a conexão

do-o um arquivo binário infectado. Em sua engenharia,

da máquina com o roteador e mantê-la em uma rede lo-

não é definido um vetor de transmissão automatizado.

cal, mas os serviços de DNS e serviços de rede e outros

Depende da execução do programa, do arquivo hospe-

sistemas na mesma área de rede ainda podem causar

deiro ou de um meio, como um cliente de correio, para

problemas.

que possa voltar a propagar e dar continuidade ao processo de infecção.”

À medida que você avança, é necessário monitorar tudo o
que você digita ou faz. Em geral é uma situação do tipo “coletar

Segundo Melo (2009), o Worm é um tipo de Malware capaz

primeiro, analisar mais tarde”. Anote as configurações de har-

de se propagar automaticamente por meio de redes enviando

dware, software, sistemas e rede que estão definidas.”

copias de si mesmo para outros computadores, esta propaga-

O autor aponta estas considerações devido à divergência

ção está prevista em sua engenharia, e se dá por meio da explo-

de opiniões sobre o assunto, pois alguns peritos consideram o

ração de vulnerabilidades existentes ou falhas nas configurações

fato de desligar a máquina um grave erro, já que alguns invaso-

de softwares instalados nos computadores, criando um cenário

res podem utilizar de técnicas mais arrojadas e plantar bombas

em que não é necessário ser executado para se propagar, po-

para que caso a máquina seja retirada da rede ou desligada,

dendo propagar-se em qualquer tipo de sistema operacional.

executem comandos, e desta forma eliminem vários vestígios
e destrua provas que seriam de grande valor no laudo pericial.

Ainda Segundo MELO (2009, p. 12) sobre Rootkits e Spywares:
“Rootkit – Tipo de Malware muito arrojado, sua engenharia normalmente prevê a instalação de binários, mó-

2 IDENTIFICAÇÃO E DESCRIÇÃO DOS MALWARES

dulos, bibliotecas que disponibilizam os mais variados

“Malware pode ser definido como Malicious Software ou

recursos como: Backdoors, Cleanlogs, Keyloggers.

Software Malicioso, ou seja é um termo genérico que engloba

Usa técnicas para esconder processos e outras infor-

todos os tipos de programas especificamente desenvolvidos

mações inerentes ao mecanismo, o que dificulta sua

PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 173
identificação, além de sua instalação se dar de forma

lhor estruturarmos o processo de investigação e análise de

automatizada.

Malwares, o dividiremos em cinco fases: Preservação e análi-

Normalmente são instalados logo após o comprometi-

se de dados voláteis, Análise de memória, Análise de discos,

mento de um computador por um invasor.

Análise estática de Malware e Análise dinâmica de Malware.

Spyware – Uma categoria muito peculiar de Malware,
que usufrui as capacidades dos browsers em execu-

3.1 PRESERVAÇÃO E ANÁLISE DE DADOS VOLÁTEIS

tar aplicações. A maioria quase absoluta desse tipo

Segundo Farmer e Venema (2007), em uma análise post-

de Malware é escrita tendo como alvo sistemas Mi-

mortem, tem-se pouco tempo para coletar informações en-

crosoft.”

quanto a máquina comprometida permanece em execução,
para uma coleta eficaz os autores utilizam a ferramenta grave-

Portanto estes Malwares colocam em risco os princípios
básicos da segurança (integridade, disponibilidade e confia-

robber (ladrão de túmulos) do Coroner’s Toolkit, que é otimizada para este cenário.

bilidade) estas ameaças podem trazer diversos prejuízos às

A grave-robber captura informações voláteis sobre proces-

organizações, prejuízos não só financeiros, mas também de

sos e conexões de rede, atributos de arquivo como registros

perda parcial ou total de seus ativos da Tecnologia da Infor-

de data/hora de acesso, arquivos de configuração, log e outros

mação e Comunicação (TIC).

tipos de arquivos. O resultado é armazenando em um banco
de dados que deve ser transferido para um sistema de análise.

3 DESCOBERTA DO MALWARE
Quando é descoberto o Malware em um sistema, há
muitas decisões e ações que devem ser tomadas. Para me-

Segundo MELO (2009, p. 36), quanto ao cuidado na execução das ferramentas de análise Live Forense:
O conjunto de ferramentas selecionadas deve ser compilado
estaticamente para compor o ferramental de Resposta de Incidente

Esta abordagem captura o estado volátil do processo,
mas há desvantagens, se o kernel foi subvertido, as informações podem estar incompletas ou corrompidas.

ção para tratar combinações da RAM, espaço de troca, ROM,
NVRAM e outros recursos de memória. O gerenciador de memória que executa no kernel, trata a alocação e desalocação da
memória em um computador.

que deverá ser utado na Live Forense. A compilação da ferramenta

Segundo Melo (2009), a memória principal contém todo tipo

no modo estático a partir do código fonte gera um binário que não

de informação volátil, como informações de processos que es-

utiliza as bibliotecas dinâmicas do sistema. Adotando-se essa pre-

tejam em execução, dados que estão sendo manipulados e que,

caução o binário alojado em CDROM se torna imune a tentativas de

muitas vezes ainda não foram salvos em disco e informações no

inoculação de código por programas maliciosos.

sistema operacional.

3.2 ANÁLISE DE MEMÓRIA

RAM, destacando os arquivos /dev/kmem que têm as informa-

O autor ainda exemplifica a coleta de evidência da memória
Segundo Farmer e Venema (2007), todos os sistemas operacionais modernos utilizam memória virtual como uma abstra-

ções de memória da área de kernel e /dev/mem, que é toda a
memória da máquina:

174 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
# /cdrom/dd if=/dev/mem | cdrom/nc <ip> <porta>

Esse método cria uma cópia idêntica bit a bit de cada

# /cdrom/dd if=/dev/kmem | cdrom/nc <ip> <porta>

sistema de arquivos, incluindo todas as meta-informa-

# /cdrom/dd if=/dev/rswap | cdrom/nc <ip> <porta>

ções e todas as informações que permanecem em um

# /cdrom/dd if=/dev/kcore | cdrom/nc <ip> <porta>

espaço não-alocado no fim dos arquivos, entre os arquivos, nos blocos de inode não-alocados e assim por

No exemplo acima o “#” informa que o usuário logado é o

diante. Isso em geral é feito com o comando dd.

root (super usuário do sistema), o “/cdrom” o diretório onde o

Um benefício importa dessa abordagem é que ela é

ferramental de resposta a incidente foi instalado para a utilização

neutra em relação ao sistema de arquivos. Por exemplo,

em “Live Forense”, o comando “dd if=/dev/mem | /cdrom/nc

a mesma técnica pode ser utilizada para copiar tanto

<ip> <porta> transfere uma imagem do conteúdo da memória

partições UNIX quanto partições Windows. A desvanta-

RAM, área de kernel, e swap para a máquina do perito através

gem é que os dados armazenados entre e fora das par-

do ip e da porta estipulada nos comandos citados.

tições não são analisados. Os fragmentos de comando
a seguir lêem a primeira partição UNIX no primeiro disco.
Linux 		

3.3 ANÁLISE DE DISCO
Segundo Farmer e Venema (2007), há diversas maneiras de se
duplicar as informações sobre o sistema de arquivos. Qual método

#dd if=/dev/hda1 bs=100k . . .

Freebsd	 #dd if=/dev/da0s1a bs=100k . . .
Solaris	

#dd if=/dev/dsk/c0t0d0s0 bs=100k . . .

estará disponível dependerá da situação, os dois autores já capturaram informações efetuando o login em uma máquina comprome-

3.4.3 COPIAR DISCO INTEIRO

tida, listando os arquivos para o terminal e registrando essa sessão

Segundo Farmer e Venema (2007), o resultado é uma cópia

com um programa emulador de terminal. Veremos a seguir alguns

idêntica bit a bit de todas as informações acessíveis no disco, in-

métodos para capturar estas informações.

cluindo o espaço de armazenamento antes e depois das partições
de disco. Isso pode ser necessário quando há suspeitas de que os
dados poderiam permanecer ocultos fora das partições de disco.

3.4 CÓPIA DE ARQUIVOS INDIVIDUAIS
Segundo Farmer e Venema (2007), essa é a abordagem

Mais uma vez o “dd” é o comando ideal para realizar esta cópia.

menos precisa, porque só captura o conteúdo dos arquivos. Ne-

Este método possui limitações, ele não lerá os blocos de

nhuma meta-informação é capturada, exceto talvez o tamanho

disco que contém erros e que o hardware silenciosamente rema-

do arquivo. Todas as demais meta-informações são perdidas,

peou para os chamados blocos sobressalentes. Esse método

como posse do arquivo, datas/horas de acesso, permissões etc.

também não fornecerá acesso aos blocos sobressalentes não

Estas informações só não são perdidas quando salvas

utilizados, porque eles residem fora da área normalmente aces-

usando outro meio. Por exemplo, o utilitário grave-robber do

sível ao disco. Os fragmentos de comando a seguir lêem todos

Coroner’s Toolkit que copia os arquivos selecionados (como

os blocos acessíveis no primeiro disco:

arquivos de configuração e registros em log) depois de salvar

Linux 		

#dd if=/dev/hda bs=100k . . .

suas meta-informações em um arquivo chamado body.

Freebsd	

#dd if=/dev/da0 bs=100k . . .

Solaris	

#dd if=/dev/c0t0d0s2 bs=100k . . .

Ainda segundo Farmer e Venema (2007), a exatidão das in-

3.4.1BACKUP
Ainda segundo Farmer e Venema (2007), dependendo do

formações capturadas aumenta na medida em que dependemos

software de backup utilizado, esse método preserva algumas

menos da integridade do sistema comprometido. Por exemplo,

meta-informações como posse, informações sobre links físicos

quando arquivos individuais são capturados enquanto ainda estão

e a última data/hora da modificação, mas não captura a data/

conectados à máquina da vítima, o aplicativo subvertido ou o sof-

hora do último acesso de leitura. Utilitários UNIX comumente

tware de kernel subvertido pode distorcer esse resultado. A subver-

utilizados são tar, cpio e dump. A desvantagem de fazer um ba-

são é muito menos provável quando utilizamos um procedimento

ckup é que o que você vê é tudo o que você obtém. Backups

de baixo nível de geração de imagens de disco, com a unidade de

não capturam as informações de arquivos excluídos

disco conectada a uma máquina confiável.

3.4.2 CÓPIA DE PARTIÇÕES DE DISCOS INDIVIDUAIS

3.5 ANÁLISE ESTÁTICA DE MALWARE

Segundo Farmer e Venema (2007, p. 55), a respeito da cópia de partições:

Segundo Farmer e Venema (2007, p. 120), sobre as técnicas de análise estática:

PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 175
“[...] Desassemblagem de programa (converter um ar-

A primeira etapa consiste na coleta de evidências antes

quivo de programa em uma listagem de intrusões de

do desligamento do sistema da fonte elétrica, que tem

linguagem de máquina), descompilação de programa

por objetivo registrar o estado do sistema, e a segunda

(converter instruções de linguagem de máquina no códi-

etapa, após o desligamento.

go-fonte equivalente da linguagem de nível mais alto) e

A segunda etapa, pelo termo oriundo do inglês, Network

análise estática (examinar um programa sem realmente

Forensic, que consiste na coleta de análise de informa-

executá-lo)”

ções de atividade de rede, tanto do servidor em questão, como dos demais ativos de redes que tenham infor-

A desassemblagem de programa é um recurso padrão de

mações pertinentes.

todo programa depurador importante, entretanto ferramentas

E por último, a etapa em que todas as informações reu-

que descompilam programas em linguagem de alto nível como

nidas nas etapas anteriores são cruzadas com informa-

C só existem para ambientes limitados. A ameaça da engenharia

ções identificadas na análise das imagens de mídias

reversa também apresenta um problema para programadores

coletadas. Essa última fase é tecnicamente conhecida

de aplicativos Java.

como Post Mortem Analysis.

A preocupação com o furto de propriedade intelectual talvez

Tanto na Live Analysis, na Network Forensic como na

tenha muito a ver com essa disponibilidade limitada de descom-

Post Mortem Analysis, o objetivo é a coleta do máximo de

piladores.

evidências digitais. O termo Dado pericial digital (pode
ser um vestígio, evidência ou mesmo se consolidar em

3.6 ANÁLISE DINÂMICA DE MALWARE
Segundo Farmer e Venema (2007, p. 104), sobre os perigos
da análise dinâmica:
“Uma maneira de descobri o propósito de um programa

prova durante uma perícia) refere-se a toda e qualquer
informação digital capaz de demonstrar que ocorreu um
incidente de segurança ou mesmo um crime, dentro do
contexto da Perícia Computacional.

desconhecido é simplesmente executá-lo e ver o que
acontece. Há vários problemas potenciais com essa abor-

Segundo Farmer e Venema (2007), a sabedoria tradicional da

dagem. O programa poderia executar de uma maneira

computação forense, conta com métodos muito conservadores, ra-

confusa e destruir todas as informações na máquina [..]”

ramente nada além de desligar um computador e fazer uma cópia
de disco. Caso seja necessário assegurar que os dados coletados

“Em vez de executar um programa desconhecido em uma

sejam otimizados para poderem ser aceitos em um tribunal e só

ambiente onde eles podem causar danos, é mais seguro exe-

conseguir capturar parte deles, então uma metodologia mais cau-

cutar esse programa em uma caixa de areia. O termo caixa de

telosa pode ser a melhor opção em alguns casos.

areia (sandbox) foi emprestado da balística, na qual as pessoas
testam armas atirando em uma caixa de areia de modo que as

Ainda segundo Farmer e Venema (2007, p. 172), sobre as
técnicas conservadoras:

balas não possam causar nenhum dano. Uma caixa de areia de

“Infelizmente, essas técnicas conservadoras não têm uma

software é um ambiente controlado para executar o software.”

grande quantidade de informações potencialmente úteis

Ainda segundo Farmer e Venema (2007), as caixas de

sobre a situação, como processos em execução e kernels,

areia podem ser implementadas de diversas maneiras, a

estado de rede, dados na RAM e muito mais. Somente um

abordagem mais simples é o de cordeiro sacrificial, uma má-

entendimento limitado pode surgir do exame de um disco

quina real, mas descartável, com acesso limitado à rede ou

morto. E, embora informações dinâmicas talvez sejam um

simplesmente sem acesso à rede.

pouco mais voláteis e, portanto suspeitas, quaisquer condenações com base em uma única série de leituras dos

4 COLETA DO MALWERE

dados também são suspeitas.[...]”

Segundo Melo (2009), um perito forense, ao iniciar uma perícia
no sistema que teve uma segurança violada, busca evidências que

5 ANÁLISE DO ARQUIVO

caracterizem e possibilitem identificar como e o quanto a violação

Segundo Farmer e Venema (2007), pequenos programas

afetou as informações e o próprio Sistema Operacional.
Ainda segundo MELO (2009, p. 33), a coleta de evidências
pode ser dividida, de forma macro, em três etapas:

podem gerar muitos problemas, como observado abaixo, o código de um programa de backdoor recuperado após um ataque:
scanf (“%s”, buffer);

176 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
if (strcmp(password, buffer)==0){

6 Laboratório

puts(“.”);

Um cenário de análise de servidor foi montado para exem-

setuid(0);

plificar a perícia forense computacional na busca por Malwares

setgid(0);

em servidores Linux, a ferramenta utilizada para a perícia é o

execl(“/bin/sh”,“sh”,(char *)0);

Sistema Operacional Back Track.

}

Conforme os autores mencionados neste trabalho, parto do

return (0);

princípio que todas as atividades para manter o sistema integro
e com o mínimo possível de perda de dados voláteis tenham

Com exceção da chamada de função de comparação de

sido realizadas como: a decisão de remover o cabo de rede ou

string strcmp(), nenhuma chamada de função é testada quanto

não do servidor que sofreu a intrusão, se houve alguma interven-

a retornos de erro. Se uma operação falhar o programa simples-

ção por parte de outro profissional após a identificação do pro-

mente prossegue. Erro de leitura de entrada a partir de scanf(),

blema e se este realizou alguma atividade e quais, que a cópia

caso todas as operações falhem o programa termina silencio-

dos dados da memória tenham sido realizadas em local seguro

samente.

e fora da máquina periciada, que uma imagem bit a bit do disco
tenha sido efetuada.

O chkrootkit é um detector de presença de  de rootkits em

rootkits na máquina e atualmente é capaz de identificas mais de

sistemas baseados em Unix. O software  utiliza cerca de nove ti-

60 tipos de ameaças diferentes como rootkits, worms, trojans,

pos de análise para detectar traços de atividade ou presença de

dentre outros.

PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 177
Iniciando o chkrootkit o sistema informa os parâmetros que
podem ser utilizados na detecção de Malwares.

Executando o chkrootkit ele checa o sistema em busca de
Malwares e já exibe o resultado na tela informando se o arquivo

Neste ponto fazemos uma varredura em busca de Malwares
alojados na máquina.

Com esta atividade conseguimos identificar a presença ou
não do Malware no sistema operacional.

está ou não infectado.

178 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
O rkhunter é outra ferramenta de grande importância na detecção de rootkits no sistema, este avisa caso haja arquivos suspeitos no sistema.

Um dos parâmetros do rkhunter é o “--update”, que atualiza sua base de dados de Malwares.
Sua execução se da através do comando “rkhunter --check”.

Os arquivos que contiverem a cor verde – not found e ok – estão normais. Já aqueles que forem marcados como
“Warning” estão comprometidos e serão exibidos na cor vermelha, sendo assim deve-se proceder a remoção do rootkit.
Antes de executar a remoção o Malware deve ser isolado em um dispositivo de armazenamento que seja externo ao disco da
máquina comprometida, onde não possa mais gerar danos e possibilite uma análise posterior, talvez até mesmo sua execução em
ambiente fechado e preparado para tal.

PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 179
O Malware deve ser removido do sistema operacional e a vulnerabilidade que permitiu sua inserção deve ser tratada, para que
esta falha não seja explorada novamente por um atacante.

O relatório final da execução e da análise do Malware fica
registrada em /var/log/rkhunter.log.
O Malware encontrado é um Backdoor que permite um

.echo “Iniciando via NETCAT da Backdoor”;
.passthru (“nc –l –p 65321 –e /Bin/sh”);
.echo “Backdoor Instalada!!!>;-)”;

acesso do atacante à máquina comprometida de forma rápida

.echo “Passaporte para sistema disponível!!! >;-)”;

sem a necessidade de realizar todos os passos para sua intru-

?>

são, este código mantém uma porta de comunicação aberta entre o atacante e a máquina comprometida.

7 CONCLUSÃO

Abaixo um trecho do código da Backdoor utilizada para o

A perícia forense computacional é um instrumento im-

acesso do atacante à máquina através de uma falha de segu-

prescindível para identificar se um sistema computacional foi

rança do PHP:

invadido, e de que forma foi alterado, estabelecendo critérios

<?php

para preparar o ambiente visando registrar os dados periciais,

.passthru(“date”);

facilitar a identificação do invasor e amparar as medidas legais

180 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
a serem tomadas diante da intrusão.
O valor jurídico de provas eletrônicas manipuladas de forma
incorreta, sem os padrões previstos e devidamente estabelecidos pode ser facilmente contestado, e toda atividade do perito
deve ser acompanhada por um ou mais profissionais da TIC da
empresa que o contratou para a perícia, isso para assegurar a
integridade não só da coleta dos dados, mas também para resguardar o perito, evitando assim que de perito torne-se réu.
Enfim, a utilização de ferramentas que auxiliam e dão suporte à investigação é de suma importância, pois estas conseguem
garimpar informações de forma eficaz e ágil, primando pela integridade e minimizando os riscos da perda de dados voláteis.
A partir deste trabalho discutimos e demonstramos as técnicas e procedimentos da perícia forense computacional que auxiliam na análise de sistemas computacionais comprometidos,
apontando as melhores práticas na atualidade e metodologias
a serem aplicadas na descoberta, coleta e análise de Malwares.
REFERÊNCIAS BIBLIOGRÁFICAS
FARMER, Dan; VENEMA, Wietse. Perícia Forense Computacional: Teoria e prática aplicada. São Paulo: Pearson Prentice Hall, 2007.
MELO, Sandro. Computação Forense com Software Livre: Conceitos, técnicas, ferramentas e estudos de casos. 1. ed. Rio de Janeiro: Alta
Books. 2009.
TANENBAUM, Andrew S. Redes de Computadores. 4. ed. Campus
(Elsevier), 2003.
HATCH, Brian; B. LEE, James; KURTZ, George. Segurança contra Hackers Linux. 2. ed. São Paulo: Futura, 2003.
FILHO, João Eriberto Mota. Forense computacional utilizando ferramentas GNU/Linux. Brasília: Serpro, 10 de Novembro de 2009. Palestra ministrada no CISL – Comitê Técnico de Implantação de Software
livre, 10/11/2011. Forense computacional utilizando ferramentas GNU/
LINUX. Disponível em: http://streaming.serpro.gov.br/cisl/forense.html.

NOTAS DE RODAPÉ
1 Coordenador e Professor do Curso de Bacharelado em Sistemas de
Informação do Centro Universitário Newton Paiva
2 Graduando em Bacharelado em Sistemas de Informação do Centro
Universitário Newton Paiva

PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 181

Más contenido relacionado

La actualidad más candente

La actualidad más candente (19)

Seguranca Cap09 Tanenbaum
Seguranca Cap09 TanenbaumSeguranca Cap09 Tanenbaum
Seguranca Cap09 Tanenbaum
 
SegurançA Na Internet E Nos Computadores
SegurançA Na Internet E Nos ComputadoresSegurançA Na Internet E Nos Computadores
SegurançA Na Internet E Nos Computadores
 
Javier Flavio
Javier FlavioJavier Flavio
Javier Flavio
 
Princípios básicos da análise de malware
Princípios básicos da análise de malwarePrincípios básicos da análise de malware
Princípios básicos da análise de malware
 
A história dos vírus de computador
A história dos vírus de computadorA história dos vírus de computador
A história dos vírus de computador
 
Fasciculo inf segredes_unidade_3
Fasciculo inf segredes_unidade_3Fasciculo inf segredes_unidade_3
Fasciculo inf segredes_unidade_3
 
Revisão montagem
Revisão montagemRevisão montagem
Revisão montagem
 
anti-virus
anti-virusanti-virus
anti-virus
 
Malware
MalwareMalware
Malware
 
Antivírus
AntivírusAntivírus
Antivírus
 
Seguranadigital 090905102626-phpapp01
Seguranadigital 090905102626-phpapp01Seguranadigital 090905102626-phpapp01
Seguranadigital 090905102626-phpapp01
 
181554969 protecao-seguranca
181554969 protecao-seguranca181554969 protecao-seguranca
181554969 protecao-seguranca
 
Vírus e Antivírus
Vírus e AntivírusVírus e Antivírus
Vírus e Antivírus
 
Vírus De Computador
Vírus De ComputadorVírus De Computador
Vírus De Computador
 
O que é um vírus informático
O que é um vírus informáticoO que é um vírus informático
O que é um vírus informático
 
Snort
SnortSnort
Snort
 
Anti-Vírus
Anti-VírusAnti-Vírus
Anti-Vírus
 
Artigo Do Cassio
Artigo Do CassioArtigo Do Cassio
Artigo Do Cassio
 
Vírus de computador ( aline e manuela)
Vírus de computador ( aline e manuela)Vírus de computador ( aline e manuela)
Vírus de computador ( aline e manuela)
 

Similar a Pdf e5-ss28

Segurança dos Sistemas Operativos
Segurança dos Sistemas OperativosSegurança dos Sistemas Operativos
Segurança dos Sistemas OperativosPedro Marmelo
 
A seguranca dos sistemas operativos
A seguranca dos sistemas operativosA seguranca dos sistemas operativos
A seguranca dos sistemas operativosRodrigovieira99
 
Segurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de ComputadoresSegurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de ComputadoresBruno Dos Anjos Silveira
 
Desenvolvimento de exploits
Desenvolvimento de exploitsDesenvolvimento de exploits
Desenvolvimento de exploitsNaraBarros10
 
Aula 5 - Segurança da informação
Aula 5 - Segurança da informaçãoAula 5 - Segurança da informação
Aula 5 - Segurança da informaçãoLucasMansueto
 
Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Adriano Balani
 
Apresentação sobre segurança de redes
Apresentação sobre segurança de redesApresentação sobre segurança de redes
Apresentação sobre segurança de redesLuiz Mário Pina
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2Felipe Santos
 
Seguranca da informação1
Seguranca da informação1Seguranca da informação1
Seguranca da informação1FACI
 
Seguranca da informação1
Seguranca da informação1Seguranca da informação1
Seguranca da informação1FACI
 
Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012TI Safe
 
Palestra cnasi 2013 s.video
Palestra cnasi 2013 s.videoPalestra cnasi 2013 s.video
Palestra cnasi 2013 s.videoAndre Takegawa
 
Trabalho Sobre Os VíRus
Trabalho Sobre Os VíRusTrabalho Sobre Os VíRus
Trabalho Sobre Os VíRusAna Rita
 

Similar a Pdf e5-ss28 (20)

Segurança dos Sistemas Operativos
Segurança dos Sistemas OperativosSegurança dos Sistemas Operativos
Segurança dos Sistemas Operativos
 
A seguranca dos sistemas operativos
A seguranca dos sistemas operativosA seguranca dos sistemas operativos
A seguranca dos sistemas operativos
 
Segurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de ComputadoresSegurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de Computadores
 
Desenvolvimento de exploits
Desenvolvimento de exploitsDesenvolvimento de exploits
Desenvolvimento de exploits
 
Inf seg redinf_semana5
Inf seg redinf_semana5Inf seg redinf_semana5
Inf seg redinf_semana5
 
Aula 5 - Segurança da informação
Aula 5 - Segurança da informaçãoAula 5 - Segurança da informação
Aula 5 - Segurança da informação
 
Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03
 
Trab.adeildo
Trab.adeildoTrab.adeildo
Trab.adeildo
 
Trab.adeildo
Trab.adeildoTrab.adeildo
Trab.adeildo
 
Apresentação sobre segurança de redes
Apresentação sobre segurança de redesApresentação sobre segurança de redes
Apresentação sobre segurança de redes
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2
 
Vírus
VírusVírus
Vírus
 
Exploits
ExploitsExploits
Exploits
 
Seguranca da informação1
Seguranca da informação1Seguranca da informação1
Seguranca da informação1
 
Seguranca da informação1
Seguranca da informação1Seguranca da informação1
Seguranca da informação1
 
Segurança de Rede
Segurança de RedeSegurança de Rede
Segurança de Rede
 
Artigo cientifico
Artigo cientifico Artigo cientifico
Artigo cientifico
 
Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012
 
Palestra cnasi 2013 s.video
Palestra cnasi 2013 s.videoPalestra cnasi 2013 s.video
Palestra cnasi 2013 s.video
 
Trabalho Sobre Os VíRus
Trabalho Sobre Os VíRusTrabalho Sobre Os VíRus
Trabalho Sobre Os VíRus
 

Pdf e5-ss28

  • 1. PERÍCIA FORENSE COMPUTACIONAL: Análise de Malware em Forense computacional utilizando de sistema operacional GNU/Linux Alex Sander de Oliveira Toledo1 Robert de Souza2 RESUMO: O presente trabalho apresenta as boas práticas na coleta, restauração, identificação, preservação, documentação, análise dos dados periciais, apresentação de vestígios, evidências, provas digitais e interpretação aplicadas aos componentes físicos ou dados processados e/ou armazenados nas mídias computacionais, garantindo assim o valor jurídico das provas eletrônicas. PALAVRAS-CHAVE: Perícia forense computacional, Malware, Linux. 1 INTRODUÇÃO “[...] Não há padrões internacionais para o tratamen- Segundo Melo (2009), a informação é hoje um dos ativos to de dados periciais, embora existam documentos mais importantes das corporações, sendo de suma importân- de boas práticas dedicados a classificar respostas a cia que sua integridade seja mantida. Em um passado não incidentes de segurança e um capítulo da ISO NBR muito distante um servidor mal configurado representava ris- IEC17799:2005 que endereça o assunto [ABNT].” cos, mas estes eram confinados dentro dos limites da LAN da corporação. É importante empregar boas práticas na coleta, restaura- Com o advento da Internet estas fronteiras foram elimina- ção, identificação, preservação, documentação, análise dos das, facilitando muito a ocorrência de crimes eletrônicos, onde dados periciais, apresentação de vestígios, evidências, provas o criminoso e a vítima podem encontrar-se em localidades ge- digitais e interpretação aplicadas aos componentes físicos ou ográficas diferentes, até mesmo em países distintos. O cres- dados processados e/ou armazenados nas mídias computa- cimento do número de computadores interconectados (Inter- cionais, garantindo assim o valor jurídico das provas eletrônicas net) e o aumento de softwares com finalidades ilícitas de fácil captadas no processo de perícia forense computacional. utilização disponíveis na rede aumentaram significativamente o número de ataques. Segundo Melo (2009), as principais fontes de dados periciais encontram-se nas estações de trabalho em ambiente Ainda Segundo Melo (2009), por mais seguro que seja um computacional distribuído, servidores, locais na internet, em lo- Firewall ou um sistema de segurança, os sistemas operacionais cal remoto na Internet, sistemas de informação, e equipamen- estão sempre sujeitos a falhas ainda desconhecidas, por este tos eletrônicos programáveis. motivo sugere-se prudência ao afirmar que um sistema está imune a invasões ou invulneráveis. Segundo Tanenbaum (2003), existe uma diferença notória entre Sistemas de Ambientes Computacional Distribuído e Sis- As técnicas forenses são imprescindíveis para identificar tema de Redes de Computadores, ou seja, não se pode con- se um computador foi invadido, determinando de que forma fundir uma unidade de controle (servidor) e vários dispositivos foi alterado, estabelecendo critérios para preparar o ambiente escravos com uma rede. Rede é uma visão conceitual aplicável visando registrar os dados periciais, facilitar a identificação do a um grande computador com terminais e/ou muitos micro- invasor e amparar as medidas legais a serem tomadas para computadores e impressoras conectados. caso a resposta seja positiva, pois a invasão constitui crime eletrônico. O valor jurídico de provas eletrônicas manipuladas de forma incorreta, sem os padrões previstos e devidamente estabelecidos podem ser facilmente contestadas. Segundo Melo (2009, p. 1), não há padrões internacionais para o tratamento de dados periciais: Um sistema computacional é considerado Distribuído quando a camada de rede não está implementada, ou seja, a interface de rede ativa pode-se comunicar diretamente com todos os demais computadores. Segundo Melo (2009), devido à evolução dos tipos de Malwares (softwares maliciosos) as soluções de seguranças devem sempre ser revistas, os fabricantes de Sistemas Operacionais e 172 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
  • 2. Softwares de Segurança sempre disponibilizam novas soluções. Caso um invasor utilize de técnicas clássicas, como armazenar, manter, e ou esconder ferramentas anti-forense durante sua ação em diretórios clássicos como /tmp, um perito pode facilmente localizar evidências atuando apenas com binários para executar ações maliciosas em um computador. O Malware contém ameaças reais de vários tipos e propósitos.” (MELO, 2009, p.10). Segundo Brian, James e George (2003, p.194) a respeito dos Cavalos de Tróia: compilados estaticamente, neste caso imagina-se que rootkits “Os cavalos de troia são programas criados para contor- baseados em técnicas arrojadas de LKM (Loadable Kernel Mo- nar a segurança da sua máquina, mas disfarçados como dule) não sejam utilizadas. algo benigno. Assim como a criação grega, um cavalo de Segundo Melo (2009, p. 67) em relação à técnicas mais arrojadas: Tróia do computador não pode fazer nada sozinho, mas precisa contar com o usuário ajudando-o a cumprir seu “Caso seja constatado o uso de técnicas mais arroja- destino. Existe três usos principais da palavra troiano no das, os dados levantados durante uma Live Análise são linguajar moderno do computador: facilmente contestadas. Somente durante a Post Mortem Programa de cavalo de Tróia: um programa malicioso que Análise, os resultados são realmente confiáveis, pois du- se disfarça de uma coisa, mas contorna sua segurança em rante a Live Analise possivelmente as chamadas ao sis- segredo. Esse é o uso mais comum da palavra. tema podem ser interceptadas.” Código-fonte troiano: uma cópia do código-fonte do programa que foi modificada para conter alguma porta dos Segundo Farmer e Venema (2007, p. 174-175), os passos para coleta de dados são: fundos ou brecha na segurança. Binários troianos: Após uma invasão um atacante pode “(...) O(s) computador(es) em questão deve(m) ser substituir binários do sistema por versões que contêm pos- colocado(s) off-line. Há alguns potenciais problemas tar dos fundos ou que ocultam suas atividades.” com isso, porque o sistema talvez espere estar on-line. Portanto, colocar a máquina off-line poderia destruir ves- Segundo MELO (2009, p. 10), define-se Vírus: tígios à medida que o sistema gera erros, repetidamente “Programa que pode atuar como um binário indepen- tenta novas conexões ou, em geral, altera seu estado. dente ou alojar-se em um programa executável, tornan- Alternativamente, você poderia tentar cortar a conexão do-o um arquivo binário infectado. Em sua engenharia, da máquina com o roteador e mantê-la em uma rede lo- não é definido um vetor de transmissão automatizado. cal, mas os serviços de DNS e serviços de rede e outros Depende da execução do programa, do arquivo hospe- sistemas na mesma área de rede ainda podem causar deiro ou de um meio, como um cliente de correio, para problemas. que possa voltar a propagar e dar continuidade ao processo de infecção.” À medida que você avança, é necessário monitorar tudo o que você digita ou faz. Em geral é uma situação do tipo “coletar Segundo Melo (2009), o Worm é um tipo de Malware capaz primeiro, analisar mais tarde”. Anote as configurações de har- de se propagar automaticamente por meio de redes enviando dware, software, sistemas e rede que estão definidas.” copias de si mesmo para outros computadores, esta propaga- O autor aponta estas considerações devido à divergência ção está prevista em sua engenharia, e se dá por meio da explo- de opiniões sobre o assunto, pois alguns peritos consideram o ração de vulnerabilidades existentes ou falhas nas configurações fato de desligar a máquina um grave erro, já que alguns invaso- de softwares instalados nos computadores, criando um cenário res podem utilizar de técnicas mais arrojadas e plantar bombas em que não é necessário ser executado para se propagar, po- para que caso a máquina seja retirada da rede ou desligada, dendo propagar-se em qualquer tipo de sistema operacional. executem comandos, e desta forma eliminem vários vestígios e destrua provas que seriam de grande valor no laudo pericial. Ainda Segundo MELO (2009, p. 12) sobre Rootkits e Spywares: “Rootkit – Tipo de Malware muito arrojado, sua engenharia normalmente prevê a instalação de binários, mó- 2 IDENTIFICAÇÃO E DESCRIÇÃO DOS MALWARES dulos, bibliotecas que disponibilizam os mais variados “Malware pode ser definido como Malicious Software ou recursos como: Backdoors, Cleanlogs, Keyloggers. Software Malicioso, ou seja é um termo genérico que engloba Usa técnicas para esconder processos e outras infor- todos os tipos de programas especificamente desenvolvidos mações inerentes ao mecanismo, o que dificulta sua PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 173
  • 3. identificação, além de sua instalação se dar de forma lhor estruturarmos o processo de investigação e análise de automatizada. Malwares, o dividiremos em cinco fases: Preservação e análi- Normalmente são instalados logo após o comprometi- se de dados voláteis, Análise de memória, Análise de discos, mento de um computador por um invasor. Análise estática de Malware e Análise dinâmica de Malware. Spyware – Uma categoria muito peculiar de Malware, que usufrui as capacidades dos browsers em execu- 3.1 PRESERVAÇÃO E ANÁLISE DE DADOS VOLÁTEIS tar aplicações. A maioria quase absoluta desse tipo Segundo Farmer e Venema (2007), em uma análise post- de Malware é escrita tendo como alvo sistemas Mi- mortem, tem-se pouco tempo para coletar informações en- crosoft.” quanto a máquina comprometida permanece em execução, para uma coleta eficaz os autores utilizam a ferramenta grave- Portanto estes Malwares colocam em risco os princípios básicos da segurança (integridade, disponibilidade e confia- robber (ladrão de túmulos) do Coroner’s Toolkit, que é otimizada para este cenário. bilidade) estas ameaças podem trazer diversos prejuízos às A grave-robber captura informações voláteis sobre proces- organizações, prejuízos não só financeiros, mas também de sos e conexões de rede, atributos de arquivo como registros perda parcial ou total de seus ativos da Tecnologia da Infor- de data/hora de acesso, arquivos de configuração, log e outros mação e Comunicação (TIC). tipos de arquivos. O resultado é armazenando em um banco de dados que deve ser transferido para um sistema de análise. 3 DESCOBERTA DO MALWARE Quando é descoberto o Malware em um sistema, há muitas decisões e ações que devem ser tomadas. Para me- Segundo MELO (2009, p. 36), quanto ao cuidado na execução das ferramentas de análise Live Forense: O conjunto de ferramentas selecionadas deve ser compilado estaticamente para compor o ferramental de Resposta de Incidente Esta abordagem captura o estado volátil do processo, mas há desvantagens, se o kernel foi subvertido, as informações podem estar incompletas ou corrompidas. ção para tratar combinações da RAM, espaço de troca, ROM, NVRAM e outros recursos de memória. O gerenciador de memória que executa no kernel, trata a alocação e desalocação da memória em um computador. que deverá ser utado na Live Forense. A compilação da ferramenta Segundo Melo (2009), a memória principal contém todo tipo no modo estático a partir do código fonte gera um binário que não de informação volátil, como informações de processos que es- utiliza as bibliotecas dinâmicas do sistema. Adotando-se essa pre- tejam em execução, dados que estão sendo manipulados e que, caução o binário alojado em CDROM se torna imune a tentativas de muitas vezes ainda não foram salvos em disco e informações no inoculação de código por programas maliciosos. sistema operacional. 3.2 ANÁLISE DE MEMÓRIA RAM, destacando os arquivos /dev/kmem que têm as informa- O autor ainda exemplifica a coleta de evidência da memória Segundo Farmer e Venema (2007), todos os sistemas operacionais modernos utilizam memória virtual como uma abstra- ções de memória da área de kernel e /dev/mem, que é toda a memória da máquina: 174 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
  • 4. # /cdrom/dd if=/dev/mem | cdrom/nc <ip> <porta> Esse método cria uma cópia idêntica bit a bit de cada # /cdrom/dd if=/dev/kmem | cdrom/nc <ip> <porta> sistema de arquivos, incluindo todas as meta-informa- # /cdrom/dd if=/dev/rswap | cdrom/nc <ip> <porta> ções e todas as informações que permanecem em um # /cdrom/dd if=/dev/kcore | cdrom/nc <ip> <porta> espaço não-alocado no fim dos arquivos, entre os arquivos, nos blocos de inode não-alocados e assim por No exemplo acima o “#” informa que o usuário logado é o diante. Isso em geral é feito com o comando dd. root (super usuário do sistema), o “/cdrom” o diretório onde o Um benefício importa dessa abordagem é que ela é ferramental de resposta a incidente foi instalado para a utilização neutra em relação ao sistema de arquivos. Por exemplo, em “Live Forense”, o comando “dd if=/dev/mem | /cdrom/nc a mesma técnica pode ser utilizada para copiar tanto <ip> <porta> transfere uma imagem do conteúdo da memória partições UNIX quanto partições Windows. A desvanta- RAM, área de kernel, e swap para a máquina do perito através gem é que os dados armazenados entre e fora das par- do ip e da porta estipulada nos comandos citados. tições não são analisados. Os fragmentos de comando a seguir lêem a primeira partição UNIX no primeiro disco. Linux 3.3 ANÁLISE DE DISCO Segundo Farmer e Venema (2007), há diversas maneiras de se duplicar as informações sobre o sistema de arquivos. Qual método #dd if=/dev/hda1 bs=100k . . . Freebsd #dd if=/dev/da0s1a bs=100k . . . Solaris #dd if=/dev/dsk/c0t0d0s0 bs=100k . . . estará disponível dependerá da situação, os dois autores já capturaram informações efetuando o login em uma máquina comprome- 3.4.3 COPIAR DISCO INTEIRO tida, listando os arquivos para o terminal e registrando essa sessão Segundo Farmer e Venema (2007), o resultado é uma cópia com um programa emulador de terminal. Veremos a seguir alguns idêntica bit a bit de todas as informações acessíveis no disco, in- métodos para capturar estas informações. cluindo o espaço de armazenamento antes e depois das partições de disco. Isso pode ser necessário quando há suspeitas de que os dados poderiam permanecer ocultos fora das partições de disco. 3.4 CÓPIA DE ARQUIVOS INDIVIDUAIS Segundo Farmer e Venema (2007), essa é a abordagem Mais uma vez o “dd” é o comando ideal para realizar esta cópia. menos precisa, porque só captura o conteúdo dos arquivos. Ne- Este método possui limitações, ele não lerá os blocos de nhuma meta-informação é capturada, exceto talvez o tamanho disco que contém erros e que o hardware silenciosamente rema- do arquivo. Todas as demais meta-informações são perdidas, peou para os chamados blocos sobressalentes. Esse método como posse do arquivo, datas/horas de acesso, permissões etc. também não fornecerá acesso aos blocos sobressalentes não Estas informações só não são perdidas quando salvas utilizados, porque eles residem fora da área normalmente aces- usando outro meio. Por exemplo, o utilitário grave-robber do sível ao disco. Os fragmentos de comando a seguir lêem todos Coroner’s Toolkit que copia os arquivos selecionados (como os blocos acessíveis no primeiro disco: arquivos de configuração e registros em log) depois de salvar Linux #dd if=/dev/hda bs=100k . . . suas meta-informações em um arquivo chamado body. Freebsd #dd if=/dev/da0 bs=100k . . . Solaris #dd if=/dev/c0t0d0s2 bs=100k . . . Ainda segundo Farmer e Venema (2007), a exatidão das in- 3.4.1BACKUP Ainda segundo Farmer e Venema (2007), dependendo do formações capturadas aumenta na medida em que dependemos software de backup utilizado, esse método preserva algumas menos da integridade do sistema comprometido. Por exemplo, meta-informações como posse, informações sobre links físicos quando arquivos individuais são capturados enquanto ainda estão e a última data/hora da modificação, mas não captura a data/ conectados à máquina da vítima, o aplicativo subvertido ou o sof- hora do último acesso de leitura. Utilitários UNIX comumente tware de kernel subvertido pode distorcer esse resultado. A subver- utilizados são tar, cpio e dump. A desvantagem de fazer um ba- são é muito menos provável quando utilizamos um procedimento ckup é que o que você vê é tudo o que você obtém. Backups de baixo nível de geração de imagens de disco, com a unidade de não capturam as informações de arquivos excluídos disco conectada a uma máquina confiável. 3.4.2 CÓPIA DE PARTIÇÕES DE DISCOS INDIVIDUAIS 3.5 ANÁLISE ESTÁTICA DE MALWARE Segundo Farmer e Venema (2007, p. 55), a respeito da cópia de partições: Segundo Farmer e Venema (2007, p. 120), sobre as técnicas de análise estática: PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 175
  • 5. “[...] Desassemblagem de programa (converter um ar- A primeira etapa consiste na coleta de evidências antes quivo de programa em uma listagem de intrusões de do desligamento do sistema da fonte elétrica, que tem linguagem de máquina), descompilação de programa por objetivo registrar o estado do sistema, e a segunda (converter instruções de linguagem de máquina no códi- etapa, após o desligamento. go-fonte equivalente da linguagem de nível mais alto) e A segunda etapa, pelo termo oriundo do inglês, Network análise estática (examinar um programa sem realmente Forensic, que consiste na coleta de análise de informa- executá-lo)” ções de atividade de rede, tanto do servidor em questão, como dos demais ativos de redes que tenham infor- A desassemblagem de programa é um recurso padrão de mações pertinentes. todo programa depurador importante, entretanto ferramentas E por último, a etapa em que todas as informações reu- que descompilam programas em linguagem de alto nível como nidas nas etapas anteriores são cruzadas com informa- C só existem para ambientes limitados. A ameaça da engenharia ções identificadas na análise das imagens de mídias reversa também apresenta um problema para programadores coletadas. Essa última fase é tecnicamente conhecida de aplicativos Java. como Post Mortem Analysis. A preocupação com o furto de propriedade intelectual talvez Tanto na Live Analysis, na Network Forensic como na tenha muito a ver com essa disponibilidade limitada de descom- Post Mortem Analysis, o objetivo é a coleta do máximo de piladores. evidências digitais. O termo Dado pericial digital (pode ser um vestígio, evidência ou mesmo se consolidar em 3.6 ANÁLISE DINÂMICA DE MALWARE Segundo Farmer e Venema (2007, p. 104), sobre os perigos da análise dinâmica: “Uma maneira de descobri o propósito de um programa prova durante uma perícia) refere-se a toda e qualquer informação digital capaz de demonstrar que ocorreu um incidente de segurança ou mesmo um crime, dentro do contexto da Perícia Computacional. desconhecido é simplesmente executá-lo e ver o que acontece. Há vários problemas potenciais com essa abor- Segundo Farmer e Venema (2007), a sabedoria tradicional da dagem. O programa poderia executar de uma maneira computação forense, conta com métodos muito conservadores, ra- confusa e destruir todas as informações na máquina [..]” ramente nada além de desligar um computador e fazer uma cópia de disco. Caso seja necessário assegurar que os dados coletados “Em vez de executar um programa desconhecido em uma sejam otimizados para poderem ser aceitos em um tribunal e só ambiente onde eles podem causar danos, é mais seguro exe- conseguir capturar parte deles, então uma metodologia mais cau- cutar esse programa em uma caixa de areia. O termo caixa de telosa pode ser a melhor opção em alguns casos. areia (sandbox) foi emprestado da balística, na qual as pessoas testam armas atirando em uma caixa de areia de modo que as Ainda segundo Farmer e Venema (2007, p. 172), sobre as técnicas conservadoras: balas não possam causar nenhum dano. Uma caixa de areia de “Infelizmente, essas técnicas conservadoras não têm uma software é um ambiente controlado para executar o software.” grande quantidade de informações potencialmente úteis Ainda segundo Farmer e Venema (2007), as caixas de sobre a situação, como processos em execução e kernels, areia podem ser implementadas de diversas maneiras, a estado de rede, dados na RAM e muito mais. Somente um abordagem mais simples é o de cordeiro sacrificial, uma má- entendimento limitado pode surgir do exame de um disco quina real, mas descartável, com acesso limitado à rede ou morto. E, embora informações dinâmicas talvez sejam um simplesmente sem acesso à rede. pouco mais voláteis e, portanto suspeitas, quaisquer condenações com base em uma única série de leituras dos 4 COLETA DO MALWERE dados também são suspeitas.[...]” Segundo Melo (2009), um perito forense, ao iniciar uma perícia no sistema que teve uma segurança violada, busca evidências que 5 ANÁLISE DO ARQUIVO caracterizem e possibilitem identificar como e o quanto a violação Segundo Farmer e Venema (2007), pequenos programas afetou as informações e o próprio Sistema Operacional. Ainda segundo MELO (2009, p. 33), a coleta de evidências pode ser dividida, de forma macro, em três etapas: podem gerar muitos problemas, como observado abaixo, o código de um programa de backdoor recuperado após um ataque: scanf (“%s”, buffer); 176 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
  • 6. if (strcmp(password, buffer)==0){ 6 Laboratório puts(“.”); Um cenário de análise de servidor foi montado para exem- setuid(0); plificar a perícia forense computacional na busca por Malwares setgid(0); em servidores Linux, a ferramenta utilizada para a perícia é o execl(“/bin/sh”,“sh”,(char *)0); Sistema Operacional Back Track. } Conforme os autores mencionados neste trabalho, parto do return (0); princípio que todas as atividades para manter o sistema integro e com o mínimo possível de perda de dados voláteis tenham Com exceção da chamada de função de comparação de sido realizadas como: a decisão de remover o cabo de rede ou string strcmp(), nenhuma chamada de função é testada quanto não do servidor que sofreu a intrusão, se houve alguma interven- a retornos de erro. Se uma operação falhar o programa simples- ção por parte de outro profissional após a identificação do pro- mente prossegue. Erro de leitura de entrada a partir de scanf(), blema e se este realizou alguma atividade e quais, que a cópia caso todas as operações falhem o programa termina silencio- dos dados da memória tenham sido realizadas em local seguro samente. e fora da máquina periciada, que uma imagem bit a bit do disco tenha sido efetuada. O chkrootkit é um detector de presença de  de rootkits em rootkits na máquina e atualmente é capaz de identificas mais de sistemas baseados em Unix. O software  utiliza cerca de nove ti- 60 tipos de ameaças diferentes como rootkits, worms, trojans, pos de análise para detectar traços de atividade ou presença de dentre outros. PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 177
  • 7. Iniciando o chkrootkit o sistema informa os parâmetros que podem ser utilizados na detecção de Malwares. Executando o chkrootkit ele checa o sistema em busca de Malwares e já exibe o resultado na tela informando se o arquivo Neste ponto fazemos uma varredura em busca de Malwares alojados na máquina. Com esta atividade conseguimos identificar a presença ou não do Malware no sistema operacional. está ou não infectado. 178 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
  • 8. O rkhunter é outra ferramenta de grande importância na detecção de rootkits no sistema, este avisa caso haja arquivos suspeitos no sistema. Um dos parâmetros do rkhunter é o “--update”, que atualiza sua base de dados de Malwares. Sua execução se da através do comando “rkhunter --check”. Os arquivos que contiverem a cor verde – not found e ok – estão normais. Já aqueles que forem marcados como “Warning” estão comprometidos e serão exibidos na cor vermelha, sendo assim deve-se proceder a remoção do rootkit. Antes de executar a remoção o Malware deve ser isolado em um dispositivo de armazenamento que seja externo ao disco da máquina comprometida, onde não possa mais gerar danos e possibilite uma análise posterior, talvez até mesmo sua execução em ambiente fechado e preparado para tal. PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 179
  • 9. O Malware deve ser removido do sistema operacional e a vulnerabilidade que permitiu sua inserção deve ser tratada, para que esta falha não seja explorada novamente por um atacante. O relatório final da execução e da análise do Malware fica registrada em /var/log/rkhunter.log. O Malware encontrado é um Backdoor que permite um .echo “Iniciando via NETCAT da Backdoor”; .passthru (“nc –l –p 65321 –e /Bin/sh”); .echo “Backdoor Instalada!!!>;-)”; acesso do atacante à máquina comprometida de forma rápida .echo “Passaporte para sistema disponível!!! >;-)”; sem a necessidade de realizar todos os passos para sua intru- ?> são, este código mantém uma porta de comunicação aberta entre o atacante e a máquina comprometida. 7 CONCLUSÃO Abaixo um trecho do código da Backdoor utilizada para o A perícia forense computacional é um instrumento im- acesso do atacante à máquina através de uma falha de segu- prescindível para identificar se um sistema computacional foi rança do PHP: invadido, e de que forma foi alterado, estabelecendo critérios <?php para preparar o ambiente visando registrar os dados periciais, .passthru(“date”); facilitar a identificação do invasor e amparar as medidas legais 180 | PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785
  • 10. a serem tomadas diante da intrusão. O valor jurídico de provas eletrônicas manipuladas de forma incorreta, sem os padrões previstos e devidamente estabelecidos pode ser facilmente contestado, e toda atividade do perito deve ser acompanhada por um ou mais profissionais da TIC da empresa que o contratou para a perícia, isso para assegurar a integridade não só da coleta dos dados, mas também para resguardar o perito, evitando assim que de perito torne-se réu. Enfim, a utilização de ferramentas que auxiliam e dão suporte à investigação é de suma importância, pois estas conseguem garimpar informações de forma eficaz e ágil, primando pela integridade e minimizando os riscos da perda de dados voláteis. A partir deste trabalho discutimos e demonstramos as técnicas e procedimentos da perícia forense computacional que auxiliam na análise de sistemas computacionais comprometidos, apontando as melhores práticas na atualidade e metodologias a serem aplicadas na descoberta, coleta e análise de Malwares. REFERÊNCIAS BIBLIOGRÁFICAS FARMER, Dan; VENEMA, Wietse. Perícia Forense Computacional: Teoria e prática aplicada. São Paulo: Pearson Prentice Hall, 2007. MELO, Sandro. Computação Forense com Software Livre: Conceitos, técnicas, ferramentas e estudos de casos. 1. ed. Rio de Janeiro: Alta Books. 2009. TANENBAUM, Andrew S. Redes de Computadores. 4. ed. Campus (Elsevier), 2003. HATCH, Brian; B. LEE, James; KURTZ, George. Segurança contra Hackers Linux. 2. ed. São Paulo: Futura, 2003. FILHO, João Eriberto Mota. Forense computacional utilizando ferramentas GNU/Linux. Brasília: Serpro, 10 de Novembro de 2009. Palestra ministrada no CISL – Comitê Técnico de Implantação de Software livre, 10/11/2011. Forense computacional utilizando ferramentas GNU/ LINUX. Disponível em: http://streaming.serpro.gov.br/cisl/forense.html. NOTAS DE RODAPÉ 1 Coordenador e Professor do Curso de Bacharelado em Sistemas de Informação do Centro Universitário Newton Paiva 2 Graduando em Bacharelado em Sistemas de Informação do Centro Universitário Newton Paiva PÓS EM REVISTA DO CENTRO UNIVERSITÁRIO NEWTON PAIVA 1/2012 - EDIÇÃO 5 - ISSN 2176 7785 l 181