====== Airmon-ng ====== Tradução e Adaptação: JaymesSmith\\ Iniciado em: 12/02/08\\ Completado em: 06/03/08\\ ===== Descrição ===== Este script pode ser usado para habilitar Modo Monitor em interfaces de placas wireless. Ele também pode ser usado para desligar (parar) tais interfaces. Digitar o comando **airmon-ng** sem parâmetros mostrará o estado da interface (status). ===== Uso ===== airmon-ng [canal] Onde:\\ * indica se você quer iniciar (start) ou parar (stop) a interface. (Obrigatório)\\ * especifica a interface. (Obrigatório)\\ *[canal] opcionalmente configura a placa para o canal especificado.\\ ===== Exemplos de Uso ===== ==== Usos Típicos ==== Para iniciar wlan0 em modo monitor: **airmon-ng start wlan0** Para iniciar wlan0 em modo monitor no canal 8: **airmon-ng start wlan0 8** Para parar wlan0: **airmon-ng stop wlan0** Para verificar o estado da interface (status): **airmon-ng** ==== Modo Monitor do driver Madwifi-ng ==== Isto descreve como colocar sua interface em modo monitor. Após a inicialização do seu computador, digite **iwconfig** para mostrar o estado atual das interfaces wireless. Parecerá com algo similar ao seguinte resultado. Digite "iwconfig": lo no wireless extensions. eth0 no wireless extensions. wifi0 no wireless extensions. ath0 IEEE 802.11b ESSID:"" Nickname:"" Mode:Managed Channel:0 Access Point: Not-Associated Bit Rate:0 kb/s Tx-Power:0 dBm Sensitivity=0/3 Retry:off RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality:0 Signal level:0 Noise level:0 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 Se você quer usar ath0 (que já está em uso): airmon-ng stop ath0 E o sistema irá responder: Interface Chipset Driver wifi0 Atheros madwifi-ng ath0 Atheros madwifi-ng VAP (parent: wifi0) (VAP destroyed) Agora, se você rodar "iwconfig": Sistema responde: lo no wireless extensions. eth0 no wireless extensions. wifi0 no wireless extensions. Você pode ver que a interface ath0 se foi. Para iniciar ath0 em modo monitor: **airmon-ng start wifi0** Sistema responde: Interface Chipset Driver wifi0 Atheros madwifi-ng ath0 Atheros madwifi-ng VAP (parent: wifi0) (monitor mode enabled) Agora digite "iwconfig". Sistema responde: lo no wireless extensions. eth0 no wireless extensions. wifi0 no wireless extensions. ath0 IEEE 802.11g ESSID:"" Mode:Monitor Frequency:2.452 GHz Access Point: 00:0F:B5:88:AC:82 Bit Rate=2 Mb/s Tx-Power:18 dBm Sensitivity=0/3 Retry:off RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality=0/94 Signal level=-96 dBm Noise level=-96 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 Note que ath0 está em modo monitor. Tenha certeza também de que o ESSID, apelido (//nickname//) e criptografia não foram configurados. O Acess Point mostra o endereço MAC da placa. O endereço MAC da placa somente é mostrado quando se utiliza o driver madwifi-ng. Outros drivers não mostram o endereço MAC da placa. Se ath1/ath2 etc. estão rodando, então pare cada um primeiro antes de todos os comandos acima: airmon-ng stop ath1 Você pode configurar o número do canal adicionando-o ao final: **airmon-ng start wifi0 9** ===== Dicas de Uso ===== ==== Confirmando se a Placa está em Modo Monitor ==== Para confirmar se a placa está em modo monitor, execute o comando **iwconfig**. Você pode então confirmar o modo "monitor" e o nome da interface. Para o driver madwifi-ng, o campo Access Point do iwconfig te mostra o endereço MAC da sua placa wireless. ==== Determinando o Canal em Uso ==== Para determinar o canal em uso, digite **iwlist canal**. Se você estará trabalhando com um Access Point específico, então o canal em uso da placa deve corresponder àquele do AP. Nesse caso, é uma boa idéia incluir o número do canal quando executar o comando **airmon-ng** inicial. ==== BSSIDs com Espaços, Caracteres Especiais ==== Veja este [[:faq#how_to_use_spaces_double_quote_and_single_quote_in_ap_names|registro em Perguntas Freqüentes]] (FAQ) sobre como definir seu BSSID se tiver espaços, aspas duplas ou simples ou ainda caracteres especiais nele. ==== Como Coloco Minha Placa de Volta ao Modo Administrado? ==== Depende de qual driver você está usando. Para todos os drivers, exceto madwifi-ng: airmon-ng stop Para driver madwifi-ng, primeiro pare TODAS as interfaces: airmon-ng stop athX Onde X é 0, 1, 2, etc. faça uma parada para cada interface que o iwconfig lista.Where X is 0, 1, 2 etc. Do a stop for each interface that iwconfig lists. Então: wlanconfig ath create wlandev wifi0 wlanmode sta Ver [[http://madwifi.org/wiki/UserDocs/StationInterface|documentação do site do madwifi-ng]]. ===== Resolução de Problemas ===== ==== Geral ==== Quase sempre os scripts padrões em uma distribuição linux irão configurar ath0 e/ou interfaces athX adicionais. Esses scripts todos devem ser apagados primeiros pelas instruções acima. Outro problema é que o script configura campos como ESSID, apelido e criptografias. Certifique-se de que todos esses campos estão apagados. ==== Número da interface athX aumentando (ath0, ath1, ath2.... ath45..) ==== A descrição e solução original do problema podem ser encontradas neste [[http://forum.aircrack-ng.org/index.php?topic=1641.0|tópico do fórum]]. Problema: Toda vez que o comando "airmon-ng start wifi0 x" é executado, uma nova interface é criada como deveria ser, mas existem dois problemas. O primeiro é que para cada vez que o airmon-ng é executado em wifi0, o número da interface em ath aumenta: a primeira vez é ath1, a segunda ath2, a terceira ath3, e por aí em diante. E isso continua em um curto período de tempo até ath56 e continua a subir. Descarregar (unload) o driver madwifi-ng, oureiniciar o sistema não tem efeito e o número da interface criada pelo airmon-ng continua a aumentar. O segundo problema é que se você executar o airmon-ng em wifi0, o athX criado não mostra como estando em Modo Monitor, mesmo embora esteja. Isso pode ser confirmado via iwconfig. Todos esses problemas estão relacionados a como udev associa nomes de interface. A resposta está aqui: http://madwifi.org/ticket/972#comment:12 Agradecimentos à lucida. A fonte do problema vem do gerador de regras de rede contínuo do udev. Cada distribuição é diferente... Então aqui está uma solução específica para Gentoo. Você deve conseguir adaptar esta solução à sua própria distribuição. Gentoo 2.6.20-r4 Udev 104-r12 Madwifi 0.9.3-r2 Aircrack-ng 0.7-r2 Solução: Mude o arquivo /etc/udev/rules.d/75-persistent-net-generator.rules DE: KERNEL=="eth*|ath*|wlan*|ra*|sta*........ PARA: KERNEL=="eth*|Ath*|wlan*|ra*|sta*....... Em outras palavras, você apenas muda para maiúscula a letra "a". ath* se torna Ath*. Salve o arquivo. Agora delete o arquivo /etc/udev/rules.d/70-persistent-net.rules. Remova o driver e insira-o de volta. Remover ath também funciona: KERNEL=="eth*|wlan*|ra*|sta*.... Isso está também no Gentoo, ambos 2.6.19-gentoo-r5 e 2.6.20-gentoo-r6 Para o Ubuntu, veja este[[http://forum.aircrack-ng.org/index.php?topic=2674.msg14904#msg14904|post no Fórum]]. A versão modificada de /etc/udev/rules.d/75-persistent-net-generator.rules é: # estas regras geram regras para nomeação de dispositivo de rede contínuo: ACTION=="add", SUBSYSTEM=="net", KERNEL=="eth*|Ath*|wlan*|ra*|sta*" \ NAME!="?*", DRIVERS=="?*", GOTO="persistent_net_generator_do" GOTO="persistent_net_generator_end" LABEL="persistent_net_generator_do" # construir string de descrição do dispositivo para adicionar um comentário à regra gerada SUBSYSTEMS=="pci", ENV{COMMENT}="PCI device attr{vendor}:$attr{device}($attr{driver})" SUBSYSTEMS=="usb", ENV{COMMENT}="USB device 0x$attr{idVendor}:0x$attr{idProduct}($attr{driver})" SUBSYSTEMS=="ieee1394", ENV{COMMENT}="Firewire device $attr{host_id})" SUBSYSTEMS=="xen", ENV{COMMENT}="Xen virtual device" ENV{COMMENT}=="", ENV{COMMENT}="$env{SUBSYSTEM} device ($attr{driver})" IMPORT{program}="write_net_rules $attr{address}" ENV{INTERFACE_NEW}=="?*", NAME="$env{INTERFACE_NEW}" LABEL="persistent_net_generator_end" ==== Interface ath1 criada ao invés de ath0 ==== Esta dica de solução de problema serve para os drivers madwifi-ng. Primeiro tente parar cada interface VAP que está sendo executada ("airmon-ng stop " onde é o nome VAP). Você pode obter a lista do iwconfig. Então dê "airmon-ng start wifi0". Se isso não resolver o problema, então siga a recomendação nesse [[http://forum.aircrack-ng.org/index.php?topic=2044.0|tópico]]. ==== Por que eu recebo a mensagem "ioctl(SIOCGIFINDEX) failed"? ==== Se você ver mensagens de erro parecidas com: * Error message: "SIOCSIFFLAGS : No such file or directory" * Error message: "ioctl(SIOCGIFINDEX) failed: No such device" Então [[:faq#why_do_i_get_ioctl_siocgifindex_failedno_such_device|veja esta registro no FAQ]]. ==== Mensagem de Erro: "wlanconfig: command not found" ==== Se você receber "wlanconfig: command not found" ou similar, então o comando wlanconfig está faltando no seu sistema ou não está no caminho. Use **locate** ou **find** para determinar se ele está no seu sistema e em qual diretório ele se encontra. Se não está no seu sistema, então tenha certeza de que você executou um "make install"I após ter compilado os drivers madwifi-ng. No Ubuntu, execute "apt-get install madwifi-tools". Se não está em um diretório no seu caminho, então mova-o para lá ou adicione o diretório ao seu caminho. ==== airmon-ng mostra RT2500 ao invés de RT73 ==== Veja este registro sobre [[:rt73#airmon-ng_shows_rt2500_instead_of_rt73|instalando o driver RT73]].