Comment détecter et localiser un serveur DHCP non autorisé sur notre réseau local?
Vous pouvez utiliser un script nmap pour localiser un serveur qui enverra DHCPOFFER (tant qu'il est dans votre domaine de diffusion):
nmap --script broadcast-dhcp-discover
Cela donnera le nom de domaine DNS, votre IP, qui l'a offert, louez des informations ... toutes les choses amusantes.
Vous pouvez également inclure une liste d'hôtes qui ont quelque chose à voir avec le port 67:
nmap --script broadcast-dhcp-discover -p67 [your network CIDR]
La réponse à cette question dépendra en grande partie de la qualité du logiciel de gestion de votre réseau.
En supposant que cela soit raisonnable, je dirais que cela se fera en regardant l'adresse MAC des paquets du serveur non autorisé, puis en examinant l'interface de gestion de vos commutateurs pour voir à quel port cette adresse MAC est connectée. Tracez ensuite du port au port physique et voyez ce qui est connecté ...
Si vous n'avez aucun moyen de mapper à partir de l'adresse MAC -> port de commutation -> port physique, cela pourrait être un peu délicat, surtout si la personne qui exécute le serveur ne veut pas être trouvée.
Vous pouvez effectuer un balayage ping rapide de votre réseau en utilisant nmap (nmap -sP -v -n -oA ping_sweep [votre réseau ici]) qui vous donnerait une carte des adresses IP en adresses MAC, puis (en supposant que votre escroc est activé là), vous pouvez scanner l'adresse IP et voir si elle vous en dit quelque chose (par exemple, le nom de la machine des ports SMB) ...
Je viens de trouver le serveur DHCP escroc sur mon réseau local par la méthode classique des essais et erreurs. En regardant les propriétés du réseau, j'ai constaté que certains clients DHCP recevaient une adresse IP dans la plage voyante 192.168.1.x au lieu de la plage 192.168.3.x que j'avais configurée sur mon serveur DHCP.
J'ai d'abord suspecté un PC de développement qui héberge des machines virtuelles; la configuration est complexe et qui sait qu'il pourrait y avoir un serveur DHCP dans l'un de ces vm. Tirez simplement sur le câble réseau et voyez si ce client DHCP obtient maintenant une adresse IP valide. Pas d'amélioration, tant pis.
Maintenant, je soupçonnais la télévision "intelligente", c'est un Samsung et cette marque est connue pour espionner les téléspectateurs. Tiré son câble réseau. Mais pas de chance.
Puis, après avoir regardé autour de moi, j'ai pensé à ce petit vieux modem adsl avec 4 ports Ethernet que j'ai reçu il y a quelques mois d'un ami pour remplacer un commutateur Ethernet cassé. Tiré le câble adaptateur 12 volts. Bingo! Le client DHCP problème obtient maintenant une adresse IP valide! J'ai également réalisé que les problèmes de DHCP dans notre maison ont commencé il y a quelque temps.
D'accord, je n'étais pas assez intelligent pour jouer avec des outils comme nmap et/ou WireSnark. Mais Sherlock Holmes n'a-t-il pas réussi avec la déduction et l'induction?
PS
Avec un trombone déplié, j'ai fait une réinitialisation d'usine sur l'ancien modem adsl pour faire fonctionner le mot de passe linksys par défaut, et j'ai désactivé le serveur DHCP.
Vous pouvez utiliser Wireshark pour écouter les réponses DHCP aux demandes, puis accédez à la table Arp de votre commutateur pour trouver l'adresse et l'emplacement. Vous pouvez le faire avec la plupart des commutateurs configurables.