Pacote sem fio farejando no Linux. Dados capturados são quase apenas transmissões

2

Ambiente : Rede doméstica que opera no canal 8 (sou o administrador, todas as senhas são conhecidas e tenho acesso físico a todos os dispositivos), com um PC e um laptop conectados a ele ( ambos em pé a cerca de 20 cm do roteador)
Objetivo : Use um módulo sem fio no PC (executando Linux em uma VM) para detectar o tráfego do laptop
Problema : os dados capturados não são os esperados

Eu uso um módulo sem fio RaLink RT5370, que por sua vez usa a parte do driver rt2800usb do kernel. Aqui está a saída de iwconfig :

mon0      IEEE 802.11bgn  Mode:Monitor  Tx-Power=0 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

E aqui está a saída de ip link :

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
3: mon0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000
    link/ieee802.11/radiotap 00:e1:b2:00:36:79 brd ff:ff:ff:ff:ff:ff

Eu tentei capturar o tráfego de várias maneiras, mas eu prefiro usar o tcpdump:

tcpdump -n -w test.pcap -i mon0

Depois que comecei a capturar no PC, eu normalmente ligava o laptop, entrava na rede (para poder capturar o handshake EAPOL), navega na Internet um pouco e depois para a captura. Agora é aqui que meus problemas começam. Eu carrego o tráfego capturado em wireshark e noto que, em aproximadamente 1 minuto, que o laptop estava usando a rede, consegui capturar cerca de 600 a 700 pacotes. A grande maioria, cerca de 98% deles, são quadros Beacon transmitidos do roteador. Olhando para a minha última tentativa, foram capturados 643 pacotes, dos quais 638 (99,2%) foram transmitidos e 5 foram multicasts, originários do laptop. Então, ao todo, nada de útil foi gravado. Qual poderia ser o problema e como eu poderia capturar unicasts entre o laptop e o roteador?

A maior parte da documentação on-line parece estar preocupada em configurar a interface de rede no modo monitor e descriptografar o tráfego gravado, mas eu já acertei o primeiro, acredito, e o último não tem utilidade para mim se eu não tenho tráfego significativo para começar.

tl; dr o tcpdump parece capturar todo o lixo, como faço para capturar unicasts?

Nota: O OP desta questão ( Por que o Wireshark não está mostrando pacotes de camada alta como ICMP / IP / UDP? mostrado) parece estar com problemas semelhantes, mas tem quase três anos e a causa sugerida (hardware) não parece aplicável ao meu caso, pois estou usando um dispositivo completamente diferente.

    
por goblin 16.01.2016 / 20:33

1 resposta

2

Para capturar, em uma rede Wi-Fi, tráfego unicast não enviado para ou da máquina de captura, provavelmente será necessário capturar no modo monitor. O artigo da Wireshark Wiki sobre capturas WLAN fornece muitos detalhes sobre isso; a maneira de capturar no modo de monitor é dependente do sistema operacional - versões mais recentes da libpcap em sistemas operacionais não-Windows e versões atuais do Wireshark tentam permitir que você faça isso marcando uma caixa de seleção, mas, por vários motivos, isso não necessariamente trabalhe no Linux ou * BSD, e ele não funciona no Windows (para capturar no modo monitor no Windows, você precisa capturar com uma ferramenta como o Microsoft Network Monitor ou usar um dispositivo AirPcap com o Wireshark). / p>

Observe que, se a rede em que você está está "protegida", usando WEP ou WPA / WPA2, você precisará descriptografá-la; Os detalhes sobre isso estão no artigo da Wireshark Wiki sobre a decodificação do 802.11 - observe que, para o WPA / WPA2, você precisará capturar o tráfego que aparece quando os outros hosts se associam à rede, então você pode ter que desligar os telefones celulares antes iniciar sua captura de tráfego e ativá-los novamente depois que a captura for iniciada. Observe também que os filtros de captura funcionam em pacotes não decifrados, portanto, se o tráfego for criptografado, você não poderá usar filtros de captura em nada na camada IP (como endereços IP) ou acima, você só pode filtrar na camada MAC (MAC endereços, tipos de quadros e assim por diante). Você pode usar filtros de exibição quando o tráfego for descriptografado, no entanto.

    
por 16.01.2016 / 22:15