tcpdump comando funciona apenas no ip local

3

Eu estou tentando capturar alguns pacotes IP em minha LAN pessoal com o tcpdump, através do comando

tcpdump -A -i eth0 'tcp and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0) and host 192.168.1.x'

em que 192.168.1.x é o host de destino na rede. Mas funciona somente se o host de destino for meu ip, que é o IP da máquina onde o tcpdump é executado. Com qualquer outro IP na rede, não registra nada.

Eu tenho um switch não gerenciado. O comando mais simples

tcpdump -A 'host 192.168.1.x'

detecta apenas alguns pacotes igmp enviados periodicamente para um endereço de broadcast, 224.0.0.251, do host 192.168.1.x.

Mas como a captura de IP pode ser realizada?

Obrigado mesmo assim!

    
por BowPark 10.03.2014 / 23:28

1 resposta

6

Isso é provavelmente porque um switch envia apenas tráfego para uma porta, se ele acredita que o endereço MAC de destino está conectado a essa porta.

Em um switch gerenciado, você configuraria o modo monitor.

Em um switch não gerenciado, você tem algumas opções:

  • ARP spoofing, para enganar o resto da rede sobre qual endereço MAC corresponde ao endereço IP de destino. Você então reenvia os pacotes com o endereço MAC correto.
  • Inundando o comutador com endereços MAC suficientes que desiste e encaminha todos os pacotes para todas as portas. Pode ou não funcionar.
  • Substituir o comutador por um hub (sempre encaminha todos os pacotes para todas as portas, mas também apenas meio dúplex e várias outras desvantagens) ou um comutador gerenciado. Uma caixa unix com portas Ethernet suficientes pode funcionar como um switch gerenciado.
  • Se você se importa apenas com o tráfego da Internet, execute tcpdump no gateway.
  • Instale um toque na rede no cabo Ethernet indo até a máquina que está enviando ou recebendo o tráfego que você deseja monitorar

As ferramentas dsniff arpspoof e macof implementam as duas primeiras.

(Eles também podem derrubar sua rede e exigir que você reinicie vários equipamentos de rede. Como sua própria rede, esse é o seu negócio; fazer isso na rede de outra pessoa - pelo menos sem a permissão deles) seria considerado qualquer coisa de extremamente indelicado para absolutamente ilegal.)

    
por 10.03.2014 / 23:36