Você está na página 1de 5

Usando o Wireshark

Além do Nessus, outro aliado importante é o Wireshark, o bom e velho Ethereal, que
mudou de nome em Junho de 2006. Ele é um poderoso sniffer, que permite capturar o
tráfego da rede, fornecendo uma ferramenta poderosa para detectar problemas e
entender melhor o funcionamento de cada protocolo.

Assim como o Nessus, ele pode ser usado tanto para proteger seu sistema quanto para
roubar dados dos vizinhos, uma faca de dois gumes. Devido a isso, ele é às vezes visto
como uma "ferramenta hacker", quando na verdade o objetivo do programa é dar a você
o controle sobre o que entra e sai da sua máquina e a possibilidade de detectar
rapidamente qualquer tipo de trojan, spyware ou acesso não autorizado.

Embora ele geralmente não venha instalado por padrão, a maioria das distribuições
disponibilizam o pacote "wireshark" (ou "ethereal", de acordo com o nível de
atualização). Nas distribuições derivadas do Debian, você pode usar o apt-get, como de
praxe.

Além das versões Linux, estão disponíveis também versões para Windows 2000, XP e
Vista. Você pode baixá-las no http://www.wireshark.org/.

No caso do Linux, é possível instalar também a partir do pacote com o código fonte,
disponível na página de download (opção preferida por quem faz questão de ter acesso à
ultima versão do programa). O pacote é instalado com os conhecidos "./configure",
"make" e "make install". Como ele depende de um número relativamente grande de
compiladores e de bibliotecas, muitas delas pouco comuns, você quase sempre vai
precisar instalar alguns componentes adicionais manualmente.

Uma forma simples de instalar todos os componentes necessários para a compilação


(dica útil não apenas no caso do Wireshark, mas para a instalação de programas a partir
do código fonte de uma forma geral) é usar o "auto-apt", disponível através do apt-get.
Para usá-lo, instale o pacote via apt-get e rode o comando "auto-apt update":

# apt-get install auto-apt


# auto-apt update

A partir daí, você pode rodar os comandos de compilação através dele, como em:

$ tar -zxvf wireshark-0.99.1pre1


$ cd wireshark-0.99.1pre1
$ auto-apt run ./configure
$ auto-apt run make
$ su <senha>
# make install

Durante a instalação, o auto-apt usa o apt-get para instalar os componentes necessários,


como neste screenshot:
Depois de instalado, abra o programa usando o comando "wireshark" (ou "ethereal",
de acordo com a versão instalada). O Wireshark é um daqueles programas com tantas
funções que você só consegue aprender realmente usando. Para começar, nada melhor
do que capturar alguns pacotes. Clique em "Capture > Start":

Aqui estão as opções de captura. A primeira opção importante é a "Capture packets in


promiscuous mode", onde você decide se quer capturar apenas os pacotes endereçados à
sua própria máquina, ou se quer tentar capturar também pacotes de outras máquinas da
rede. Isso é possível pois os hubs burros apenas espelham as transmissões, enviando
todos os pacotes para todas as estações.
O endereço MAC do destinatário é incluído no início de cada frame enviado através da
rede. Normalmente, a placa escuta apenas os pacotes destinados a ela, ignorando os
demais, mas, no promiscuous mode ela passa a receber todos os pacotes,
independentemente de a qual endereço MAC ele se destine. Os switches e hub-switches
são mais discretos, encaminhando o tráfego apenas para o destinatário correto, mas a
maior parte dos modelos mais baratos são vulneráveis a ataques de MAC flooding e
ARP poisoning, como veremos a seguir.

Em seguida, você tem a opção "Update list of packets in real time". Ativando esta
opção, os pacotes vão aparecendo na tela conforme são capturados, em tempo real. Caso
contrário, você precisa capturar um certo número de pacotes para só depois visualizar
todo o bolo.

Mais abaixo estão também algumas opções para interromper a captura depois de um
certo tempo, ou depois de capturar uma certa quantidade de dados. O problema aqui é
que o Wireshark captura todos os dados transmitidos na rede, o que (em uma rede local)
pode rapidamente consumir toda a memória RAM disponível, até que você interrompa a
captura e salve o dump com os pacotes capturados em um arquivo.

Dando o OK, será aberta a tela de captura de pacotes, onde você poderá acompanhar o
número de pacotes capturados:

Na tela principal, temos a lista dos pacotes, com várias informações, como o remetente
e o destinatário de cada pacote, o protocolo utilizado (TCP, FTP, HHTP, AIM,
NetBIOS, etc.) e uma coluna com mais informações, que incluem a porta TCP à qual o
pacote foi destinado.

Os pacotes que aparecem com um micro da rede local como emissor e um domínio ou
IP da Internet como destinatário incluem requisições, upload de arquivos, e-mails
enviados, mensagens de ICQ e MSN e, em muitos casos, também senhas de acesso. Os
pacotes provenientes de micros da Internet são respostas à estas requisições, incluindo
páginas web, e-mails lidos, arquivos baixados e, assim por diante. Através do sniffer, é
possível capturar todo tipo de informação que trafegue de forma não encriptada pela
rede.

Clicando sobre um dos pacotes e, em seguida, no "Follow TCP Stream", o Ethereal


mostrará uma janela com toda a conversão, exibida em modo texto.

A maior parte do que você vai ver serão dados binários, incluindo imagens de páginas
web e arquivos diversos. Mesmo o html das páginas chega muitas vezes de forma
compactada (para economizar banda), novamente em um formato ilegível. Mas,
garimpando, você vai encontrar muitas coisas interessantes, como, por exemplo,
mensagens (MSN e ICQ) e e-mails, que, por padrão, são transmitidos em texto puro.
Usando a opção "Follow TCP Stream", é possível rastrear toda a conversa:

Você também pode gostar