terça-feira, 2 de novembro de 2010

Utilizando o Aircrack-ng

Olá pessoal! 

Hoje vou falar rapidamente sobre um aplicativo, cujo nome é aircrack-ng (testado no SO Linux Ubuntu 10.04) bem interessante para detectar informações de redes wireless que estão ao alcance. O software é capaz de recuperar chaves WEP uma vez que um número suficiente de pacotes criptografados sejam capturados com o airodump-ng. Esta parte do pacote Aircrack-ng determina a chave WEP usando dois métodos fundamentais, o PTW e o FMS/KoreK, que não serão explicados neste post. O software ainda é capaz de quebrar chaves WPA, utilizando o método de dicionário, que também não será comentado nesta postagem. Só para lembrar, este software pode tanto ser utilizado para ver como está a segurança de uma rede wireless bem como no caso da quebra da chave, ser utlizado para um acesso não autorizado em determinada rede. Portanto, cabe a pessoa que irá utilizar tal software, saber como vai utilizar as informações coletadas, se para proteger mais ainda sua rede ou tentar invadir a rede alheia, estando sujeito as penalidades por isso.

Todo o procedimento foi realizado na minha própria rede wireless e com meu notebook, para um trabalho da pós-graduação, disciplina Segurança de Sistemas.

Vamos iniciar instalando o pacote de software (caso não tenha instalado ainda, obviamente). Primeiramente entre com a senha de administrador (root) do sistema, e dê o comando: apt-get install aircrack-ng
Feito isso aguarde enquanto o pacote é baixado e instalado em seu computador, o que geralmente é rápido, já que o pacote é relativamente pequeno.

Vamos aos procedimentos e comandos utilizados, para mais informações sobre s comandos, verifique o manual do software ou outros locais da web, apenas se atenha a sequência.

  • Primeiramente foi dado o comando airmon-ng stop wlan0;
  • Após o comando anterior, foi dado o seguinte comando: ifconfig wlan0 down;
  • Posteriormente, foi alterado o MAC da placa de rede wireless, com o comando macchanger --mac 00:11:22:33:44:55 wlan0;
  • A seguir foi reativada a placa de rede, utilizando o comando airmon-ng start wlan0
Depois desse passo, foi utilizado o airodump-ng, que é utilizado para capturar dados transmitidos através do protocolo 802.11 e em particular para a capturar e coletar IV's (vetores iniciais) dos pacotes WEP com a intensão de usar o aircrack-ng para recuperar a chave WEP.

Com o comando airodump-ng wlan0 foi verificado os APs cujo sinal foi captado por minha placa wireless, como pode ser visto a seguir:


Com isso conseguimos descobrir 5 redes wireless ao alcance de minha placa de rede. Podemos ver na coluna BSSID que é o endereço MAC do AP, que em conjunto com a coluna CH (canal) serão utilizados nos passos posteriores. Também podemos obter outros dados interessantes, como a intensidade de sinal, a taxa de transmissão, o tipo de criptografia utilizado (claro, se utilizado!) e o ESSID, que é o nome da rede.

Com posse do BSSID e do canal, pode-se começar os testes no AP escolhido, que no caso foi o que cujo ESSID é PLS_WIRELESS. Para começar a captura de IVs foi utilizado o comando airodump-ng -c 1 -w paulo --bssid 00:26:5A:D5:CE:95 wlan0, onde -c indica que será passado um parâmetro de canal (1), o -w indica ele irá gravar as informações coletadas num arquivo, cujo nome é paulo, já o --bssid é o endereço MAC do AP selecionado, e wlan0 é obviamente a interface de rede wireless que está sendo utilizada no teste.


Agora aqui entra um detalhe importante, há a necessidade de que haja tráfego na rede wireless para que o teste possa ser feito, uma vez que o software analisa alguns dados transmitidos, e a velocidade de quebra da senha é diretamente proporcional a quantidade de dados trafegando na rede wireless, ou seja, quanto mais dados, mais rápido é o processo, já que há mais IV's (na coluna #Data) para serem capturados. Então obviamente para acelerar o processo, tratei de gerar tráfego da rede com outro equipamento que estava na rede wireless. Outro detalhe é que quanto melhor o sinal, mais pacotes são capturados!

Com o processo de captura de IV's em andamento, foi aberto outro terminal onde foi informado o comando aircrack-ng -b 00:26:5A:D5:CE:95 paulo- 01.cap , onde é informado o BSSID de onde foram coletadas as informações e em que arquivo essas informações estão, onde antes era somente paulo, aqui temos que chamar por paulo-01.cap.

Como era de se esperar a senha não foi quebrada logo de início, e o aircrack-ng, de tempos em tempos (de acordo com o número de IVs capturados) fazia nova tentativa, como é mostrado a seguir, onde foi feita a primeira tentativa com em torno de 5000 IVs capturados e como não foi descoberto a senha, a próxima tentativa ocorreu com 10000 IVs e assim por diante até chegar num resultado final.



Nas duas imagens anteriores podemos ver os dois terminais em cada imagem, na parte superior de cada imagem está o terminal do airodump-ng e na parte inferior o aircrack-ng. Na última imagem pode-se ver que a operação foi realizada com sucesso e que a chave WEP foi quebrada, tendo como resultado de saída, o conteúdo abaixo:


Bom, mas a chave está um pouco estranha, certo? Aí tem um detalhe, a chave é hexadecimal, como foi comentado no início do relatório. Se for-mos analisar o que está na figura que aparecem as configurações do roteador (em outra postagem), pode-se ver que a chave é 20b3cde687fe8f289ba23ee871, então o que falta para que a chave coincida é retirar os “:” que separam os caracteres, que estão assim: 20:B3:CD:E6:87:FE:8F:28:9B:A2:3E:E8:71. Tirando todos os “:” ficamos com 20B3CDE687FE8F289BA23EE871 que é igual a 20b3cde687fe8f289ba23ee871.

Finalizando, o aircrack-ng é um software muito interessante para verificar algumas caracterícticas de redes wireless, sobretudo no que se trata a segurança da rede (isso contando com o que vimos acima, o que é só uma parte do que o software nos oferece). Com isso concluimos que é necessário um bom planejamento quanto a segurança de nossa rede, para que outras pessoas não autorizadas acessem a rede sem que saibamos.

Um abraço a todos!!!



2 comentários:

Anônimo disse...

Thanks for good news!

Paulo Luis Steinhauser disse...

Thanks!!!