Escolar Documentos
Profissional Documentos
Cultura Documentos
Aircrack-ng
Descrição
Todas as ferramentas são linha de comando que permite scripts pesados. Muitas
GUIs aproveitaram esse recurso. Funciona principalmente Linux, mas também
Windows, Mac OS X, FreeBSD, OpenBSD, NetBSD, Solaris e até eComStation 2.
tardocchi.wordpress.com
1
easside-ng - Uma ferramenta de magia automática que permite a
comunicação por meio de um ponto de acesso
criptografado por WEP
ivstools - Esta ferramenta manipula arquivos .ivs. Você pode
mesclar ou convertê-los
kstats - mostra os votos estatísticos do algoritmo FMS para um
ds ivs e uma chave WEP especificada
makeivs-ng - Gera vetores de inicialização
packetforge-ng - Cria pacotes criptografados que podem ser usados
subseqüentemente para injeção
tkiptun-ng - Esta ferramenta é capaz de injetar alguns quadros em
uma rede WPA TKIP com QoS
wesside-ng - Ferramenta de magia automática que incorpora várias
técnicas para obter uma chave WEP
wpaclean - Remove excesso de dados de um arquivo pcap
Do repositório:
# autoreconf -i
# make
# sudo airodump-ng-oui-update
tardocchi.wordpress.com
2
Descrição
Aircrack-ng Descrição
O Aircrack-ng pode recuperar a chave WEP uma vez que pacotes criptografados
suficientes tenham sido capturados com o airodump-ng. Esta parte do pacote
aircrack-ng determina a chave WEP usando dois métodos fundamentais. O
primeiro método é através da abordagem PTW (Pyshkin, Tews, Weinmann). O
método de cracking padrão é o PTW. Isso é feito em duas fases. Na primeira fase,
aircrack-ng usa apenas pacotes ARP. Se a chave não for encontrada, ela usará
todos os pacotes na captura. Por favor, lembre-se que nem todos os pacotes
podem ser usados para o método PTW. Este tutorial: Pacotes suportados para a
página Ataque PTW fornece detalhes. Uma limitação importante é que o ataque
PTW atualmente pode apenas quebrar chaves WEP de 40 e 104 bits. A principal
vantagem da abordagem PTW é que pouquíssimos pacotes de dados são
necessários para quebrar a chave WEP. O segundo método é o método FMS /
KoreK. O método FMS / KoreK incorpora vários ataques estatísticos para
descobrir a chave WEP e usa-os em combinação com a força bruta.
Licença: GPLv2
Opções comuns:
tardocchi.wordpress.com
3
Opções de craqueamento WEP estático:
-w <words>: caminho para o (s) nome (s) do (s) nome (s) da lista de palavras
Opções WPA-PSK:
Outras opções:
Opening capture-01.cap
tardocchi.wordpress.com
4
Read 2 packets.
Opening capture-01.cap
Descrição
O Aircrack-ng pode recuperar a chave WEP uma vez que pacotes criptografados
suficientes tenham sido capturados com o airodump-ng. Esta parte do pacote
aircrack-ng determina a chave WEP usando dois métodos fundamentais. O
primeiro método é através da abordagem PTW (Pyshkin, Tews, Weinmann). O
método de cracking padrão é o PTW. Isso é feito em duas fases. Na primeira fase,
aircrack-ng usa apenas pacotes ARP. Se a chave não for encontrada, ela usará
todos os pacotes na captura. Por favor, lembre-se que nem todos os pacotes
podem ser usados para o método PTW. Este tutorial: Pacotes suportados para a
página Ataque PTW fornece detalhes. Uma limitação importante é que o ataque
PTW atualmente pode apenas quebrar chaves WEP de 40 e 104 bits. A principal
vantagem da abordagem PTW é que pouquíssimos pacotes de dados são
necessários para quebrar a chave WEP. O segundo método é o método FMS /
KoreK. O método FMS / KoreK incorpora vários ataques estatísticos para
descobrir a chave WEP e usa-os em combinação com a força bruta.
LENDA
1 = Keybyte
2 = Profundidade da pesquisa de chaves atual
3 = Byte os IVs vazaram
4 = Votos indicando que está correto
Como funciona?
tardocchi.wordpress.com
5
O primeiro método é o método PTW (Pychkine, Tews, Weinmann). O método PTW
está totalmente descrito no documento encontrado neste site. Em 2005, Andreas
Klein apresentou outra análise da cifra de fluxo RC4. Klein mostrou que há mais
correlações entre o fluxo de chaves RC4 e a chave do que as encontradas por
Fluhrer, Mantin e Shamir e estas podem ser usadas adicionalmente para quebrar
o WEP. O método PTW amplia o ataque de Klein e o otimiza para uso contra o
WEP. Utiliza essencialmente técnicas aprimoradas de FMS descritas na seção
seguinte. Uma restrição particularmente importante é que ele só funciona com
pacotes de solicitação / resposta arp e não pode ser empregado contra outro
tráfego.
O segundo método é o método FMS / Korek, que incorpora várias técnicas. The
Techniques Papers, na página de links, lista muitos artigos que descrevem essas
técnicas com mais detalhes e a matemática por trás delas.
Neste método, várias técnicas são combinadas para quebrar a chave WEP:
Ao usar técnicas estatísticas para quebrar uma chave WEP, cada byte da chave é
essencialmente tratado individualmente. Usando matemática estatística, a
possibilidade de que um determinado byte na chave seja corretamente
adivinhada chega a até 15% quando o vetor de inicialização (IV) correto é
capturado para um determinado byte de chave. Essencialmente, certos IVs
“vazam” a chave WEP secreta para determinados bytes-chave. Esta é a base
fundamental das técnicas estatísticas.
Usando uma série de testes estatísticos chamados ataques FMS e Korek, os votos
são acumulados para chaves prováveis para cada byte chave da chave WEP
secreta. Diferentes ataques têm um número diferente de votos associados a eles,
pois a probabilidade de cada ataque produzir a resposta certa varia
matematicamente. Quanto mais votos um valor-chave em potencial específico
acumular, maior a probabilidade de estar correto. Para cada byte chave, a tela
mostra a provável chave secreta e o número de votos acumulados até o momento.
Desnecessário dizer que a chave secreta com o maior número de votos
provavelmente está correta, mas não é garantida. O Aircrack-ng
subseqüentemente testará a chave para confirmá-la.
Olhando para um exemplo, esperamos tornar isso mais claro. Na imagem acima,
você pode ver que, no byte-chave 0, o byte 0xAE coletou alguns votos, 50 neste
caso. Então, matematicamente, é mais provável que a chave comece com AE do
que com 11 (que é a segunda na mesma linha), que é quase a metade possível.
Isso explica porque quanto mais dados estão disponíveis, maiores são as chances
de que o aircrack-ng determine a chave WEP secreta.
tardocchi.wordpress.com
6
trabalho. Aircrack-ng usa força bruta em chaves prováveis para determinar a
chave WEP secreta.
É aí que entra o fator fudge. Basicamente, o fator fudge diz ao aircrack-ng quão
amplamente a força bruta. É como jogar uma bola em um campo e dizer a alguém
que a bola está em algum lugar entre 0 e 10 metros (0 e 30 pés) de distância.
Versus dizendo que a bola está em algum lugar entre 0 e 100 metros (0 e 300
pés) de distância. O cenário de 100 metros levará muito mais tempo para
pesquisar o 10 metro, mas é mais provável que você encontre a bola com a
pesquisa mais ampla. É uma troca entre o período de tempo e a probabilidade de
encontrar a chave WEP secreta.
Por exemplo, se você disser ao aircrack-ng para usar um fator de correção 2, ele
recebe os votos do maior byte possível e verifica todas as outras possibilidades
que são pelo menos metade das possíveis como esta em uma base de força bruta.
Quanto maior o fator de fudge, mais possibilidades o aircrack-ng experimentará
em uma base de força bruta. Tenha em mente que, à medida que o fator de
correção aumenta, o número de chaves secretas para tentar aumenta
consideravelmente e, consequentemente, o tempo decorrido também aumenta.
Portanto, com mais dados disponíveis, a necessidade de força bruta, que é muito
intensa e demorada, pode ser minimizada.
Para quebrar chaves WEP, um método de dicionário também está incluído. Para
WEP, você pode usar o método estatístico descrito acima ou o método do
dicionário, não ambos ao mesmo tempo. Com o método de dicionário, você
primeiro cria um arquivo com chaves ascii ou hexadecimais. Um único arquivo
pode conter apenas um tipo, não uma mistura de ambos. Isso é então usado
como entrada para o aircrack-ng e o programa testa cada chave para determinar
se está correta.
tardocchi.wordpress.com
7
Exemplos de uso
WEP
O caso mais simples é quebrar uma chave WEP. Se você quiser testar isso
sozinho, aqui está um arquivo de teste. A chave para o arquivo de teste
corresponde à imagem da tela acima, não corresponde ao exemplo a seguir.
aircrack-ng 128bit.ivs
Onde:
O programa responde:
Se houver várias redes contidas no arquivo, você terá a opção de selecionar qual delas deseja. Por
padrão, o aircrack-ng assume criptografia de 128 bits.
O processo de cracking começa e uma vez quebrado, aqui está o que parece:
NOTA: A chave ASCII WEP é exibida somente quando 100% da chave hexagonal pode ser
convertida em ASCII.
tardocchi.wordpress.com
8
Em seguida, analisamos o WEP com um dicionário. Para fazer isso, precisamos de arquivos de
dicionário com chaves ascii ou hexadecimais para tentar. Lembre-se, um único arquivo só pode ter
chaves ascii ou hexadecimais, não ambos.
As chaves WEP podem ser inseridas em hexadecimal ou ascii. A tabela a seguir descreve quantos
caracteres de cada tipo são necessários em seus arquivos.
Onde:
tardocchi.wordpress.com
9
Aqui está uma amostra da saída:
Vamos ver um exemplo de ataque PTW. Lembre-se de que esse método requer
pacotes de solicitação / resposta arp como entrada. Deve ser o pacote completo e
não apenas os IVs, o que significa que a opção “- ivs” não pode ser usada ao
executar o airodump-ng. Além disso, funciona apenas para criptografia WEP de
64 e 128 bits.
Onde:
-z significa usar a metodologia PTW para quebrar a chave wep. Nota: na v1.x, este
é o modo de ataque padrão; use -K para reverter para o Korek.
ptw * .cap são os arquivos de captura a serem usados.
Os sistemas respondem:
então:
WPA
Agora, em cracking frases-senha WPA / WPA2. O Aircrack-ng pode quebrar
ambos os tipos.
aircrack-ng -w password.lst * .cap
Onde:
-w password.lst é o nome do arquivo de senha. Lembre-se de especificar o
caminho completo se o arquivo não estiver localizado no mesmo diretório.
* .cap é o nome do grupo de arquivos contendo os pacotes capturados.
Observe nesse caso que usamos o caractere curinga * para incluir vários
arquivos.
O programa responde:
tardocchi.wordpress.com
10
Observe, neste caso, que, como existem várias redes, precisamos selecionar qual delas atacar. Nós
selecionamos o número 2. O programa então responde:
tardocchi.wordpress.com
11
Para listar toda a otimização de SIMD disponível, use --simd-list. Tal como
Limitações:
A lista de palavras deve ser arquivos. Por enquanto, eles não podem ser
bancos de dados stdin ou airolib-ng
A sessão deve ser restaurada a partir do mesmo diretório de quando usar pela
primeira vez --new-session
Nenhuma nova opção pode ser adicionada ao restaurar a sessão
Dicas de Uso
Abordagem geral para quebrar chaves WEP
tardocchi.wordpress.com
12
mágico de etapas. A seguir, descrevemos algumas abordagens que tendem a
produzir a chave mais rapidamente. A menos que você esteja confortável com a
experimentação, deixe-a bem sozinha e siga a abordagem simples.
Geralmente, não tente quebrar a chave WEP até que você tenha 200.000 IVs ou
mais. Se você começar muito cedo, o aircrack tende a gastar muito tempo brute
forçando as chaves e não aplicando corretamente as técnicas estatísticas. Comece
experimentando as chaves de 64 bits “aircrack-ng -n 64 captured-data.cap”. Se
eles estiverem usando um WEP de 64 bits, ele geralmente pode ser quebrado em
menos de 5 minutos (geralmente menos de 60 segundos) com relativamente
poucos IVs. É surpreendente quantos APs usam apenas chaves de 64 bits. Se não
encontrar a chave de 64 bits em 5 minutos, reinicie o aircrack no modo genérico:
“aircrack-ng captured-data.cap”. Então, a cada 100.000 IVs, tente novamente o
“aircrack-ng -n 64 captured-data.cap” por 5 minutos.
Depois de atingir 600.000 IVs, mude para testar chaves de 128 bits. Neste ponto,
é improvável (mas não impossível) que seja uma chave de 64 bits e que 600.000
IVs não a tenham quebrado. Então, agora tente “aircrack-ng captured-data.cap”.
tardocchi.wordpress.com
13
Depois de atingir 2 milhões de IVs, tente alterar o fator de correção para "-f 4".
Corra por pelo menos 30 minutos a uma hora. Tente novamente, aumentando o
fator de correção adicionando 4 a cada vez. Outra hora para tentar aumentar o
fator de correção é quando o aircrack-ng pára porque tentou todas as chaves.
Também confira a próxima seção sobre como determinar quais opções usar, pois
elas podem acelerar significativamente a quebra da chave WEP. Por exemplo, se a
chave for toda numérica, pode levar apenas 50.000 IVs para quebrar uma chave
de 64 bits com o "-t" versus 200.000 IVs sem o "-t". Então, se você tem um palpite
sobre a natureza da chave WEP, vale a pena tentar algumas variações.
Como determinar quais opções usar
Se os bytes (prováveis chaves secretas) são, por exemplo: 75: 47: 99: 22: 50,
então é bastante óbvio que a chave inteira pode consistir apenas em números,
como os primeiros 5 bytes. Por isso, pode melhorar a sua velocidade de cracking
para usar a opção -t apenas quando tentar essas teclas. Veja Wikipedia Binary
Coded Decimal para uma descrição de quais caracteres -t procura.
Se os bytes forem 37: 30: 31: 33: 36, que são todos valores numéricos quando
convertidos para o Ascii, é uma boa idéia usar a opção -h. A entrada da FAQ A
conversão de caracteres hexadecimais para ascii fornece links para determinar se
todos são numéricos.
E se os primeiros bytes são algo como 74: 6F: 70: 73: 65, e ao inseri-los em seu
hexeditor ou nos links fornecidos na sentença anterior, você vê que eles podem
formar o começo de alguma palavra, então parece É provável que uma tecla ASCII
seja usada, portanto, você ativa a opção -c para verificar somente as chaves ASCII
imprimíveis.
tardocchi.wordpress.com
14
Se você souber o início da chave WEP em hexadecimal, poderá entrar com o
parâmetro "-d". Vamos supor que você sabe que a chave WEP é "0123456789" em
hexadecimal, então você poderia usar "-d 01" ou "-d 0123", etc.
Outra opção a ser tentada ao se ter problemas para determinar a chave WEP é a
opção “-x2”, que faz com que os últimos dois bytes-chave sejam obrigados a usar
força bruta, em vez do padrão de um.
Como converter a chave HEX WEP para ASCII?
Você pode usar esta chave sem o “:” no seu cliente favorito. Isso significa que você
insere “1122334455” no cliente e especifica que a chave está no formato
hexadecimal. Lembre-se que a maioria das chaves não pode ser convertida para o
formato ASCII. Se a chave HEX for de fato caracteres ASCII válidos, o ASCII
também será exibido.
Se você quiser experimentar um pouco com a conversão de HEX para ASCII, veja
esta entrada de FAQ.
Para entender por que isso acontece, vamos dar uma olhada em como essas
senhas são convertidas nas chaves hexadecimais usadas no WEP.
Alguns fornecedores têm um gerador de chaves wep que “traduz” uma senha em
uma chave WEP hexadecimal. Não há padrões para isso. Muitas vezes eles
apenas preenchem frases curtas com espaços em branco, zeros ou outros
caracteres. No entanto, normalmente as senhas são preenchidas com zeros até o
comprimento de 16 bytes, e depois o MD5SUM deste bytestream será a chave
WEP. Lembre-se, todos os fornecedores podem fazer isso de uma maneira um
pouco diferente e, portanto, podem não ser compatíveis.
Portanto, não há como saber quanto tempo durou a frase-senha original. Pode
ser tão curto quanto um caractere. Tudo depende de quem desenvolveu o
software.
Sabendo de tudo isso, se você ainda quiser tentar obter a frase-senha original, o
Latin SuD tem uma ferramenta que tenta inverter o processo. Clique aqui para a
ferramenta.
No entanto, essas senhas resultam em uma chave WEP que é tão facilmente
quebrada quanto todas as outras chaves WEP. O método de conversão exato
realmente não importa no final.
Tenha em mente que as senhas wep que se parecem com “texto simples” podem
ser ASCII ou PASSPHRASE. A maioria (todos) dos sistemas suporta ASCII e é o
padrão, mas algumas senhas de suporte e aquelas que o suportam requerem que
os usuários especifiquem se é ascii ou uma frase secreta. Frases secretas podem
ter qualquer tamanho arbitrário. ASCII são geralmente limitados a 5 ou 13
(wep40 e wep104).
Como uma nota lateral, o Windows WZC suporta apenas chaves hexadecimais ou
ascii de comprimento fixo, portanto, a chave inserida mais curta tem 5 caracteres
de comprimento. Veja a tabela acima nesta página sobre quantos caracteres são
necessários para comprimentos de chave específicos.
Arquivos de amostra para tentar
tardocchi.wordpress.com
16
wpa.cap: Este é um arquivo de amostra com um handshake wpa. Ele está
localizado no diretório “test” dos arquivos de instalação. A frase secreta é
“biscotte”. Use o arquivo de senha (password.lst) que está no mesmo diretório.
wpa2.eapol.cap: Este é um arquivo de amostra com um handshake wpa2. Ele
está localizado no diretório “test” dos arquivos de instalação. A frase secreta é
“12345678”. Use o arquivo de senha (password.lst) que está no mesmo diretório.
test.ivs: Este é um arquivo de chave WEP de 128 bits. A tecla é “AE: 5B: 7F:
3A: 03: D0: AF: 9B: F6: 8D: A5: E2: C7”.
ptw.cap: Este é um arquivo de chave WEP de 64 bits adequado para o método
PTW. A chave é “1F: 1F: 1F: 1F: 1F”.
Formato do Dicionário
Os dicionários usados para bruteforcing WPA / WPA precisam conter uma frase-
senha por linha.
Embora não faça parte do aircrack-ng, vale a pena mencionar que um trabalho
interessante é da SuD. É basicamente um dicionário hex já preparado e o
programa para executá-lo:
http://www.badpenguin.co.uk/files/pcap-util
http://www.badpenguin.co.uk/files/pcap-util2
Outra técnica é usar o Wireshark / tshark. Você pode marcar os pacotes e depois
os mesmos para um arquivo separado.
Como extrair o handshake WPA de arquivos de captura grandes
tardocchi.wordpress.com
17
Às vezes, você tem um arquivo de captura muito grande e gostaria de extrair os
pacotes de handshake WPA / WPA2 dele para um arquivo separado. Isso pode ser
feito com o “tshark”, que é uma versão de linha de comando do pacote Wireshark.
Instalar a versão linux do pacote Wireshark no seu sistema também deve instalar
o tshark.
Lembre-se de que você deve usar um arquivo pcap como entrada, não um arquivo IVs.
Outras dicas
Para especificar vários arquivos de captura por vez, você pode usar um caractere curinga como * ou
especificar cada arquivo individualmente.
Exemplos:
Exemplos:
A página de tutoriais tem o seguinte tutorial Como quebrar o WPA / WPA2? que
percorre os passos em detalhes.
Como você viu, se houver várias redes em seus arquivos, você precisa selecionar
qual delas deseja decifrar. Em vez de fazer manualmente uma seleção, você pode
especificar qual rede deseja por essid ou bssid na linha de comando. Isso é feito
com os parâmetros -e ou -b.
tardocchi.wordpress.com
18
Outro truque é usar John the Ripper para criar senhas específicas para testes.
Digamos que você saiba que a frase secreta é o nome da rua mais 3 dígitos. Crie
um conjunto de regras customizadas no JTR e execute algo parecido com isto:
Lembre-se de que as senhas válidas têm 8 a 63 caracteres de comprimento. Aqui está um comando
útil para garantir que todas as senhas em um arquivo atendam a esse critério:
Haverá momentos em que os bytes da chave terão valores negativos para votos.
Como parte da análise estatística, existem salvaguardas embutidas que subtraem
votos para falsos positivos. A ideia é fazer com que os resultados sejam mais
precisos. Quando você recebe muitos votos negativos, algo está errado.
Normalmente, isso significa que você está tentando decifrar uma chave dinâmica,
como WPA / WPA2 ou a chave WEP, alterada enquanto você estava capturando
os dados. Lembre-se, o WPA / WPA2 só pode ser quebrado por meio de uma
técnica de dicionário. Se a chave WEP foi alterada, você precisará começar a
coletar novos dados e começar tudo de novo.
"Uma mensagem ESSID é necessária. Tente a opção -e"
tardocchi.wordpress.com
19
Solução: Você precisa especificar o essid real, caso contrário, a chave não pode
ser calculada, pois o essid é usado como salt ao gerar a chave mestra de pares
(PMK) fora da chave pré-compartilhada (PSK).
Se você tiver certeza de que seu arquivo de captura contém um handshake válido,
use o Wireshark ou um software equivalente e extraia manualmente o pacote de
beacon mais um conjunto de pacotes de handshake.
Referencias: https://www.aircrack-ng.org/doku.php?id=aircrack-ng
tardocchi.wordpress.com
20