portugues_guia_aircrack-ng_no_linux_para_novatos
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
portugues_guia_aircrack-ng_no_linux_para_novatos [2008/01/09 03:12] – jaymessmith | portugues_guia_aircrack-ng_no_linux_para_novatos [2009/08/11 22:38] (current) – --- mister_x | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Guia Aircrack-ng no Linux para Novatos ====== | ||
- | Idéia e trabalho inicial: ASPj\\ | ||
- | Adicionais por: um número de boas almas\\ | ||
- | Última atualização: | ||
- | Tradução e Adaptação (em andamento): JaymesSmith (06/ | ||
- | \\ | ||
- | Este tutorial te dará a base para começar usando o pacote Aircrack-ng. | ||
- | Embora não cubra todos os passos do início ao fim, como neste tutorial, o tutorial [[simple_wep_crack|Quebra Simples da Chave Wep]] cobre os passos do Aircrack-ng atual em muito mais detalhes. | ||
- | |||
- | Nos exemplos, a opção " | ||
- | |||
- | ====== Configurando Hardware, Instalando Aircrack-ng ====== | ||
- | |||
- | O primeiro passo para fazer o Aircrack-ng funcionar corretamente no seu sistema Linux é instalando e aplicando o ' | ||
- | |||
- | Nem precisa dizer que você precisa de uma placa wireless compatível com o pacote Aircrack-ng, | ||
- | |||
- | Para determinar a qual categoria sua placa pertence, veja [[compatibility_drivers|página de compatibilidade de hardware]]. Leia [[http:// | ||
- | |||
- | Primeiro, você precisa saber qual chipset é utilizado na sua placa wireless e qual driver você necessita para ele. Você terá determinado isso usando as informações do parágrafo anterior. | ||
- | |||
- | Como eu possuo um dispositivo Ralink USB, estou providenciando os passos para fazê-lo funcionar com o Aircrack-ng. | ||
- | |||
- | Se você possui um outro tipo de placa, confira a página [[install_drivers|instalando drivers]] para instruções sobre outros drivers. | ||
- | |||
- | |||
- | |||
- | ===== Guia de Configuração do RaLink USB rt2570 ===== | ||
- | |||
- | Se você possui um dispositivo USB rt2570 (como o D-Link DWL-G122 rev. B1 ou Linksys WUSB54G v4) você deve usar os drivers de http:// | ||
- | |||
- | Vamos extrair, compilar e instalar os drivers: | ||
- | |||
- | tar xfj rt2570-k2wrlz-1.3.0.tar.bz2 | ||
- | cd rt2570-k2wrlz-1.3.0/ | ||
- | make | ||
- | make install | ||
- | |||
- | O última passo precisa ser feito como root. Use o comando **su** para mudar para usuário root. | ||
- | Agora nós podemos carregar o módulo no kernel: | ||
- | modprobe rt2570 | ||
- | |||
- | Insira sua placa, ela deve ser reconhecida como rausb0 agora. Execute **iwconfig** para lista seus dispositivos wireless e verificar se tudo está funcionando. | ||
- | |||
- | ===== Instalação do Aircrack-ng ===== | ||
- | |||
- | |||
- | ==== Fonte ==== | ||
- | |||
- | Pegue a última cópia do Aircrack-ng na página inicial: http:// | ||
- | Os comandos a seguir devem mudar se você usar uma versão mais recente do software. | ||
- | |||
- | Extraindo, compilando, instalando: | ||
- | |||
- | tar xfz aircrack-ng-0.9.1.tar.gz | ||
- | cd aircrack-ng-0.9.1 | ||
- | make | ||
- | make install | ||
- | |||
- | Como sempre, o último passo precisa ser executado como root, utilize **su** para logar como root (use **sudo make install** para Ubuntu). | ||
- | |||
- | |||
- | ==== YUM ==== | ||
- | |||
- | Se estiver usando um sistema como Redhat Linux ou Fedora Core você pode instalar o Aircrack-ng com yum. Primeiro você precisa adicionar o repositório de [[http:// | ||
- | |||
- | su | ||
- | yum -y install aircrack-ng | ||
- | |||
- | |||
- | |||
- | ==== RPM ==== | ||
- | |||
- | Se estiver usando um sistema baseado em rpm, então pode usar o caminho fácil para instalar o Aircrack-ng.\\ | ||
- | (Exemplo para Redhat Linux 4) | ||
- | |||
- | su | ||
- | rpm -ihv http:// | ||
- | |||
- | IMPORTANTE: Consulte http:// | ||
- | |||
- | |||
- | ====== Básico do IEEE 802.11 ====== | ||
- | |||
- | Certo, agora tudo está pronto, hora do intervalo antes da ação finalmente começar e aprender algo sobre como redes (locais) wireless funcionam. | ||
- | |||
- | O capítulo a seguir é muito importante, se alguma coisa não funcionar como esperado. Conhecer sobre tudo relacionado ao assunto ajuda a encontrar o problema, ou pelo menos te ajuda para descrevê-lo a alguém que pode te ajudar. Isso é um pouco científico e talvez você prefira pular. Entretanto, um pouco de conhecimento é necessário para quebrar redes wireless e isso é um pouco mais do que simplesmente digitar um comando e deixar o Aircrack-ng fazer o resto. | ||
- | |||
- | |||
- | |||
- | ===== Como uma rede wireless é encontrada ===== | ||
- | |||
- | Isso é uma curta introdução em redes gerenciadas, | ||
- | |||
- | * Nome da rede (ESSID) | ||
- | * Se alguma criptografia é utilizada (e qual criptografia é utilizada; preste atenção, isso pode não ser sempre verdade só porque o AP faz propaganda) | ||
- | * Quais taxas de dados, MBit, são suportados | ||
- | * Em qual canal a rede está | ||
- | |||
- | Essas informações são então mostradas na sua ferramenta que conecta à esta rede. É mostrada quando você faz sua placa procurar por redes com **iwlist < | ||
- | |||
- | Cada AP tem um único endereço MAC (48 bits, 6 pares de números hexadecimais). É algo parecido com 00: | ||
- | |||
- | |||
- | |||
- | ===== Conectando-se a uma rede ===== | ||
- | |||
- | Se você quer conectar-se a uma rede wireless, existem algumas possibilidades. Na maior parte dos casos, Autenticação por Sistema Aberto((Open System Authentication - OSA)) é utilizada. | ||
- | |||
- | Autenticação por Sistema Aberto: | ||
- | - Pedido de autenticação ao AP é enviado. | ||
- | - O AP responde: OK, você está autenticado. | ||
- | - Pedido de associação ao AP é enviado. | ||
- | - O AP responde: OK, você está agora conectado. | ||
- | \\ | ||
- | Esse é o caso mais simples. MAS pode haver alguns problemas se você não está autorizado a conectar: | ||
- | * WPA/WPA2 está em uso, você precisa de autenticação EAPOL. O AP negará o acesso no passo 2. | ||
- | * Access Point tem uma lista de clientes permitidos (endereços MAC), e não deixa ninguém mais conectar-se. Isso é chamado de Filtro de Endereço MAC, ou simplesmente, | ||
- | * Access Point usa Autenticação por Chave Compartilhada((Shared Key Authentication - SKA)), você precisa fornecer a chave WEP correta para conseguir conectar-se. | ||
- | |||
- | |||
- | ====== Sniffing (Farejamento) e Quebra Simples ====== | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | ===== Descobrindo as Redes ===== | ||
- | |||
- | A primeira coisa a fazer é procurar por um alvo em potencial. O pacote Aircrack-ng contém o [[airodump-ng]] para isso - mas outros programas como o | ||
- | [[http:// | ||
- | |||
- | Antes de procurar por redes, você precisa colocar sua placa wireless no chamado "modo monitor" | ||
- | |||
- | Para colocar sua placa wireless em Modo Monitor: | ||
- | |||
- | [[airmon-ng]] start rausb0 | ||
- | |||
- | Lembrando! O __rausb0__ acima está sendo utilizado porque a placa wireless usada como exemplo aqui é a citada no início do tutorial. | ||
- | Para confirmar se está em Modo Monitor, execute **iwconfig** e verifique o modo no qual sua placa está. | ||
- | |||
- | Então, inicie o airodump-ng para procurar por redes: | ||
- | |||
- | airodump-ng rausb0 | ||
- | |||
- | Mais uma vez! __rausb0__ é o nome da interface de rede. Se você está usando um dispositivo Wi-Fi diferente de um rt2570 então deve utilizar um nome de interface de rede diferente, próprio para sua placa. | ||
- | Dê uma olhada na documentação do driver da sua placa. | ||
- | |||
- | Se o airodump-ng puder conectar-se ao dispositivo Wi-Fi, você verá uma tela como esta: | ||
- | |||
- | {{http:// | ||
- | |||
- | O [[airodump-ng]] salta de canal em canal, e mostra todos os Access Points dos quais consegue receber beacons. Canais do 1 ao 14 são utilizados no 802.11b e g (nos Estados Unidos só são permitidos utilizar os canais do 1 ao 11; do 1 ao 13 na Europa, com algumas exceções; do 1 ao 14 no Japão; e no Brasil, como na maiora da América Latina, segue-se o padrão americado, do 1 ao 11). Canais entre 36 e 149 são utilizados no padrão 802.11a.\\ | ||
- | O canal atual é mostrado no canto superior esquerdo. | ||
- | |||
- | Após um curto período de tempo, alguns APs e (com sorte) alguns clientes associados apareçerão. | ||
- | |||
- | O quadro de dados superior mostra os Access Points encontrados: | ||
- | |||
- | ^ BSSID | O endereço MAC do AP. | | ||
- | ^ PWR | Força do sinal. Alguns drivers não informam. | ||
- | ^ Beacons | ||
- | ^ Data | Número de frames de dados recebidos. | ||
- | ^ CH | Canal no qual o AP está operando. | ||
- | ^ MB | Velocidade ou Modo do AP. 11 significa 802.11b, 54 significa 802.11g. Valores entre 11 e 54 são uma mistura. | ||
- | ^ ENC | Encriptação: | ||
- | ^ ESSID | Nome da rede. Às vezes escondido. | ||
- | |||
- | O quadro de dados inferior mostra os clientes encontrados: | ||
- | |||
- | ^ BSSID | O endereço MAC do AP no qual esse cliente está associado. | ||
- | ^ STATION | ||
- | ^ PWR | Força do sinal. Alguns drivers não informam. | ||
- | ^ Packets | ||
- | ^ Probes | ||
- | |||
- | Agora você deve procurar por uma rede alvo. Ela deve ter um cliente conectado porque quebrar redes sem um cliente é um tópico avançado (Veja [[http:// | ||
- | |||
- | No exemplo acima, a rede 00: | ||
- | |||
- | |||
- | ===== Sniffing (Farejando) IVs ===== | ||
- | |||
- | Por causa dos saltos dos canais você não irá capturar todos os pacotes da sua rede alvo. Então nós queremos escutar somente um canal e ainda salvar todos os dados no disco, para que possa utilizá-lo para quebrar a chave: | ||
- | |||
- | airodump-ng -c 11 - -bssid 00: | ||
- | |||
- | Com o parâmetro -c você sintoniza um canal específico, | ||
- | |||
- | Você pode também adicionar o parâmetro - -ivs. Esse diz ao [[airodump-ng]] para capturar somente os IVs, pra economizar espaço. | ||
- | |||
- | Antes de estar pronto para quebrar o WEP, você geralmente precisa de algo entre 250.000 e 500.000 Vetores de Inicialização diferentes (IVs). Cada pacote de dados contém um IV. IVs podem ser reutilizados, | ||
- | |||
- | Então você terá qu esperar e capturar de 250 mil a 500 mil pacotes de dados (IVs). Se a rede não está ocupada levará muito tempo. Em geral você pode aumentar bastante a velocidade da captura utilizando um ataque passivo, como o Packet Replay. Veja o próximo capítulo. | ||
- | |||
- | ===== Quebra ===== | ||
- | |||
- | Se você conseguiu capturar IVs suficientes em um ou mais arquivos, você pode tentar quebrar a chave WEP: | ||
- | |||
- | aircrack-ng -b 00: | ||
- | |||
- | O MAC após a opção -b é o BSSID do alvo, e dump-01.cap é o arquivo que contém os pacotes capturados. Você pode usar múltiplos arquivos, simplesmente adicionando todos os seus nomes, ou você pode utilizar coringa (caracteres especiais para generalizar algo) como dump*.cap. | ||
- | |||
- | Para maiores informações sobre os parâmetros do [[aircrack-ng]], | ||
- | |||
- | O número de IVs que você precisa para quebrar a chave não é fixo. Isto por que alguns IVs são fracos e vazam mais informações sobre a chave do que outros. De modo geral esses IVs fracos são aleatoriamente misturados no meio dos mais fortes. Então, se você tiver sorte, você pode quebrar uma chave com somente 100.000 IVs. Porém, geralmente isso não é o suficiente e o Aircrack-ng vai continuar rodando por muito tempo (até uma semana ou até mais que isso com um fator fudge alto) e então te informar que a chave não pôde ser quebrada. Se você tiver mais IVs, a quebra pode ser feita bem mais rápida, e geralmente em poucos minutos. Experiências mostram que entre 250.000 e 500.000 IVs é, em geral, suficiente para quebrar a chave. | ||
- | |||
- | Existem alguns APs mais avançados por aí, que usam algoritmos para filtrar IVs fracos. O resulta é que você não consegue mais do que " | ||
- | |||
- | ====== Ataques ativos ====== | ||
- | |||
- | ===== Suporte à injeção ===== | ||
- | Most devices don't support injection - at least not without patched drivers. Take a look at the [[compatibility_drivers|compatibility page]], column aireplay. | ||
- | |||
- | The first step is to make sure packet injection really works with your card and driver. The easiest way to test it is the [[injection_test|injection test]] attack. | ||
- | |||
- | You'll need the BSSID (AP MAC) and ESSID (network name) of an AP that does not do MAC filtering (e.g. your own) and must be in range of the AP. | ||
- | |||
- | The first thing to do is find out the MAC of your own WLAN device. Sometimes there is a label with the MAC on the device. But you can always find | ||
- | it out using the ifconfig command (the 6 Hex bytes after " | ||
- | |||
- | Then you can try to connect to your AP using [[aireplay-ng]]: | ||
- | |||
- | aireplay-ng - -fakeauth 0 -e "your network ESSID" -a 00: | ||
- | |||
- | The value after -a is the BSSID of your AP, the value after -h is the MAC of your own WLAN device. | ||
- | |||
- | If injection works you should see something like this: | ||
- | |||
- | 12: | ||
- | 12: | ||
- | 12: | ||
- | 12: | ||
- | |||
- | If not | ||
- | - double-check ESSID, BSSID and your own MAC | ||
- | - make sure your AP has MAC filtering disabled | ||
- | - test it against another AP | ||
- | - make sure your driver is properly patched and supported | ||
- | - Instead of " | ||
- | |||
- | ===== ARP replay ===== | ||
- | |||
- | Now that we know that packet injection works, we can do something to massively speed up capturing IVs: [[ARP-request reinjection]] | ||
- | |||
- | ==== A idéia ==== | ||
- | |||
- | [[http:// | ||
- | sends back an answer. Because WEP does not protect against replay, you can sniff a packet, send it out again and again and it is still valid. | ||
- | So you just have to capture and replay an ARP-request targeted at the AP to create lots of traffic (and sniff IVs). | ||
- | |||
- | |||
- | ==== A maneira preguiçosa ==== | ||
- | |||
- | First open a window with an [[airodump-ng]] sniffing for traffic (see above). [[aireplay-ng]] and [[airodump-ng]] can run together. | ||
- | Wait for a client to show up on the target network. Then start the attack: | ||
- | |||
- | aireplay-ng - -arpreplay -b 00: | ||
- | |||
- | -b specifies the target BSSID, -h the MAC of the connected client. | ||
- | |||
- | Now you have to wait for an ARP packet to arrive. Usually you'll have to wait for a few minutes (or look at the next chapter). | ||
- | |||
- | If you were successfull, | ||
- | |||
- | Saving ARP requests in replay_arp-0627-121526.cap | ||
- | You must also start airodump to capture replies. | ||
- | Read 2493 packets (got 1 ARP requests), sent 1305 packets... | ||
- | |||
- | If you have to stop replaying, you don't have to wait for the next ARP packet to show up, but you can re-use the previously captured packet(s) with | ||
- | the -r < | ||
- | |||
- | When using the arp injection technique, you can use the PTW method to crack the WEP key. This dramatically reduces the number of data packets you need and also the time needed. | ||
- | |||
- | If the number of data packets received by airodump-ng sometimes stops increasing you maybe have to reduce the replay-rate. You do this with the -x <packets per second> option. I usually start out with 50 and reduce until packets are received contiously again. Better positioning of your antenna usually also helps. | ||
- | |||
- | ==== A maneira agressiva ==== | ||
- | |||
- | Most operating sytems clear the ARP cache on disconnection. If they want to send the next packet after reconnection (or just use DHCP), they have to send out ARP requests. So the idea is to disconnect a client and force it to reconnect to capture an ARP-request. A side-effect is that you can sniff the ESSID during reconnection too. This comes in handy if the ESSID of your target is hidden. | ||
- | |||
- | Keep your airodump-ng and aireplay-ng running. Open another window and run a [[deauthentication]] attack: | ||
- | |||
- | aireplay-ng - -deauth 5 -a 00: | ||
- | |||
- | -a is the BSSID of the AP, -c the MAC of the targeted client. | ||
- | |||
- | Wait a few seconds and your arp replay should start running. | ||
- | |||
- | Most clients try to reconnect automatically. But the risk that someone recognizes this attack or at least attention is drawn to the stuff happening on the WLAN is higher | ||
- | than with other attacks. | ||
- | |||
- | |||
- | |||
- | ====== Maiores informações e mais ferramentas ====== | ||
- | [[http:// |