• Nenhum resultado encontrado

Atacando redes wifi com Aircrack-ng protegidas com criptografia WEP

N/A
N/A
Protected

Academic year: 2021

Share "Atacando redes wifi com Aircrack-ng protegidas com criptografia WEP"

Copied!
11
0
0

Texto

(1)

Atacando redes wifi com

Aircrack-ng protegidas com

criptografia WEP

Muitos roteadores vem com um método de criptografia padrão chamado Wired Equivalent Privacy (WEP). Um problema fundamental com o WEP é uma falha no algoritmo, o qual é possível um atacante recuperar qualquer chave WEP. WEP usa a cifra de fluxo Rivest Cipher 4 (RC4) e uma pre-shared key. Qualquer um que queira se conectar à rede pode usa a mesma chave, composta de uma string de dígitos hexadecimais, tanto para criptografar quanto para descriptografar. Os dados em texto claro (não criptografados) passam por uma operação de OU-Exclusivo (XOR) bit a bit de fluxo com uma chave para criar um texto cifrado.

A operaçõe tem quatro possibilidade: 0 XOR 0 = 0

1 XOR 0 = 1 0 XOR 1 = 1 1 XOR 1 = 0

Os zero e um em um fluxo de dados pode representar qualquer dado sendo enviad através da rede. Veja um exemplo de texto claro sendo cifrado com XOR e uma chave para criar um texto cifrado:

(2)

Criptografia WEP

Quando descriptografado, a mesma chave é usada no XOR novamente com o texto cifrado para restaurar o texto original.

Descriptografia WEP

A chave compartilhada WEP pode ser tanto de 64 ou 148 bits. Em ambos os casos, um vetor de inicialização (IV) fazer com que os primeiro 24 bits da chave adicione aleatoriedade, fazendo com que o tamanho efetivo da chave seja somente 40 ou 104 bits. Adicionar aleatoriedade com um IV é comum em sistemas c r i p t o g r á f i c o s p o r q u e s e u m a m e s m a c h a v e é u s a d a repetidamente, atacantes podem examinar o resultado do texto

(3)

cifrado por padrões e potencialmente irão quebrar a criptografia.

Criptoanalistas sempre acham aleatoriedades não implementadas corretamente em algoritmos criptográficos, como é o caso do WEP. Para começar, 24 bits de aleatoriedade é pouco para os padrões modernos de criptografia.

O IV e a chave são concatenados, então rodam através de um algoritmo de key-scheduling (KSA) e um gerador numérico pseudoaleatório (PRNG) para criar uma chave de fluxo. Próximo passo é o valor de verificação de integridade (ICV) é calculado e concatenado com o texto claro antes da criptografia para prevenir atacantes de interceptarem os textos cifrados, trocando alguns bits e trocando o resultado do texto claro descriptografado de algo malicioso ou pelo menos enganador. O texto claro é então passado pelo XOR com a chave de fluxo. O pacote resultante é feito do IV, do ICV, do texto claro e uma chave ID de dois bits.

Fluxo de criptografia WEP

A descriptografia é semelhante. O IV e a chave (indicado pelo ID da chave), armazenada em texto claro como parte do pacote,

(4)

são concatenadas e rodam através do mesmo KSA e PRNG para criar uma chave de fluxo idêntica a qual foi usada para criptografar. O texto cifrado é então passado pelo XOR com a chave de fluxo para revelar o texto claro e o ICV. Finalmente, o ICV descriptografado é comparado com o valor ICV texto claro acrescentado ao pacote. Se os valores não coincidirem, o pacote é jogador fora.

Fluxo da descriptografia WEP

Falha do WEP

Infelizmente, WEP tem um problema de herança que permite um atacante recuperar uma chave ou alterar pacotes legítimos. De fato, cada chave WEP é recuperável por um atacantes armado o suficiente com textos cifrados e criptografados com a mesma chave. O único criptosistema que realmente é seguro é um one-time pad aleatório, o qual usa a chave apenas uma vez. O principal problema com o WEP é que um IV de 24 bits não introduz uma aleatoriedade suficiente; isto tem apenas 2 elevado a 24 (que são 16.777.216) valores.

(5)

para calcular IVs e, na prática, o espaço usado IV pode ser ainda menor. De qualquer forma, dado pacotes suficientes, IVs vai ser reutilizada e o mesmo valor (chave estática concatenado com o IV) será utilizada para gerar a mensagem cifrada. Passivamente escutando o tráfego (ou melhor ainda, injetando o tráfego na rede para forçar mais pacotes e, portanto, mais IVs a serem gerados), um atacante pode recolher pacotes suficientes para realizar criptoanálise e recuperar a chave.

Da mesma forma, o ICV tenta evitar que os invasores interceptem a mensagem criptografada, lançando bits e mudando o texto claro resultante, é insuficiente. Infelizmente, existe uma deficiências na aplicação do Cyclic Redundancy Check 32 (CRC-32) do ICV que pode permitir que atacantes criem o ICV correto para uma mensagem modificada. Como o CRC-32 é um algoritmo linear, lançando um bit específico no texto cifrado teremos um resultado determinístico no ICV resultante e um atacante com o conhecimento de como CRC-32 é calculado poderia causar uma mensagem modificada ser aceita. Assim, a implementação ICV, como a IV, não é considerada para os padrões criptográficos modernos.

Nós podemos usar o Aircrack-ng para recuperar a chave compartilhada de uma rede wireless protegida com WEP.

Quebrando chaves WEP com o

Aircrack-ng

Existem muitas formas de quebrar as chaves WEP, incluindo o ataque de falsa autenticação, de fragmentação, chopchop, caffé latte e o PTW. Veremos o ataque da falsa autenticação, o qual precisa de apenas um cliente legítimo conectado ao access point.

(6)

Primeiro, mudamos a segurança do roteador para WEP e depois devemos ter certeza de que a placa está no modo monitor, assim você poderá capturar o tráfego da rede sem a primeira autenticação.

Agora para ver quais dados podemos coletar usando o Airodump-ng do Aircrack-Airodump-ng. Diga ao Airodump-Airodump-ng para usar a interface wireless no modo monitor mon0 e use a flag -w para salvar todos os pacotes em um arquivo.

root@kali:~# airodump-ng -w book mon0 --channel 6 CH 6 ][ Elapsed: 20 s ][ 2016-09-18 16:22

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

00:23:69:F5:B4:2Bu -53 22 6 0 6v 54 . WEP WEP linksysx

BSSID STATION PWR Rate Lost Frames Probe

00:23:69:F5:B4:2B 70:56:81:B2:F0:53 -26 54-54 0 6 Este scan inicial coleta todas as informações que precisamos para começar a atacar contra o WEP do access point. Aqui nós temos o BSSID, o canal wireless, algoritmo de criptografia e o SSID. Usaremos esta informação para coletar os pacotes para quebrar a chave WEP. Sua própria informação de configuração é diferente, claro, mas aqui está com o que iremos trabalhar:

Base Station MAC Address: 00:23:69:F5:B4:2B SSID: linksys

Channel: 6

Injetando pacotes

Embora a saída Airodump-ng mostrada anteriormente exibe algum tráfego a partir do access point, para quebrar uma chave WEP de 64 bits, precisamos de cerca de 250.000 IVs, e pra uma chave WEP de 148 bits, cerca de 1.500.000. Ao invés de braços cruzados capturando pacotes, vamos capturar e retransmitir pacotes para o access point para gerar IVs exclusivos

(7)

rapidamente. Nós precisamos nos autenticar, porque se o nosso endereço MAC não é autenticado com o access point, todos os pacotes que enviarmos serão descartados, e vamos receber um pedido de deauthentication. Usaremos Aireplay-ng para autenticação falsa com o access point e enganá-lo para responder aos nossos pacotes injetados.

Ao usar autenticação falsa, nós dizemos ao access point que estamos prontos para provar que sabemos a chave WEP, como mostrado abaixo. Claro, porque não sabemos a chave ainda, nós não iremos enviá-lo, mas o nosso endereço MAC está agora na lista de clientes que podem enviar pacotes para o ponto de acesso, daí a autenticação falsa.

root@kali:~# aireplay-ng -1 0 -e linksys -a 00:23:69:F5:B4:2B

-h 00:C0:CA:1B:69:AA mon0

20:02:56 Waiting for beacon frame (BSSID: 00:23:69:F5:B4:2B) on channel 6

20:02:56 Sending Authentication Request (Open System) [ACK] 20:02:56 Authentication successful

20:02:56 Sending Association Request [ACK] 20:02:56 Association successful :-) (AID: 1)

Nós falsificamos a autenticação usando as seguintes flags com seus dados associados:

-1 diz ao Aireplay-ng para falsificar autenticação;

é hora de retransmitir;

-e é o SSID; no meu caso linksys;

-a é o MAC address do access point que queremos nos

autenticar;

-h é o MAC address da nossa placa (a qual deve estar

ligada no dispositivo);

mon0 é a interface para usada para falsificar

autenticação.

Após enviar solicitação ao Aireplay-ng, você deve receber um smiley e a indicação de que a autenticação foi um sucesso.

(8)

Gerando IVs com o ataque ARP

Request Relay

Como a base está disposta a aceitar pacotes de nós, podemos capturar e retransmitir pacotes legítimos. Enquanto o ponto de acesso não vai nos permitir enviar o tráfego sem antes enviar a chave WEP para autenticar, podemos retransmitir o tráfego de clientes devidamente autenticados.

Nós usaremos a técnica de ataque conhecido como ARP Request Replay para gerar IVs rapidamente tento o Aireplay-ng ouvindo por uma solicitação ARP e então retransmiti-lo de volta para o access point. Quando o access point recebe uma solicitação ARP, ele faz o broadcast com uma nova IV. Aireplay-ng irá fazer o rebroadcast

do mesmo pacote ARP repetidamente. Cada vez que ele faz o broadcast, ele terá um novo IV.

Veja abaixo o ataque em ação. Aireplay-ng lê os pacotes procurando por uma solicitação ARP. Você não verá qualquer dado até o Aireplay-ng ver uma solicitação ARP que possa ser reenviada como broadcast. Veremos a seguir.

root@kali:~# aireplay-ng -3 -b 00:23:69:F5:B4:2B -h

00:C0:CA:1B:69:AA mon0

20:14:21 Waiting for beacon frame (BSSID: 00:23:69:F5:B4:2B) on channel 6

Saving ARP requests in replay_arp-1142-201521.cap You should also start airodump-ng to capture replies.

Read 541 packets (got 0 ARP requests and 0 ACKs), sent 0 packets...(0 pps)

Nós usamos estas três opções:

-3 realiza um ataque replay de solicitação ARP; -b é o MAC address do access point;

-h é o MAC address da nossa placa de rede; mon0 é a interface.

(9)

Gerando uma solicitação ARP

Infelizmente, como se pode ver no resultado acima, não vemos nenhuma solicitação ARP. Para gerar uma solicitação desta, nós usaremos o sistema host para simular um cliente através de um ping em um IP da rede a partir do sistema host conectado. Aireplay-ng verá a solicitação ARP e retransmitirá para o access point de novo e de novo.

Como você pode ver no resultado do Airodump-ng, mostrado abaixo, o número do campo #Data, indicando os IVs capturados, cresce rapidamente de acordo com que o Aireplay-ng continua a retranmitir o pacote ARP, fazendo com que o access point gere m a i s I V s . S e o s e u a i r e p l a y - n g - 3 d i s s e r “ G o t adeauth/disassoc” ou algo similar e seu número #Data não está subindo rapidamente, rode um comando de associação falsa mostrada anteriormente de novo para reassociar com o access point. Seu campo #Data deve começar a subir rapidamente de novo.

CH 6 ][ Elapsed: 14 mins ][ 2016-09-18 20:31

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

00:23:69:F5:B4:2B -63 92 5740 85143 389 6 54 . WEP WEP OPN linksys

Quebrando a chave

Lembre-se, nós precisamos de aproximadamente de 250.000 IVs para quebrar uma chave WEP de 64 bits. Enquanto você permanecer associado com a estação, rodando o comando novamente quando necessário e estiver gerando solicitações ARP na rede, deve levar apenas alguns minutos para coletar os IVs suficientes. Uma vez coletada os IVs necessários, nós podemos usar o Aircrack-ng para fazer o cálculo de tornar os IVs coletados em uma chave correta do WEP. Veja abaixo como nós quebraremos a chave usando a flag -b e especificando o nome do arquivo que usamos no Airodump-ng seguir pelo *.cap. Isto diz

(10)

ao Aircrack-ng para ler de todos os arquivos .cap salvos pelo Airodump-ng.

root@kali:~# aircrack-ng -b 00:23:69:F5:B4:2B book*.cap Opening book-01.cap

Attack will be restarted every 5000 captured ivs. Starting PTW attack with 239400 ivs.

KEY FOUND! [ 2C:85:8B:B6:31 ] Decrypted correctly: 100%

Depois de alguns segundos de análise, o Aircrack-ng retorna a chave correta. Nós podemos nos autenticar com a rede. Se isto for um pentest em uma rede de um cliente, nós podemos atacar diretamente qualquer sistema da rede.

Desafios ao quebrar WEP

Uma coisa que devemos ter em mente é que quando estamos atacando WEP, provavelmente existirão outros filtros para barrar os ataques como este. Por exemplo, o access point pode usar o filtro de MAC address para permitir apenas placas de redes com certos MAC address para se conectar, e se sua placa não estiver na lista, sua falsa autenticação irá falhar. Para dar um bypass no filtro MAC, você pode usar uma ferramenta como MAC Changer do Kali para fazer o spoof um endereço MAC e criar um valor aceitável. Tenha em mente que as chaves WEP são sempre quebráveis se podermos coletar pacotes o suficiente, e por questões de segurança, criptografia WEP não deve ser usada em produção.

É importante notar que a ferramenta Wifite, instalado por padrão no Kali Linux, se comporta como um processo em torno do pacote Aircrack-ng e irá automatizar o processo de ataque a redes sem fio, incluindo quebrar o WEP. Mas enquanto você está aprendendo como ataques Wi-Fi funciona, é melhor fazer o processo passo a passo ao invés de usar um processo de automação.

(11)

Referências

Documentos relacionados

Por vezes, o localizador necessita de alterar não só o texto como também possíveis imagens ou a forma como estas são apresentadas, sendo o exemplo mais óbvio o caso de

Nos 60 minutos seguintes, como o carregamento de cada um dos bancos neste período variaria de 68,9 % a 95,9 %, o carregamento máximo admissível para o banco remanescente seria

▪ Todos os fusíveis LNH do tipo gG do tamanho NH000 até NH3 com indicação de fusão no topo , foram substituídos por nova versão com dupla indicação de fusão (topo

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

Não houve diferença significativa para as variáveis comprimento de raízes comerciais e diâmetro de raízes comerciais; os clones 06 e 14 e a cultivar sergipana apresentaram

¢ll', ™pe• oÙ m£qon œrga qalassopÒrwn ¡li»wn ka• buq…hj oÙk o‧da dolorrafšoj dÒlon ¥grhj, Leukoqšhj œce dîma baqÚrroon, e„sÒke pÒntou ka• s ka•

A legislação que enquadra em concreto os programas de reabilitação profissional - Decreto-Lei n.º 247/89, de 5 de Agosto (JusNet 3102/1989), bem como o Decreto-Lei n.º 40/83, de

Como eles não são caracteres que possam ser impressos normalmente com a função print(), então utilizamos alguns comandos simples para utilizá-los em modo texto 2.. Outros