Ataque do Homem Simples no Meio MitM (ARP Spoofing)

O que é ARP Spoofing?A técnica ARP Spoofing Consiste basicamente na exploração de uma vulnerabilidade de design no protocolo ARP e na implementação de cache ARP nos hosts.

Na camada de rede (ISO / OSI) os sistemas de origem e destino são bem definidos por seus endereços IP, mas no nível da camada de enlace é necessário determinar os endereços MAC de cada host.

ARP (RFC 826) é um protocolo de tradução de endereços entre dois esquemas de endereçamento diferentes, como é o caso entre o protocolo IP e o protocolo MAC. Basicamente, sua função em uma rede Ethernet é determinar o endereço MAC de uma estação a partir de seu endereço IP. A tradução é realizada por meio da troca de mensagens de consulta e respostas ARP.

O mecanismo básico funciona enviando uma mensagem de 28 bytes para o endereço de broadcast e apenas o host correto responde diretamente ao remetente da consulta.

Para que a consulta ARP alcance todos os dispositivos, o endereço MAC de destino FF: FF: FF: FF: FF: FF (endereço MAC de transmissão A.K.A.) é especificado. Quando um Switch recebe um quadro destinado a FF: FF: FF: FF: FF: FF, ele passa a encaminhar esse quadro por todas as outras portas (a intenção é que todos os hosts “escutem” a pergunta).

PROLONGAR

A resposta obtida é usada para determinar o endereço MAC de destino e, assim, a transmissão pode começar.

PROLONGAR

A relação IP-MAC obtida será temporariamente armazenada em uma tabela de entradas ARP (cache ARP) de forma que, se Bob tentar enviar dados para Alice novamente no futuro, tudo o que ele precisa fazer é consultar a tabela de cache ARP para determinar o MAC de Alice. não há necessidade de "perguntar novamente".

Dependendo da implementação do sistema operacional, essas entradas de cache ARP podem ser atualizadas com base em seu último uso, na última vez em que o endereço MAC foi “observado” e assim por diante. Eles também podem ser definidos estaticamente, por configuração manual.

Em todos os casos, o protocolo ARP não valida os dados obtidos na resposta ARP, ou seja, se Bob receber uma resposta ARP indicando que um determinado MAC está vinculado ao IP de Alice, Bob aceitará a informação "sem hesitação". Você tem permissão para enviar respostas ARP sem uma pergunta prévia e são chamadas de mensagens “ARP gratuitas”. Essas mensagens serão utilizadas pelos sistemas que as recebem para atualizar as informações na tabela de cache ARP.

Um invasor pode enviar deliberadamente respostas ARP sem uma pergunta anterior ("arp gratuito"), afirmando que seu próprio MAC corresponde ao IP de Alice, e Bob aceitará essas respostas como "informações de última hora" e continuará a atualizar a entrada no ARP tabela de cache para o IP de Alice com o MAC do invasor.

A técnica ARP Spoofing consiste em enviar informações incorretas sobre a tradução MAC-IP; Quando Bob usa essas informações falsas para atualizar seu cache ARP, ocorre uma situação de envenenamento de ARP (envenenamento de ARP).

Esta situação fará com que os frames que Bob envia ao IP de Alice sejam entregues pelo switch à porta do atacante (lembre-se de que o switch olha os MACs).

Agora, se o invasor aplicar a mesma técnica a Alice, convencendo Alice de que o endereço MAC do invasor corresponde ao endereço IP de Bob, o invasor convenceu Bob de que ele é Alice e Alice de que ele é Bob, obtendo uma situação intermediária (Homem no Meio).

Será responsabilidade do atacante encaminhar os frames a cada sistema para manter o tráfego ativo e evitar problemas de comunicação na camada superior. Além disso, o invasor pode inspecionar o tráfego, obter dados confidenciais, manipular informações, etc.

Sistemas envolvidos

Sistemas de uso para testeBob AA: BB: CC: 11: 22: 33 (192.168.0.1/24)
Alice AA: BB: CC: 22: 33: 44 (192.168.0.2/24)
Atacante AA: BB: CC: 88: 88: 88 (192.168.0.3/24)

Para o sistema de ataque será usado GNU / Linux Ubuntu e para as vítimas, usarei o Windows XP SP3, mas o sistema operacional da vítima realmente não importa. Primeiro, uma ferramenta que permite que mensagens ARP Spoofing sejam enviadas às vítimas deve ser usada para testar o ARP Poisoning. Para este tutorial, usarei "dsniff", que é basicamente um kit de ferramentas para detecção de senha.

Entre as ferramentas incluídas no pacote dsniff, encontra-se "arpspoof”, Que basicamente executa ARP Spoofing na vítima designada.

Para instalar dsniff digite em um terminal:

 $ sudo apt-get install dsniff 
Com isso você o instala.

Análise pré-ataque


No instante inicial, Bob tem uma entrada em seu cache ARP que indica que o endereço IP de Alice corresponde ao MAC AA: BB: CC: 22: 33: 44.

Para visualizar a tabela de cache ARP, vá para:

  • Começar
  • Corre
  • cmd

No terminal do Windows, escreva:

 Grande tenda 
Você obterá o conteúdo atual da tabela de cache ARP de Bob:

Da mesma forma no PC de Alice:

Ataque


Na primeira instância, o bit de encaminhamento no sistema do atacante:
 # echo 1> / proc / sys / net / ipv4 / ip_forward 
Desta forma, evita-se a perda de pacotes, Bob e Alice poderão interagir como se nada tivesse acontecido.

O comando arpspoof é usado da seguinte forma:

 # arpspoof -i INTERFAZ_LAN -t IP_VICTIMA_POISONING IP_VICTIMA_SPOOFED 
De onde:

INTERFAZ_LANPlaca de rede que usaremos para o ataque, o endereço MAC dessa interface será usado para as mensagens ARP Spoofing.

IP_VICTIMA_POISONINGÉ o endereço IP da vítima cuja tabela de cache ARP está sendo envenenada.

IP_VICTIMA_SPOOFEDÉ o endereço IP que indica a entrada na tabela de cache ARP da vítima à qual o MAC do atacante será associado.

Para convencer Alice de que Bob tem o MAC AA: BB: CC: 88: 88: 88, no terminal do sistema do invasor execute arpspoof da seguinte maneira:

 # arpspoof -i eth0 -t 192.168.0.2 192.168.0.1
As mensagens de resposta ARP serão enviadas para Alice com as informações manipuladas:

Inicie OUTRO terminal (o anterior não deve ser interrompido) e execute o ataque na direção oposta, para convencer Bob de que Alice tem o MAC AA: BB: CC: 88: 88: 88, no terminal do sistema Atacante execute arpspoof da seguinte maneira :

 # arpspoof -i eth0 -t 192.168.0.1 192.168.0.2 
As mensagens de resposta ARP serão enviadas para Bob com as informações manipuladas:

Deste ponto em diante, o atacante mantém o status de um intermediário (MitM) enviando mensagens ARP manipuladas:

PROLONGAR

Repetindo as primeiras etapas, é possível verificar como as entradas de cache ARP de Bob e Alice foram atualizadas com o MAC do invasor:

Cache ARP de Bob:

Cache ARP de Alice:

Os quadros que Bob envia para Alice são entregues ao invasor e o invasor os encaminha para Alice. Da mesma forma, os frames enviados por Alice são entregues ao invasor e ele os encaminha para Bob.

PROLONGAR

O invasor pode capturar o tráfego com sua placa de rede em modo promíscuo e obter, por exemplo, credenciais de acesso a um portal da web que não usa SSL.

Por exemplo, na seguinte captura de tráfego, um invasor obteve as credenciais de acesso a um portal PHPMyAdmin: (usuário “root”, senha “ad00”)

PROLONGAR

Por fim, para encerrar o ataque sem interromper as comunicações, o invasor interrompe o terminal "arpspoof" pressionando as teclas:

Ctrl + C

E a ferramenta enviará automaticamente consultas ARP a cada vítima para que as informações do cache ARP sejam atualizadas com os dados corretos.

Nesse momento, o invasor libera as comunicações e pode se desconectar da rede para analisar o tráfego já obtido.

Alguns sistemas antivírus monitoram as mudanças de entradas na tabela de cache ARP, mesmo para GNU / Linux existe uma ferramenta chamada “ARPWatch”Isso alerta para uma mudança no relacionamento ARP-IP nas tabelas de cache ARP do sistema.

Em outro artigo, possíveis técnicas para prevenir Ataques MitM baseados em ARP Spoofing e ARP Poisoning.

Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave