tcpdump -i any e modo promíscuo

2

A partir da página man do tcpdump 4.1.1 (sim, eu sei que é antigo)

   -i     Listen  on interface.  If unspecified, tcpdump searches the 
          system interface list for the lowest numbered, configured up 
          interface (excluding loopback).  Ties are broken by choosing >               the earliest match.

          On Linux systems with 2.2 or later kernels, an interface 
          argument of ''any'' can be used to capture packets from all
          interfaces.
          Note  that captures on the ''any'' device will not be done in
          promiscuous mode.

Alguém pode lançar luz sobre o que exatamente significa a última declaração. Eu estou trabalhando com um servidor IDS que tem muitas interfaces e quando eu uso tcpdump -i any, ele mostra claramente o tráfego não originado / destinado para o servidor IDS. No entanto, há outro serviço que já coloca todas as interfaces no modo promíscuo. Será que eles apenas significam que se você usar -i algum, o tcpdump não colocará as interfaces no modo PROMISC?

    
por deltaray 04.03.2015 / 22:44

1 resposta

3

Do they maybe just mean that if you use -i any that tcpdump won't put the interfaces into PROMISC mode?

Sim, é o que eu quis dizer com isso. O dispositivo "any" não funciona abrindo todos os dispositivos independentemente e capturando neles, ele funciona abrindo um "socket de pacote" e, em vez de vinculá-lo a um dispositivo em particular (que é como você captura naquele dispositivo no Linux) , deixando-o solto para que ele ouça todos os soquetes.

A chamada para configurar o modo promíscuo falharia em um soquete não acoplado (eu apenas testei em um kernel bastante recente), então o libpcap não ativará o modo promíscuo para o dispositivo "any".

    
por 05.03.2015 / 00:03