Procedimento para descoberta de chave WEP

As redes sem fio que utilizam padrão IEEE 802.11 estão cada vez mais presentes nos ambientes profissional e doméstico. Elas trazem várias facilidades com a mobilidade aos usuários. Olhando por outro lado, elas também trazem novas preocupações relacionadas a segurança, já que o usuário não precisa estar conectado fisicamente.

[ Hits: 52.244 ]

Por: Perfil removido em 12/01/2009


Material utilizado e scan



O procedimento descrito a seguir tem como finalidade mostrar que o protocolo WEP é vulnerável e sua chave pode ser descoberta rapidamente. Utilize esse procedimento somente para fins didáticos.

1) Material Utilizado:
  • Notebook;
  • Distribuição GNU/Linux BackTrack 3;
  • Adaptador USB Wi-Fi LinkSys WUSB54g v4 - Lista Completa de adaptadores compatíveis pode ser encontrada aqui.

2) Procedimento:

a) Inicialize a máquina com o BackTrack 3;

b) Crie um novo arquivo no editor de sua preferência e digite os comandos abaixo:

#!/usr/bin/bash
airmon-ng stop rausb0
ifconfig rausb0 down
macchanger --mac 00:11:22:33:44:55 rausb0
airmon-ng start rausb0
airodump-ng rausb0

c) Salve-o como "scanwifi" e torne-o executável:

# chmod +x scanwifi

d) Os comandos do script preparam a interface WiFi rausb0 para monitoramento e mudam o MAC Address para 00:11:22:33:44:55;

e) Abra um terminal e inicie o scan das redes disponíveis:

# scanwifi
    Próxima página

Páginas do artigo
   1. Material utilizado e scan
   2. Monitoramento e associação
   3. Injeção de pacotes e descoberta da chave
Outros artigos deste autor

Incron - supervisionando sistemas de arquivos

Compilando e otimizando KDE 3.x

Incrementando as funções do KDE com "servicemenus"

Newsbeuter Feed Reader - Instalação e configuração

Como imprimir diretamente na porta de impressão

Leitura recomendada

Hardening, se adequando as normas ISO 27000

Análise sobre políticas de segurança da informação

SysLog: Sistema de log do Linux

Segurança SSH com DenyHosts

Segurança da Informação: Necessidades e mudanças de paradigma com o avanço da civilização

  
Comentários
[1] Comentário enviado por cassimirinho em 12/01/2009 - 12:37h

Que interessante!

Gostei.

[2] Comentário enviado por albertguedes em 12/01/2009 - 14:47h

Mas isso ai dá pra descobrir chaves de 128 bits ? Ouvi dizer que esse método só é efetivo pra descobrir chaves de 64 bits.

[3] Comentário enviado por removido em 12/01/2009 - 15:03h

Dá sim!
O que você vai precisar é capturar (passo h) e injetar (passo l) mais pacotes. Normalmente com 50000 você já consegue descobrir chaves de 64 bits. Para chaves de 128 bits é recomendado de 250000 à 500000.

[4] Comentário enviado por edipo.magrelo em 12/01/2009 - 16:23h

Muito bom artigo!!!

[5] Comentário enviado por marcos.ramos em 12/01/2009 - 16:37h

agora eu sei como pegar a wireless do meu colégio :D

[6] Comentário enviado por douglascaixeta em 12/01/2009 - 17:55h

É possível fazer isso com outra distribuição Linux que não seja o BlackTrack?

Estou tentando com o openSuse e já no passo C) dá problema. Não consigo executar o arquivo.

Porque tem que ser com o BlackTrack?

[7] Comentário enviado por removido em 12/01/2009 - 18:04h

É possível executar esses passos em outras distribuições. A vantagem do BT3 é que ele já têm todas as aplicações necessárias, e o mais importante, os drivers das interfaces wireless com patches para monitoração e injeção de pacotes.
Provavelmente é por isso que você não está conseguindo rodar o passo c, pois a interface não entra em modo de monitoração.
Exemplo, se sua interface é uma Intel 4965 você pode usar esse procedimento:
http://airdump.net/packet-injection-wifi-intel-4965/

[8] Comentário enviado por albertoaalmeida em 13/01/2009 - 10:12h

Interessante, muito bom o artigo, vou tentar rodá-lo no slackware 12, ai postarei se deu certo ou não..

Abraços

Alberto Almeida
www.albertoalmeida.blogspot.com

[9] Comentário enviado por afirbooic em 13/01/2009 - 10:17h

Bom dia!

Alexsander Loula,


Tenho o back track no pen driver e acesso a internet de minha casa através de uma conectividade sem fio, contudo quando vou rodar o back track, ele detecta a placa rausb0, porém não tenho conseguido configurar no ndiswrapper uma vez que utilizo um cartão wifi para o acesso à web, gostaria de saber se você poderia me ajudar a configurar o ndiswrapper para poder rodar o bt3.

Site: www.segurancasemfio.com.br
E-mail: fabricio@segurancasemfio.com.br

Um abraço.

Atenciosamente,


Afirbooic.

[10] Comentário enviado por removido em 13/01/2009 - 10:38h

Oi Fabricio,

Não entendi direito sua pergunta. Para eu tentar te ajudar, favor responda as seguintes questões:
1 - Qual a marca/modelo da sua interface WiFi?
2 - Qual versão do BackTrack você têm?
3 - Você consegue com o BT usar sua interface WiFi? Caso negativo, em qual distro funciona?

Se preferir, pode enviar sua resposta direto no meu email.

Grato,
Alex

[11] Comentário enviado por elgio em 13/01/2009 - 11:08h

O padrão WEP de criptografia é fraco tanto em 64 bits como em 128 bits. Usando WPA não é possível esta quebra.

O WEP (assim como o WPA) é baseado no algoritmo RC4 (simétrico de fluxo) que em sua essência é um XOR. Nada de errado nisto, pois o padrão SSL tem como um de seus algoritmos este mesmo RC4.

O problema do XOR é que não pode haver repetição de chave (não entrarei em detalhes, talvez em um artigo?), logo o ideal seria uma chave "infinita". RC4 resolve este problema implementando um gerador infinto de bits para chave, sendo que este gerador deve ser inicializado... Enfim.

O fato é que para não haver repetição, se desmembrou a chave WEP em duas partes, a chave compartilhada que todas as estações e o AP tem, e um VI, vetor de inicialização, que deve ser (SIC) escolhido aleatóriamente pela estação.

Ai está a fragilidade do WEP:

a) Foram apenas 24 bits de VI, mesmo para a versão de 64 ou para 128 bits. Isto resume um força bruta a 2^24 SEMPRE, ao invés de 2^64 ou 128.

b) Muitos fabricantes, preguiçosos, programaram as placas para simplesmente começar o VI em 0 e ir decrementando ele, ao invés de CUMPRIR o padrão que era de escolher ALEATÓRIO.

c) Mesmo que seja aleatório, como um novo Vi deve ser escolhido a cada quadro ethernet, em poucas horas de tráfego intenso, uma única máquina esgotará todas as possíveis 2^24 combinações de VI e terá que reutilizar um VI já usado (COLISÃO) o que implica em repetição de chave.

Logo, WEP é uma PORCARIA.
WPA, além de implementar outros métodos de autenticação, elevou o VI para 48 bits.

(to pensando em escrever um artigo sobre isto...)

[12] Comentário enviado por albertguedes em 13/01/2009 - 11:25h

elgio, não dá idéia de artigo que vai ter que fazer, falou tem que cumprir hehehe

Mas eu tentei implantar o bendito wap pra usar com meu note, só que o wpa_suplicant não aceita o driver da minha placa wireless broadcom. Quem usa essa placa tá lascado, tem usar a net wifi com o wep mesmo. Agora sei que colocar em 128bits só dá uma sensação psicológica de segurança, não segurança real. hehehe

Só espero que ninguém que tenha lido esse artigo more perto de mim.

[13] Comentário enviado por cristofe em 13/01/2009 - 16:26h

Prezado Loula,
Será que só funciona com a esta verssao do Backtrack ou eu estou longe do ponto de acess.
De qualquer forma parabéns pelo tutorial.
Crstofe Rocha

[14] Comentário enviado por removido em 13/01/2009 - 16:52h

Oi Cristofe,
Funciona também com o BT2 e BT3 beta e funcionou. Na monitoração qual foi o valor de PWR? Você conseguiu fazer a associação com o AP?

[15] Comentário enviado por tiagofontoura em 13/01/2009 - 21:47h

cara, muito bom artigo, Parabens!
tu saberia me diser se tem como utilizar em WPA?
quais os passos necessarios?
Valeu, to no aguardo....

[16] Comentário enviado por removido em 14/01/2009 - 00:43h

Oi Tiago,
O procedimento para WPA é baseado em ataque de força bruta (dicionário). A maioria dos tutoriais que eu vi também utilizavam o BT, mas eu nunca cheguei a testar.

[17] Comentário enviado por elgio em 14/01/2009 - 10:30h

WPA não!

Os métodos de criptografia usados no WPA (escolha do VI com mencionei no meu comentário anterior) inviabilizam a descoberta de senha.

Só por força bruta como o loula disse. (qualquer algoritmo de cripto pode ser quebrado por força bruta. O problema é o tempo que se leva :-D)

[18] Comentário enviado por jcsjns em 02/02/2009 - 13:27h

Muito bom artigo, explica de forma clara.
Eu não consegui obter sucesso ...
Estou com o backtrack 3 ...consigo rodar a placa em modo monitor
Porém, mesmo com um segundo pc conectado ao roteador, o airodump não o detecta.
Se abro um segundo terminal e envio pacotes com o aireplay aí sim o airodump detecta cliente conectado.
Alguma ideia do que esteja faltando ? Sei que seria importante informar mais detalhes de modelo de placa etc ..mas não estou em casa no momento.

[19] Comentário enviado por jcsjns em 02/02/2009 - 16:21h

Com relação ao power ...existe algum tipo de calibração ? Minha rede fica entre 180 e 200 (bem, está com 100% e a uns 20cm de distância!), porém outras redes inclusive de uma universidade que está a aproximadamente 150metros (sem barreiras físicas), fica em 120.
Tá certo isso ? É possível conectar a uma rede se o pwr > 40 ?

[20] Comentário enviado por removido em 03/02/2009 - 07:51h

Oi jcsjns,
Não entendi sua dúvida. Você não precisa ter um cliente conectado ao AP para efetuar esse procedimento. Na verdade você vai simular um cliente após a associação com o AP. Se não tiver dando certo, tente verificar se sua placa permite injeção de pacotes:
# aireplay-ng -9 -a 12:34:56:78:90:AB rausb0
Substitua o 12:34... pelo MAC Address do AP e rausb0 pela sua interface.

[21] Comentário enviado por removido em 03/02/2009 - 07:53h

Se você está próximo do AP não se preocupe com a indicação PWR. No meu caso (LinkSys WUSB54g v4) eu consegui melhores resultados com PWR > 40. Entretanto isso pode variar com o modelo de placa/driver.

[22] Comentário enviado por jcsjns em 03/02/2009 - 09:46h

Obrigado pela resposta! Você estava certo, era a placa (ou o driver)!
Utilizei outra placa e agora o Kismet além de capturar pacotes também mostra os clientes conectados.
O airodump também passou a mostrar os clientes associados e a indicação do power está mais coerente.
Entretanto, minha rede não chega a 40 (tudo a 100% de power e as duas antenas a menos de 20cm sem parede ou metal no meio), mas como vc falou, vou ignorar a pwr.
Consegui um roteador emprestado para teste e posso brincar mais tranquilo.
Bom, vamos a captura de pacotes ... próximo passo sera usar o aircrack ..vamos ver o que dá.

[23] Comentário enviado por Denion em 23/02/2009 - 02:18h

Entao too aqui pra enforma uma coisa q tah acontecendo comigo, e nao too entendo!!
tipo assim
mostro a senha wep, + naum consigo acessar a net do cara!
exemplo como tah mostrando!!


KEY FOUND: [ 4F:29:2A:73:40:2A:66:29:25:6D:21:25:2A ] ASCII: [ O)*s@*f)%m!%* ]

tah mostrando assim!!
e tipo!!
Uma, naum sei qual eh a senha real do cara!!sii eh essa 4F:29:2A:73:40:2A:66:29:25:6D:21:25:2A ou O)*s@*f)%m!%*
eu imagino q a net dele eh 128 bits
e quando eu coloco nada dah :(

entao eu axo q é essa aqui

4F:29:2A:73:40:2A:66:29:25:6D:21:25:2A

+ tem q coloca os pontos tbm??

[24] Comentário enviado por removido em 04/03/2009 - 00:11h

Oi Denion,
A chave encontrada é de 128 bits. O 4F:29... é a chave em hexadecimal, você pode utilizá-la tirando os ":", ficando 4F29...
O "O)*s@*f)%m!%*" é a chave em ASCII. Você também pode utilizá-la, mas eu prefiro em hexa. Em alguns caso o formato ASCII pode ocultar caracteres especiais que não podem ser visualizados.

[25] Comentário enviado por Denion em 07/03/2009 - 10:55h

tá certo!!
tipo!!?
mais quando eu coloco essas senhas não acontece nada, eu axo q o MAC do cara tá amarrado
tem comu desamarra o MAC do cara??

[26] Comentário enviado por cleidyomar em 12/05/2009 - 12:39h

ei iai esse programa funciona com windows ou so com o linux

[27] Comentário enviado por cassimirinho em 12/05/2009 - 14:30h

Colega cleidyomar esse é um sistema operacional e não um programinha piratabay.

[28] Comentário enviado por tiagofontoura em 23/06/2009 - 17:04h

cara, ta tudo certo, porem quando comeco a injetar pacotes fica sempre em 0, sabe oque pode ser???
sera que minha placa nao aceita injecao de pacotes? mas porque sera? se ela entra em modo monitor???

[29] Comentário enviado por removido em 23/06/2009 - 17:18h

Verifique se ela esta na lista das placas suportadas pelo BT.

[30] Comentário enviado por glaubersa em 17/05/2010 - 23:17h

é possivel comçar a usar o airodump-ng, capturar uma quantidade de pacotes, parar e depois continuar de onde parou?

[31] Comentário enviado por grooverox em 21/10/2010 - 14:45h

O que pode estar ocorrendo quando após fazer a associação com a rede, injeto os pacotes mas o ARP e o ACK ficam zerados? Não gera tráfego..
Minha placa permite a injeção, já quebrei umas chaves :D


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts