kentoh - Fotolia
So finden Sie unautorisierte DHCP-Server
Nicht autorisierte DHCP-Server können zu Verbindungsproblemen im Netzwerk führen. Wir erklären verschiedene Tools und deren Funktionen, mit denen sich diese Server finden lassen.
DHCP-Server übernehmen wichtige Hintergrundprozesse in einem Netzwerk. So verarbeiten Sie Anfragen von DHCP-Clients, die sich mit dem Netzwerk verbinden wollen und weist ihnen IP-Adressen zu, entweder statisch oder dynamisch. Werden diese Server in einem Netzwerk nicht autorisiert, kann dies schnell beträchtliche Auswirkungen haben, vor allem in kleineren und mittleren Netzwerken. Ist ein Client mit der falschen IP-Adresse ausgestattet, kann er sich nicht mit den Serveranwendungen verbinden. Eine inkorrekte IP-Adresse kann auch zustande kommen, wenn der Client für die Remote-Einwahl per DHCP vorbereitet werden soll. Diese Rogue-DHCP-Server können zu Verbindungsproblemen führen und es Angreifern ermöglichen, Datenverkehr abzufangen oder umzuleiten, was Datenschutzverletzungen mit sich bringen kann.
Kommt es zu Problemen in Netzwerk, muss nicht zwangsläufig ein unautorisierter DHCP-Server der Grund dafür sein. Trotzdem sollte beim Troubleshooting dies überprüft werden. Dafür lassen sich verschiedene Tools wie beispielsweise von Microsoft einsetzen.
In großen Netzwerken lassen sich nicht autorisierte DHCP-Server zwar blockieren, in dem auf den verwalteten Switchesdie entsprechenden Server gesperrt werden. Aber auch hier kann es sinnvoll sein, zuvor zu überprüfen, welche DHCP-Server es überhaupt gibt und woher die Probleme stammen.
Mit den richtigen Tools finden Sie nicht autorisierte DHCP-Server und so genannte Rogue-Geräte.
DHCPLOC Utility
Das kostenlose Microsoft-Tool DHCPLOC Utility kann ohne Installation über die Befehlszeile schnell und einfach den Datenverkehr zu DHCP-Servern überprüfen. Mit dhcploc.exe lässt sich in wenigen Sekunden feststellen, welche DHCP-Server es im Netzwerk gibt, und ob autorisierte DHCP-Server falsche IP-Adressen im Netzwerk verteilen. Mit DHCPLOC Utility können Sie auch überprüfen, ob auf einem Client zum Beispiel keine IP-Adresse eines DHCP-Servers ankommt. Das geht zwar auch mit Tools zur Netzwerküberwachung, allerdings wesentlich komplexer, und vor allem nicht so schnell.
Für DHCPLOC Utility wird zunächst eine Eingabeaufforderung oder PowerShell-Sitzung benötigt. Um zu überprüfen, ob DHCP-Server im Netzwerk IP-Adressen verteilen, wird das Tool mit der folgenden Syntax aufgerufen:
dhcploc <IP-Adresse>
Als IP-Adresse wird die der Netzwerkschnittstelle auf dem Computer verwendet, über den Sie überprüfen, ob ein DHCP-Server IP-Adressen verteilt. Sobald Sie den Befehl eingeben, sucht das Tool nach DHCP-Servern, die eine IP-Adresse anbieten.
Beim Tippen von d auf der Tastatur wird eine Anfrage an DHCP-Server im Netzwerk gestellt und auf dem Bildschirm wird die vom DHCP-Server angebotene IP-Adresse und seine eigene angezeigt. Hier sind die IP-Adressen der verschiedenen Server genau ersichtlich, so dass in wenigen Sekunden eine Liste der DHCP-Server im Netzwerk angezeigt werden kann.
So finden Sie schnell heraus, ob es im Netzwerk nicht autorisierte DHCP-Server gibt, oder ob in einem Netzwerksegment die Netzwerkdaten eines DHCP-Servers nicht ankommen.
Rogue DHCP Server Detection Tool
Das Rogue DHCP Server Detection Tool zeigt ebenfalls IP-Adressen an, sowie deren Antwortzeit und die angebotene IP-Adresse.
Für das Programm muss die entsprechende Netzwerkschnittstelle erst mit einer statischen IP-Adresse konfiguriert werden. Erst dann kann Rogue DHCP Server Detection auf die Schnittstelle zugreifen, und die entsprechenden Server anzeigen.
Das Tool ist vor allem in Active Directory-Umgebungen interessant, da sich hier schnell ein Überblick darüber gewinnen lässt, welche DHCP-Server autorisiert sind, und welche DHCP-Server ohne Autorisierung IP-Adressen im Netzwerk verteilen.
Vergabe von IP-Adressen überprüfen mit WireShark
Neben Spezial-Tools, wie den schon vorgestellten, lässt sich der Datenverkehr von autorisierten und nicht autorisierten DHCP-Servern auch mit Tools wie WireShark überprüfen. Überwachen Sie hier die Netzwerkschnittstelle des Clients, während dieser eine IP-Adresse im Netzwerk abrufen will, sind die einzelnen Schritte zu sehen.
Hier ist dann auch zu erkennen, ob DHCP-Server nicht autorisiert Daten versenden, oder ob in bestimmten Netzwerkbereichen keine IP-Adresse ankommt. Dazu kann zum Beispiel mit ipconfig /renew in der Befehlszeile von Windows eine neue IP-Adresse angefragt werden.
Beim ersten Abrufen einer IP-Adresse sendet ein Client eine DHCPDISOVER-Nachricht mit seiner MAC-Adresse als Broadcast in das Netzwerk. Das Paket erhalten alle DHCP-Server im Netzwerk. Die Absenderadresse ist 0.0.0.0, die Zieladresse 255.255.255.255. Wenn ein Client bereits über eine IP-Adresse verfügt hat, sendet er diese mit, um den Lease zu erneuern. DHCP-Server, die jetzt antworten, sende eine DHCPOFFER-Nachricht.
Hier ist in Tools wie WireShark zu sehen, von welchen IP-Adressen im Netzwerk eine DHCPOFFER-Nachricht geschickt wird. So lassen sich zuverlässig alle DHCP-Server im Netzwerk finden. Die DHCPOFFER-Nachricht enthält auch die vorgeschlagenen IP-Adressen für den Client.
Bei der Nachricht werden auch andere Daten übermittelt:
Die Renewal Time Value gibt die Anzahl an Sekunden an, wann der Client sich mit RENEW beim DHCP-Server meldet, um seine IP-Adresse zu erneuern. Der Standard sind 50 Prozent der Lease Time. Der Wert Rebinding Time Value gibt die Anzahl an Sekunden an, die der Client darauf wartet, ob er seine bisherige IP-Adresse behalten kann. Der Wert beträgt meistens 87,5 Prozent der vollen Lease Time. Die Leasedauer selbst wird mit IP Address Lease Time angezeigt.
Clients sammeln die DHCPDISCOVER-Nachrichten und entscheiden dann, welche IP-Adresse akzeptiert wird. Dabei spielen Lease-Dauer und andere Faktoren eine Rolle. Der Server erhält dann einen DHCPREQUEST. Der DHCP-Server informiert den Client anschließend mit einer DHCPACK-Nachricht, und bestätigt die IP-Adressen. Die Anderen DHCP-Server senden eine DHCPNAK-Nachricht und ziehen die angebotene IP-Adresse wieder zurück. Dieser Datenverkehr kann in WireShark nachvollzogen werden.
DHCP-Server mit Linux testen
Auch auf Linux-Clients kann der Datenverkehr zu DHCP-Servern mit WireShark überprüft werden. Um DHCP-Server über ein Tool zu testen, können Sie auf dhtest setzen.
Zusätzliche Optionen zum Auffinden unautorisierter DHCP-Server
Neben den oben genannten Tools, stehen Administratoren weitere Möglichkeiten für das Auffinden nicht autorisierter DHCP-Server zur Verfügung. So lassen sich PowerShell-Skripte zu diesem Zweck nutzen. Mit dem Cmdlet Get-DhcpServerAuditLog kann der Admin zum Beispiel die Audit-Protokolle des DHCP-Dienstes abrufen. Diese Protokolle können dann auf verdächtige Aktivitäten oder nicht autorisierte IP-Adresszuweisungen überprüft werden.
Darüber hinaus ist Nmap ein vielseitiges Tool, das zum Scannen von Ports und Netzwerken eingesetzt wird. Es ist besonder nützlich für große Netzwerke, in denen eine schnelle Identifizierung aller aktiven Geräte durchgeführt werden muss. Dafür nutzt der Admin den Befehl nmap -p67 [IP/IP-Range], mit dem gezielt nach aktiven DHCP-Servern gesucht wird. Zudem kann das Tool detaillierte Informationen über die gefundenen Geräte bereitstellen.
Mit dem Befehl ipconfig /all (unter Windows) oder ifconfig (unter Linux/macOS) kann der Admin eine manuelle Überprüfung anstoßen. Damit lassen sich alle Netzwerkinformationen anzeigen, inklusive der IP-Adresse des DHCP-Servers, von dem ein Gerät seine IP-Adresse erhalten hat. Der Administrator muss lediglich die angezeigten Adressen mit seiner Liste autorisierter Server abgleichen.
In vielen Unternehmen kommen bereits Netzwerkmanagementsysteme zum Einsatz. Diese bieten meist Funktionen zur Überwachung und Verwaltung von DHCP-Servern. So lässt sich beispielsweise das so genannte DHCP Snooping aktiviert werden, um nur autorisierte DHCP-Server im Netzwerk zuzulassen. Das reduziert das Risiko unautorisierter Geräte. Die Managementsysteme können zudem Alarme ausgelöst und Benachrichtigungen gesendet werden, wenn ein nicht autorisierter Server entdeckt wird.
Was tun, wenn ein unautorisierter DHCP-Server entdeckt wird
Wird ein nicht autorisierter Server aufgefunden, gibt es einige simple Schritte mit denen Admins darauf reagieren können.
- Identifikation: Verwenden Sie oben genannte Tools zur Identifizierung des Rogue Servers.
- Isolierung: Trennen Sie den nicht autorisierten Server sofort vom Netzwerk, um weiteren Schaden zu verhindern.
- Überprüfung der Sicherheitseinstellungen: Stellen Sie sicher, dass Ihre Netzwerksicherheitseinstellungen robust sind und dass nur autorisierte Geräte Zugriff auf das Netzwerk haben.
Durch die Kombination dieser Methoden können Sie effektiv unautorisierte DHCP-Server in Ihrem Netzwerk erkennen und entsprechende Maßnahmen ergreifen.