web-dev-qa-db-fra.com

Renifler le réseau LAN sans fil à l'aide de TCPDump

Si j'ai correctement compris les bases du travail sans fil, je devrais pouvoir renifler le trafic d'autres ordinateurs sur le réseau local sans fil. J'ai donc connecté un deuxième ordinateur à mon réseau local sans fil et j'ai essayé de voir si je pouvais renifler son http trafic via le réseau, en utilisant tcpdump avec une commande comme celle-ci:

Sudo tcpdump -v -i wlan0 dst 10.0.0.7

tandis que 10.0.0.7 est l'adresse IP de l'ordinateur que je veux renifler sur le réseau local. Mais malheureusement, je ne reçois rien de sortie (excepté l'ICMP Echo demande si je ping 10.0.0.7, Alors tcpdump fonctionne bien :)).

Qu'est-ce que je rate?

4
Sam Bruns

Vous devrez définir votre interface réseau en mode moniteur pour pouvoir renifler tout le trafic sur le réseau sans fil. Donc, avant de commencer tcpdump, procédez comme suit:

Sudo ifconfig wlan0 down
Sudo iwconfig wlan0 mode Monitor
Sudo ifconfig wlan0 up

Cela fera simplement désactiver votre interface, activer le mode moniteur et le refaire. Notez que toutes les cartes d'interface réseau ne prennent pas en charge le mode moniteur.

Pour réinitialiser votre NIC Retour à la normale, émettez les mêmes commandes, mais avec mode Managed.

Sur une note latérale, le trafic de votre renifleur ne ressemblera probablement pas à la façon dont vous vous attendez à ce que cela s'attendrale, en raison de schémas de cryptage que votre routeur utilise. Considérant que vous reniflant votre propre réseau, vous serez en mesure de déchiffrer la circulation dans la plupart des cas. ICI est un bref aperçu de la façon de le faire sur Wireshark, une alternative à tcpdump qui présente également une interface utilisateur graphique. Si vous préférez garder tcpdump pour capturer, vous pouvez également utiliser son -w Option pour vider le trafic vers un .pcap Fichier et ouvrez plus tard ce fichier dans Wireshark (ou tout autre analyseur de paquets).

Notez que si votre réseau utilise WPA ou le cryptage WPA2, vous devez capturer les poignées de main respectives entre le routeur et chaque périphérique que vous souhaitez surveiller. L'article WIKI WIKI que j'ai lié explique comment le faire:

WPA et WPA2 utilisent des clés dérivées d'une poignée de main EAPOL, qui se produit lorsqu'une machine rejoint un réseau Wi-Fi pour chiffrer le trafic. À moins que tous les quatre paquets de maintien soient présents pour la session, vous essayez de déchiffrer, Wireshark ne pourra pas déchiffrer le trafic. Vous pouvez utiliser le filtre d'affichage EAPOL pour localiser les paquets EAPOL dans votre capture.

Afin de capturer la poignée de main pour une machine, vous devrez forcer la machine à rejoindre le réseau alors que la capture est en cours.

9
zinfandel

Tout d'abord, vous n'avez pas spécifié si c'était un réseau ouvert ou WPA protégé. Cela fait une différence. Je suppose que c'est WPA parce que vous êtes éprouver des problèmes.

Vous n'êtes pas l'homme au milieu. Les paquets de 10.0.0.7 vont de cet ordinateur directement à la passerelle (c'est-à-dire 10.0.0.1) et sur Internet, ce qui vous contournent. Vous devez faire une arp spoof et insérez-vous entre la passerelle et cet utilisateur (10.0.0.7). Il y a beaucoup d'outils pour faire cela. En règle générale, vous avez d'abord configuré la transmission IP dans votre noyau, puis exécutez une commande comme arpspoof <victim ip> <gateway ip>

2
redwards510