Análise Forense em Tráfego de Redes PDF
Análise Forense em Tráfego de Redes PDF
Análise Forense em Tráfego de Redes PDF
Brasília – DF
2012
MARCOS GODINHO VELOZO
Brasília
2012
Artigo de autoria de Marcos Godinho Velozo, intitulado “ANÁLISE FORENSE EM
TRÁFEGO DE REDES, apresentado como requisito parcial para obtenção do grau de
Especialista em Perícia Digital da Universidade Católica de Brasília, em xx/xx/2012,
defendido e aprovado pela banca examinadora abaixo assinada:
______________________________________________________
Profº. Esp. João Eriberto Mota Filho
Orientador
Perícia Digital – UCB
______________________________________________________
Profº. Msc. Paulo Roberto Corrêa Leão
Membro da Banca
Perícia Digital – UCB
Brasília
2012
3
Resumo:
Com a constante progressão da tecnologia das redes de computadores foi propiciada uma
mudança nos padrões para área de computação no qual a informação que antes era reduzida
passou a ser comum pelo mundo. As redes estão cada vez maiores, complexas e
interconectadas por intermédio da Internet. A facilidade da interconexão mundial favoreceu o
acréscimo da complexidade quanto à administração e gerenciamento destas redes. Além de
grandes em número de equipamentos, os dados trafegados e a exigência de disponibilidade
também acompanharam o crescimento, tornando ainda mais difícil a tarefa de gerenciamento
destes ambientes. Ferramentas de apoio ao gerenciamento de redes, assim como a base destas
ferramentas (suas bibliotecas), têm papel importante em se tratando das atividades
relacionadas à disponibilidade e segurança das redes. Muitas dessas ferramentas de apoio
fazem uso de captura de dados como forma de obter informações da rede e, em muitos casos,
essa captura é feita através da libpcap, biblioteca que implementa captura passiva de tráfego.
Foi conduzida a análise das ferramentas para análise forense em rede, tendo alcançado o
objetivo de identificar os fatores que influenciam no desempenho dessas ferramentas, além de
chegar a um modelo de previsão em função da combinação dos fatores analisados.
O escopo deste trabalho é descrever as ferramentas que fazem análise forense em tráfego de
rede de forma eficiente. Essas informações foram coletadas em livros, revistas especializadas,
sites relacionados com o tema e outros trabalhos com conteúdos similares. Além de um
estudo de caso com a aplicação prática de uma dessas ferramentas que fazem análise forense
em tráfego de redes e o impacto disto na perícia forense.
1 INTRODUÇÃO
A Internet por sua natureza flexível e ágil é um meio que favorece a prática de vários
crimes, cuja materialização é viabilizada pela transferência de dados de arquivos sob os mais
diversos subterfúgios. A captura e o reconhecimento destes dados são primordiais em
processos preventivos ou investigativos que não raramente encontram obstáculos de natureza
técnica. O combate a estes crimes é ainda dificultado pela natureza inconstante dos dados ao
transitarem pela rede assim como a constante mudança destes dados. Desta forma, uma vez
estabelecidos os pontos, a captura do tráfego de rede sob suspeita deve ser feita no menor
tempo possível, assim como a posterior extração e o reconhecimento dos objetos e/ou suas
alterações. Captura, extração e seleção, estas três etapas devem ser realizadas
preferencialmente de maneira simples e transparente para o analista ou investigador.
Muitas aplicações de apoio ao gerenciamento e segurança de redes empregam
especificamente a captura passiva de tráfego, fazendo uso de uma biblioteca de software
chamada libpcap. Esta é uma biblioteca open source portável e que provê funcionalidades
4
para captura de tráfego das interfaces de rede sem que os desenvolvedores de aplicações
precisem implementá-las.
Este formato de arquivo é um formato muito básico para salvar dados capturados de
rede. Como a biblioteca libpcap tornou-se de fato padrão de captura de dados de rede no UN *
X, (Unix-like, por vezes referido como UN * X ou * nix) então se tem um "denominador
comum" para arquivos de captura de rede dentro do open source mundial.
Libpcap, e a porta do Windows na libpcap, WinPcap, usam o mesmo formato de
arquivo. Não obstante às vezes é colocado que este formato é adequado somente para redes
Ethernet, mas ele pode servir a vários tipos de rede diferentes, exemplos podem ser
encontrados na página de suporte de captura do Wireshark, onde todos os tipos listados são
tratados pelo formato de arquivo Libpcap.
A extensão do arquivo proposto para arquivos libpcap é PCAP. A análise forense de
rede possui algumas condições, pré- requisitos para fazer sentido. É necessário o tráfego de
rede. Basicamente precisa se de um dump de rede já capturado. Quando se fala de análise de
rede em modo geral, existe o conceito da volatilidade. As informações são voláteis e cada tipo
de informação tem um tipo de volatilidade diferente. Existe o conceito de ordem de
volatilidade que pode ser pensado da seguinte forma: quando vai se extrair os dados,
necessita–se respeitar essa ordem para minimizar perdas. Perdas essas no sentido de que
quando existe a extração de informação de um computador, enquanto extrai de um lado polui
do outro. Por exemplo: enquanto alguém está listando um arquivo, também está
sobrescrevendo algum dado, nem que sejam instruções no processador etc. Então quando se
segue a ordem de volatilidade minimizam-se as perdas. Em se tratando de ordem de
volatilidade deve-se considerar coletar primeiramente os dados que forem mais efêmeros.
Os pacotes que passam na rede são extremamente voláteis. São voláteis também dados
em memória, cache de processador etc. Então para se fazer a análise forense de rede é
importante que a captura esteja sendo feita previamente, por que se precisa desses dados
capturados. Então o que será visto será exatamente a análise desses dumps. Com um dump de
rede é possível analisar todos esses pacotes, seguindo assim o objetivo geral da forense que é
reproduzir o que aconteceu, reproduzir o passo a passo. Dessa forma poderemos saber, por
exemplo, se foi um ataque ou qualquer coisa do gênero. A idéia é através de um dump de rede
conseguir entender o que aconteceu e principalmente daquele dump extrair o que é
informação, o que é evidência e o que evidencia um determinado incidente.
A captura e análise de pacotes envolvem conhecimentos TCP, modelo OSI e coisas
afins. Quando se comenta em reprodução da sessão capturada, logo se imaginam que o TCP
tem facilidade de recuperar sessões, conversas entre cliente e servidor. Algo interessante é o
data carving em rede, que é a reconstrução de arquivos. Detecta-se que tem arquivo sendo
transferido. Exemplos: Anexos de email, FTP reconhece e recupera arquivo original.
Alguns pontos que são considerados tráfegos anômalos que justificam uma
investigação forense são:
a) Portas suspeitas - Portas conhecidas de worm se propagando, portas conhecidas de
determinados ataques, que não são serviços legítimos na sua rede, já podem ser
encaradas como um tráfego suspeito ou no mínimo anormal.
b) É importante estar atento aos pacotes contendo comandos e saídas de comandos.
Comandos normais de shell e de qualquer outra coisa. Saída de comando é
5
1.1 JUSTIFICATIVA
1.3 PROBLEMA
Chaudet, Fleury e Rivano (2005, p.71, tradução) afirmam que: “O gerenciamento das
redes se torna essencial para avaliação e melhoria de performance e identificação de
problemas localizados.” Portanto uma possível melhora em performance e identificação de
problemas está relacionado com a segurança da rede que também depende diretamente do
modelo de gerência utilizado.
1.5 PROPÓSITOS
2 DESENVOLVIMENTO
2.1.1 Tcpdump
complicado ter uma ferramenta que trata pacotes em tempo real, de “n” protocolos diferentes.
Isso pode dar margem a vulnerabilidades de parsing. Em ciência da computação e linguística,
análise sintática (também conhecida pelo termo em inglês parsing) é o processo de analisar
uma sequência de entrada (lida de um arquivo de computador ou do teclado, por exemplo)
para determinar sua estrutura gramatical segundo uma determinada gramática formal. Essa
análise faz parte de um compilador, junto com análise léxica e análise semântica. ( Fonte:
pt.wikipedia.org)
A figura 01 mostra o exemplo da análise sintática de uma expressão matemática. O
resultado é uma árvore da expressão.
Fonte: Wikipédia
Pode-se criar um pacote malicioso, que quando determinada ferramenta fizer o parsing
desse pacote ela apresentará problemas. É o que acontece com o wireshark por exemplo. É
uma excelente ferramenta (Wireshark), mas não é aconselhável usá-la para captura em tempo
real por causa dos problemas supracitados. Portanto o Tcpdump é mais recomendado para
captura de tráfego em tempo real. Ele aceita filtros de expressões, e é bem fácil de filtrar o
que se deseja capturar ou não. Usa a biblioteca padrão Libpcap. O interessante de se ter uma
biblioteca padrão é que pode se interagir com várias outras ferramentas. Lembrando que a
biblioteca Winpcap é para Windows.
O comando tcpdump –i fxp0 exposto na figura 02, faz com que seja capturado todo
tráfego que chega e sai da interface fxp0. O resultado do comando é apresentado na seqüência
do comando, indicando o endereço de origem, destino e hora em que o tráfego foi capturado.
Ao final é impresso na tela o total de pacotes capturados.
Figura 02 – TCPDUMP
Fonte: Tcpdump.org
8
2.1.2 Ngrep
Ngrep é um analisador de pacotes de rede, escrito por Jordan Ritter. É executado com
linha de comando, e baseia-se na biblioteca pcap. Ngrep permite a correspondência entre
padrões ou expressões regulares dentro dos dados do payload do pacote, utilizando a sintaxe
Grep do GNU, mostrando assim dados do pacote de forma amigável.
Ngrep busca automatizar certos processos. Trabalha com uma série de protocolos. Exemplo
de uso: detecção de tráfego anômalo, composto por sequências de códigos NOPs. Pode ser
usado o Shell code do código NOP e usá-lo como expressão regular e assim buscar em um
dump inteiro. Ele mostrará todos que possuem códigos NOPs. O Ngrep busca fazer esse tipo
de varredura. Ngrep trabalha também em tempo real. É análogo ao comando Grep. É possível
mandar o Ngrep ler um arquivo.
Figura 03 – NGREP
Fonte: Irongeek.com
2.1.3 Ntop
NTOP é uma ferramenta, criado pela NTOP.org, interessante para destacar eventos
irregulares em uma rede. Ele exibe dados estatísticos sobre protocolos utilizados, atividades
de rede dos ativos envolvidos, os destinos e origens etc. Com isso é possível ter uma idéia
básica do que é o comportamento normal em uma determinada rede. E quando isso é
visualizado em forma de gráficos, rapidamente se conseguirá visualizar um tráfego irregular
ou quando determinada máquina excedeu sua utilização, o que pode caracterizar infecção e
por último quando se tem um protocolo que não é costume utilizar e que está sendo utilizado
em excesso.
Geralmente são protocolos esquecidos que ninguém usa. Exemplo: Existe um
protocolo X que ninguém na sua rede faz uso, e então nota-se uma máquina utilizando esse
protocolo. Provavelmente existirá um servidor malicioso para fazer um covert channel canal
de comunicação que permite a um processo transmitir informação de uma forma que viola a
política de segurança do sistema, PEIXINHO (2007) e assim fazer uma rede secreta tunelada
dentro desse protocolo. Ntop lhe ajuda a ver tudo isso. Ele tira um retrato da sua rede, fazendo
com que saiba o que é normal e o que é anormal.
9
Um dos pontos fortes do NTOP apontado na figura 04 está relacionado à sua interface,
quanto a sua facilidade de uso e compreensão. Este ponto pode ser observado na Figura 04
onde se tem a tela principal da ferramenta demonstrando seu menu principal, interfaces
monitoradas, o gráfico de distribuição de tráfegos pelas interfaces de redes presentes, tempo
de atividade entre outras informações que podem ser observadas no site do fabricante.
Figura 04 – NTOP
Fonte: Ntop.org
2.1.4 Tcpextract
Tcpextract é uma ferramenta criada para extrair arquivos do tráfego de redes baseadas
em assinaturas de arquivo, e foi escrito por Nick Harbour. A idéia do Tcpextract é a extração
de arquivos, e ele tenta automatizar um processo que se chama de file carving. File Carving é
o reconhecimento em um dump de rede do que é um arquivo. Isso não é algo trivial de
automatizar. O Tcpextract acha no meio do dump, assinaturas, que geralmente são baseadas
em Header e Footers (cabeçalhos e rodapés). Porém é importante ressaltar que isso depende
da arquitetura do arquivo. Tem arquivos que a assinatura se encontra no cabeçalho desses
arquivos e em outros casos a assinatura pode ser encontrada no rodapé.
Entretanto acontece que a maioria dos protocolos que envolvem transferência de
arquivo envolve algum tipo de codificação. Só observando que codificação não é criptografia.
O que dificulta a automatização é a questão da codificação. Exemplo: A maioria dos
10
Figura 05 - TCPEXTRACT
Fonte: Packetinside.com
2.1.5 Wireshark
Esse software originalmente chamado Ethereal foi escrito por Gerald Combs no final
dos anos 90. Em maio de 2006, mudou de nome e o projeto foi rebatizado Wireshark devido a
problemas de marca registrada. Wireshark possui várias funcionalidades. O destaque é a
análise de cabeçalhos em árvore (encapsulamento). Todas as comunicações numa rede
começam em uma origem e são enviadas a um destino. As informações enviadas através da
rede são conhecidas como dados ou pacotes de dados. Se um computador (host A) desejar
enviar dados para outro computador (host B), os dados devem primeiro ser empacotados
através de um processo chamado encapsulamento. O encapsulamento empacota as
11
informações de protocolo necessárias antes que trafeguem pela rede. Assim, à medida que o
pacote de dados desce pelas camadas do modelo OSI, ele recebe cabeçalhos, trailers e outras
informações. FERREIRA (2007)
Esse é o processo de encapsulamento. Acontece o inverso quando se recebe o pacote.
Pacote chega pela camada física e vai subindo sentido aplicação e para cada camada que sobe
vai desencapsulando. Wireshark faz essa análise de forma fácil. Basta clicar em cima do
pacote e lhe é mostrado em árvore, estilo MS Windows Explorer. Portanto se consegue
visualizar overhead (informação acompanhada de uma mensagem na rede para garantir a
transferência sem erros para o destino desejado) de todas as camadas.
Aplicação de regras e filtros – Os filtros do Wireshark não são intuitivos em geral,
porque são muitos filtros para muitos protocolos diferentes. Não é tão básico como o
Tcpdump. Entretanto pode-se criar o filtro de maneira interativa. Basta clicar em um pacote e
optar por criar filtro selecionado e o software irá interagindo com a pessoa, sem precisar
decorar a sintaxe dos filtros.
O Wireshark conta com funcionalidades específicas para análise de tráfego VoIP -
Algo interessante que veio de versões anteriores para agora. Essa é uma grande vertente em
forense de rede, que seria uma analogia ao grampo telefônico, para que possa se reconstruir
sessões VoIP através de um dump de rede. Wireshark já vem com funcionalidades para isso.
Esta ferramenta decodifica os frames capturados no formato libpcap e os mostra de
forma gráfica, como ilustrado na figura a seguir:
Figura 06 – WIRESHARK
Fonte: Wireshark.org
12
2.1.6 Xplico
Figura 07 – XPLICO
Fonte: Xplico.org
Figura 08 – XPLICO
Fonte: Xplico.org
Figura 09 – XPLICO
Fonte: Xplico.org
Tela de Voip ( Figura 10) – SIP e RTP ( mais usado na fase de teste). SIP é largamente
utilizado para voip. O Xplico mostra origem e destino e faz uma reconstrução do arquivo de
áudio.
14
Figura 10 – XPLICO
Fonte: Xplico.org
15
3 RESULTADOS
4 DISCUSSÃO
evitando possíveis perdas desses pacotes. Entretanto, o Wireshark, por possuir interface
gráfica, facilita a visualização e entendimento dos pacotes de rede capturados através de
gráficos. Assim, para obter uma análise mais precisa, sugere-se a utilização em conjunto
dessas duas ferramentas. Notou-se que as funcionalidades disponíveis nas demais ferramentas
podem atender com eficácia a realização das atividades de captura e análise de pacotes.
5 CONCLUSÃO
Segundo (VENEMA, 2007) a computação forense é um campo que talvez devesse ser
levado mais a sério do que outras disciplinas na ciência da computação. Eles citam ainda que,
os programas e as pessoas envolvidas na coleta e análise dos vestígios devem ter cuidado
especial, porque seus resultados podem influenciar seriamente a liberdade individual, a vida, o
emprego das pessoas e muito mais.
O presente artigo teve como objetivo a realização de um estudo com a ferramenta de
análise forense em tráfego de redes (Xplico) e com as demais ferramentas que são
fundamentalmente para análise de tráfego em rede, mas que executam também a análise
forense em tráfego de redes e assim podem identificar vulnerabilidades nos sistemas
computacionais. No decorrer do estudo, foram realizadas investigações forenses usando
capturas de tráfego de rede e todas as ferramentas apresentaram resultados satisfatórios que
possibilitam um efetivo diagnóstico em uma rede de computadores.
A análise de tráfego permite, dentre outras possibilidades: Encontrar pontos de
bloqueio na rede; Detectar anomalias na rede; Descobrir equipamentos e cabeamento
defeituosos; Observar importantes mensagens de sistema não mostradas pelas aplicações. A
análise dependerá, principalmente, do conhecimento a respeito de protocolos de rede e
modelo OSI.
Através do uso adequado das ferramentas computacionais para o processo de
investigação forense, concluí-se que apesar das diferenças apresentadas entre as ferramentas,
todas apresentam condições de oferecer um exame adequado em um tráfego de redes. Dessa
forma, a afirmação feita na linha anterior foi confirmada, considerando que análise forense em
tráfego de redes realizada nesse estudo pode contribuir de forma eficaz para o trabalho, por
proporcionar a quem possa interessar uma melhor visão sobre os procedimentos de uso dessas
ferramentas.
De todo o exposto, concluiu-se que a análise forense em tráfego de redes quando feita
de forma correta, por meio de ferramentas adequadas, é de grande valia para qualquer
organização por poder deixá-la imune a erros futuros em seu sistema computacional.
Evidencia, além disso, que a perícia forense tem uma função substancial quando se adapta
constantemente às mudanças tecnológicas para obter resultados desejados, sendo o papel do
perito de suma importância nesse processo. Espera-se com esse trabalho contribuir para a área
forense computacional.
17
5 1 TRABALHOS FUTUROS
Como referência para futuros trabalhos, proponho uma pesquisa mais ampla usando
uma gama maior de ferramentas que fazem a análise forense em tráfego de redes, assegurando
assim um trabalho futuro com maior abrangência.
Abstract:
Due to the increasing advance of computer networks technology it has been fostered a change
in the standards for the computing field where information that was previously reduced,
became common worldwide. The networks are becoming larger, more complex and
interconnected through the Internet. Global interconnection easiness has favored the increase
of complexity regarding the administration and management of those networks. Besides being
large the amount of devices, the transmitted data and the demand for availability have
accompanied the growth as well, making the task of managing those environments even more
difficult. Network management support tools, as well as the core of these tools (their
libraries), play an important role concerning the activities related to network availability and
security. Many of those support tools use data capture as a way of obtaining information from
the network, and in many cases that caption is made through libpcap, which is a library that
implements the passive capture of traffic. The analysis of tools for forensic analysis was
conducted in the network and it reached the objective of identifying the factors that influence
the performance of those tools besides reaching a forecasting model based on a combination
of the analyzed factors.
REFERÊNCIAS BIBLIOGRÁFICAS
COUTO, Felipe Santos; SANTOS, Alex Ferreira; LOVATO, Agnaldo Volpe. Estudo
comparativo de ferramentas analisadoras de pacotes em rede TCP/IP. Revista Eletrônica
do Alto Vale do Itajaí, n. 1, agosto 2012. Disponível em: <www.site.com.br>. Acesso em
20/10/2012.
FEBRERO, Borja Merino. Traffic analysis with wireshark: Inteco-cert. Feb. 2011.
Disponível em:<
http://cert.inteco.es/extfrontinteco/img/File/intecocert/EstudiosInformes/cert_trafficwireshark.
pdf>. Acessado em 23/08/2012.
FILHO, João Eriberto Mota. Análise de tráfego em redes TCP/IP com tcpdump. São
Paulo: Novatec, 2012.
PEIXINHO, Ivo de Carvalho. Covert Channels: o que são, o que fazem e como se prevenir
contra eles. Dez. 2006. Disponível em:< ftp://ftp.registro.br/pub/gts/gts08/02-
CovertChannels.pdf>. Acessado em 24/08/2012.
TEIXEIRA, Adriana Ribeiro. Perícia forense de rede: teoria e prática. Nov. 2009.
Disponível em:< http://www.ginux.ufla.br/files/mono-AdrianaTeixeira.pdf>. Acessado em:
30/08/2012
SEGURIDAD y Redes. Tcpxtract. Extrayendo ficheros del tráfico de red. Disponível em:
<http://seguridadyredes.wordpress.com/2010/10/26/tcpxtract-extrayendo-ficheros-del-trafico-
de-red>. Acessado em: 09/10/2012.