Tabela de conteúdos
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 <start|stop> <interface> [canal]
Onde:
- <start|stop> indica se você quer iniciar (start) ou parar (stop) a interface. (Obrigatório)
- <interface> 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 <nome da interface> 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 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 <nome da interface>
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
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 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 estepost 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 <interface>” onde <interface> é 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 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 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 instalando o driver RT73.