Use o John the Ripper para Quebrar Handshakes de Wi-Fi WPA/WPA2

Kali LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você explorará o processo de quebra de senhas Wi-Fi WPA/WPA2 usando uma ferramenta comum de teste de penetração, o John the Ripper. Embora o objetivo principal seja educacional, a compreensão dessas técnicas é crucial para melhorar a segurança da rede. Você aprenderá a capturar um handshake WPA/WPA2, que contém as informações necessárias para a quebra de senha offline, e, em seguida, usará ferramentas especializadas para converter esse handshake em um formato que o John the Ripper possa processar. Finalmente, você tentará quebrar a senha usando um ataque de dicionário. Este laboratório também abordará as falhas de segurança subjacentes no WPA/WPA2 e fornecerá as melhores práticas para criar senhas Wi-Fi fortes para proteger suas próprias redes.

Capturar um Handshake WPA/WPA2

Nesta etapa, você entenderá o conceito de capturar um handshake WPA/WPA2. Em um cenário do mundo real, isso envolve colocar seu adaptador sem fio em modo de monitoramento e usar ferramentas como airmon-ng e airodump-ng para capturar o handshake de 4 vias que ocorre quando um cliente se conecta a um ponto de acesso Wi-Fi. Este handshake contém o material criptográfico necessário para realizar um ataque offline de força bruta ou de dicionário na senha do Wi-Fi.

Para fins deste laboratório, simularemos a existência de um arquivo de handshake capturado. O script setup já criou um arquivo .cap fictício chamado dummy_capture.cap em seu diretório ~/project. Este arquivo representa um arquivo de tráfego de rede capturado que conteria um handshake WPA/WPA2.

Para verificar a presença deste arquivo de captura fictício, use o comando ls.

ls -lh ~/project/dummy_capture.cap

Você deverá ver uma saída semelhante a esta, indicando que o arquivo existe:

-rw-r--r-- 1 labex labex 48 Oct 26 08:00 /home/labex/project/dummy_capture.cap

Esta etapa foca na compreensão conceitual, pois a manipulação real da interface de rede está fora do escopo deste ambiente de laboratório virtual.

Converter Handshake para o Formato do John the Ripper

Nesta etapa, você aprenderá como converter um arquivo de handshake WPA/WPA2 capturado (tipicamente um arquivo .cap) para um formato que o John the Ripper possa entender. O John the Ripper, por padrão, não processa diretamente arquivos .cap para quebra de WPA/WPA2. Em vez disso, ele requer um formato de hash específico, frequentemente gerado por ferramentas como aircrack-ng ou hcxpcaptool. O conjunto de ferramentas aircrack-ng inclui uma utilidade que pode extrair o handshake WPA/WPA2 de um arquivo .cap e exibi-lo em um formato adequado para quebra.

Para este laboratório, o script setup já criou um arquivo .hccapx fictício chamado dummy_handshake.hccapx em seu diretório ~/project. Este arquivo simula a saída de tal processo de conversão, contendo as informações do handshake extraídas em um formato pronto para o John the Ripper.

Para verificar a presença deste arquivo de handshake fictício, use o comando ls.

ls -lh ~/project/dummy_handshake.hccapx

Você deverá ver uma saída semelhante a esta, confirmando a existência do arquivo:

-rw-r--r-- 1 labex labex 78 Oct 26 08:00 /home/labex/project/dummy_handshake.hccapx

Esta etapa enfatiza a necessidade de conversão de formato antes de usar o John the Ripper para a quebra de WPA/WPA2.

Quebrar Handshake WPA/WPA2 com John the Ripper

Nesta etapa, você usará o John the Ripper para tentar quebrar a senha WPA/WPA2 do arquivo de handshake convertido. O John the Ripper é uma poderosa ferramenta de quebra de senhas que suporta vários modos de ataque, incluindo ataques de dicionário. Um ataque de dicionário envolve tentar uma lista de senhas comuns (uma wordlist) contra o handshake capturado.

Você usará o comando john com a opção --wordlist para especificar o arquivo de wordlist e o caminho para o arquivo de handshake. O script setup já criou uma wordlist simples chamada wordlist.txt em seu diretório ~/project.

Execute o seguinte comando para tentar quebrar o handshake fictício:

john --format=wpapsk --wordlist=~/project/wordlist.txt ~/project/dummy_handshake.hccapx
  • --format=wpapsk: Especifica o formato de hash que o John the Ripper deve esperar, que é WPA-PSK para handshakes de Wi-Fi.
  • --wordlist=~/project/wordlist.txt: Aponta o John para o arquivo de dicionário contendo senhas potenciais.
  • ~/project/dummy_handshake.hccapx: O caminho para o arquivo de handshake convertido.

Após executar o comando, o John the Ripper tentará quebrar a senha. Se uma senha da wordlist corresponder, ela será exibida. Para nosso handshake e wordlist fictícios, a senha labex123 deve ser encontrada.

Exemplo de saída:

Using default input encoding: UTF-8
Loaded 1 password hash (WPA-PSK [PBKDF2-SHA1 256/256 AVX2])
Will run till completion
Press 'q' or Ctrl-C to abort, almost any other key for status
labex123         (dummy_essid)
1g 0:00:00:00 DONE (2023-10-26 08:00) 100% (ETA: 08:00) 1.000g/s 5.000p/s 5.000c/s 5.000C/s labex123
Session completed.

A linha labex123 (dummy_essid) indica que a senha labex123 foi quebrada com sucesso para o ESSID (nome da rede) dummy_essid.

Compreender as Falhas de Segurança do WPA/WPA2

Nesta etapa, você obterá uma compreensão mais profunda das falhas de segurança inerentes ao WPA/WPA2 (Wi-Fi Protected Access II) que tornam a quebra de handshake possível. Embora o WPA2 tenha sido uma melhoria significativa em relação aos seus predecessores (WEP e WPA), ele ainda é suscetível a certos tipos de ataques, principalmente ataques de dicionário offline contra o handshake de 4 vias.

A vulnerabilidade central reside no fato de que a Pairwise Master Key (PMK), da qual a Pairwise Transient Key (PTK) é derivada, é baseada na Pre-Shared Key (PSK) e nos nonces trocados durante o handshake. Se um atacante capturar este handshake de 4 vias, ele poderá realizar um ataque offline de força bruta ou de dicionário contra a PMK. Isso significa que o atacante não precisa estar ativamente conectado à rede para tentar diferentes senhas; ele só precisa do handshake capturado.

Pontos chave para entender:

  • Ataque Offline: O processo de quebra ocorre offline, o que significa que o atacante pode pegar o handshake capturado e tentar milhões de senhas sem interagir com a rede alvo. Isso torna muito difícil a detecção.
  • Dicionário/Força Bruta: O sucesso deste ataque depende muito da força da senha do Wi-Fi. Se a senha for fraca, comum ou parte de um dicionário, ela pode ser quebrada relativamente rápido.
  • Sem Acesso Direto: O atacante não obtém acesso direto à rede durante o processo de quebra; ele apenas obtém a senha.

Esta vulnerabilidade destaca a importância crítica de usar senhas fortes e únicas para redes Wi-Fi. Mesmo com a criptografia robusta do WPA2, uma senha fraca pode comprometer toda a rede.

Implementar Senhas Fortes de Wi-Fi

Nesta etapa final, você aprenderá e entenderá as melhores práticas para implementar senhas fortes de Wi-Fi para mitigar os riscos de quebra de handshake WPA/WPA2. Conforme demonstrado nas etapas anteriores, uma senha fraca é a principal vulnerabilidade que permite o sucesso desses ataques.

Para proteger sua rede Wi-Fi de forma eficaz, considere as seguintes diretrizes para criar senhas fortes:

  1. Comprimento: Procure uma senha de pelo menos 12-16 caracteres. Senhas mais longas aumentam significativamente o tempo e os recursos computacionais necessários para a quebra.
  2. Complexidade: Use uma mistura de letras maiúsculas, letras minúsculas, números e caracteres especiais (por exemplo, !@#$%^&*). Isso torna os ataques de dicionário e força bruta muito mais difíceis.
  3. Unicidade: Não reutilize senhas em diferentes serviços ou redes. Se uma senha for comprometida, outras permanecerão seguras.
  4. Evite Palavras/Frases Comuns: Não use palavras de dicionário, frases comuns, informações pessoais (como aniversários, nomes) ou números sequenciais (por exemplo, 12345678). Estes são os primeiros alvos em ataques de dicionário.
  5. Passphrases: Considere usar uma passphrase – uma sequência de palavras não relacionadas. Por exemplo, CorrectHorseBatteryStaple é muito mais forte e fácil de lembrar do que P@$$w0rd!.
  6. Alterações Regulares: Embora não seja estritamente necessário para senhas muito fortes, alterar sua senha de Wi-Fi periodicamente (por exemplo, uma vez por ano) pode adicionar uma camada extra de segurança.

Ao seguir estas recomendações, você pode aumentar significativamente a segurança de sua rede Wi-Fi e tornar extremamente difícil para os atacantes quebrarem sua senha WPA/WPA2, mesmo que consigam capturar um handshake.

Resumo

Neste laboratório, você adquiriu experiência prática e conhecimento teórico sobre a segurança Wi-Fi WPA/WPA2. Você aprendeu o processo de captura de um handshake WPA/WPA2 (conceitualmente), convertendo-o para um formato adequado para o John the Ripper e, em seguida, usando o John the Ripper para quebrar a senha através de um ataque de dicionário. Além disso, você explorou as falhas de segurança subjacentes que tornam esses ataques possíveis e, o mais importante, compreendeu a importância crítica de implementar senhas de Wi-Fi fortes, complexas e únicas para proteger suas redes contra tais vulnerabilidades. Este conhecimento é crucial tanto para a compreensão da segurança ofensiva quanto para a proteção defensiva de redes.