Neste tutorial utilizaremos os seguintes softwares:
- Wireshark
- Ettercap
• INTRODUÇÃO
Uma das coisas interessantes que podem ser feitas quando estamos conectados a
uma rede interna é analisar o tráfego da mesma usando um sniffer.
Um sniffer é um software que captura todos os pacotes que passam pela interface
de rede do hacker fazendo com que seja possível a analise dos mesmos em um momento
posterior. Tais pacotes podem conter informações bastante interessantes como logins
e senhas de serviços não criptografados (Telnet, FTP ... ) e-mails, etc ...
Um sniffer bastante conhecido é o Ethereal (Hoje Wireshark) que possui
versões para Windows e para Linux.
• O SNIFFING
Iniciemos então o Wireshark.
Clique em "List the available capture interfaces" e clique no "start" correspondente a
interface de rede que você está usando.
Navegue alguns segundos pela internet no seu browser e clique em "Stop"
Veremos que o Wireshark capturou os pacotes que trafegaram pela sua interface
de rede enquanto você navegava pela internet.
"Epa! Ow tio Str0ke_, mais pelo que eu vi aqui só foram capturados os pacotes
que saíram e entraram no meu computador, o que eu vou querer com isso?"
1- Uma das utilidades disso é analisar o tráfego que sai ou entra no seu computador
quando você está desconfiado de alguma coisa. Por exemplo: Você acha que alguém
está conectado ao seu computador usando um terminal Telnet. Você então pode sniffar
sua própria conexão para saber o que esta acontecendo. Uma vez que o telnet não
utiliza criptografia, todos os comandos digitados pelo atacante podem ser
identificados, bem como o seu devido endereço IP, etc...
2- Você acabou de baixar algum programa e quer testá-lo em uma máquina virtual
para saber se ele estabelece conexões indesejadas (Ex.: Keyloggers estabelecem
conexões para o envio dos LOGs). Para isso, você pode usar um sniffer e analisar
todas as conexões que este programa estabelece, podendo classificá-lo como um
software seguro ou um software não seguro
• O ARP POISONING
"Mas tio str0ke_, não tem como capturar o tráfego dos outros computadores da
minha rede interna não?
Claro, tem sim!
Quando se deseja capturar tráfego da rede utilizando um sniffer, temos que ter em
mente que:
1- Somente o tráfego que passar pela nossa interface de rede pode ser capturado.
2- Quando uma rede utiliza um Switch e não um HUB, o tráfego é redirecionado pelo
Switch diretamente para o endereço de destino, não passando pela nossa interface de
rede (Tendo em mente que a topologia da rede é a de estrela). Com um HUB a coisa
mudaria de figura, pois o HUB repassa todos os pacotes para todos os computadores
conectados a rede bastando colocar nossa placa de rede em modo de monitoramento
e o passo seguinte não seria necessário.
Para fazermos com que o tráfego dos outros computadores passem pela nossa interface
de rede devemos fazer um ataque chamado "ARP poisoning". Para executarmos tal ataque
utilizaremos um software chamado Ettercap.
Instale o Ettercap no seu sistema e execute o seguinte comando:
Ettercap -Tq -M arp -o //
-Tq: Executa o Ettercap em modo texto (-T) e modo silencioso (q)
-M: Indica que será executado um ataque do tipo Man-In-The_Middle (MITM)
arp: Indica qual é o tipo de MITM que será executado (arp)
-o: Indica que não será capturado o tráfego da rede
//: Serve para que o ARP poisoning seja destinado a todos os hosts da rede
Pronto! Todo o tráfego da rede estará passando pela nossa interface de rede,
pois o cache ARP das máquinas da rede foi spoofado. Agora só o que falta ser
feito é abrir o seu Sniffer favorito e deixá-lo capturando o tráfego da sua
interface.
"Tá tio Str0ke_, agora já capturei o tráfego, mas tem vários endereços de origem e
destino, e eu quero só ver o que acontece entre o IP X e o IP Y"
Simples, clique com o botão direito no pacote que você quer e selecione "Follow
TCP Stream"
• CONCLUSÃO
Mesmo capturando tráfego de uma rede pequena, um LOG de um sniffer pode encher seu
HD facilmente sendo que toneladas de informação passam pela rede. Portanto, é viável
que se capture somente os primeiros 200 bytes de cada pacote. Sabemos que os 12 primeiros
bytes representam respectivamente os endereços de destino e origem (6 bytes pra cada um, dãr :B).
fazendo as contas, temos ainda 188 bytes de sobra, o que ja é suficiente para capturarmos
infromações como usuários e logins.
Lembrem-se de que apenas o tráfego da NOSSA REDE pode ser capturado, não pensem que
é possível utilizar esta técnica para capturarmos o tráfego que sai da interface
de rede do amigo que esta falando com você no MSN
Segue abaixo uma breve explicação sobre ARP
Address Resolution Protocol
Origem: Wikipédia, a enciclopédia livre.
Address Resolution Protocol ou ARP é um protocolo usado para encontrar um endereço Ethernet (MAC)
a partir do endereço IP. O emissor difunde em broadcast um pacote ARP contendo o endereço IP de
outro host e espera uma resposta com um endereço MAC respectivo. Cada máquina mantém uma tabela de
resolução em cache para reduzir a latência e carga na rede. O ARP permite que o endereço IP seja
independente do endereço Ethernet, mas apenas funciona se todos os hosts o suportarem.O ARP pode
trabalhar com outras camadas de enlace, além do Ethernet e outras camadas de rede, além do
Protocolo IP.A alternativa para as máquinas que não suportem ARP é um pré-mapeamento (estático)
dos endereços.Ao processo inverso dá-se o nome de RARP (Reverse ARP).Nota: arp é também o nome
de um comando Unix que permite consultar e manipular o cache de ARP do kernel do sistema operativo.
Créditos: Str0ke_
