M 4.143 Sichere Konfiguration des DHCP unter Windows 2000
Verantwortlich für Initiierung: IT-Sicherheitsbeauftragter, Leiter IT
Verantwortlich für Umsetzung: Administrator
Mittels DHCP (Dynamic Host Configuration Protocol) lässt sich die Konfiguration von Rechnern beim Boot-Vorgang vornehmen. DHCP ist ein Client-Server Protokoll: Ein DHCP-Server verwaltet einen oder mehrere Pools von IP-Adressen, die er auf Anforderung an DHCP-Clients auf Zeit vergeben kann. Die Client-Anforderung ist Broadcast-basiert und wendet sich an alle DHCP-Server in einem Netz. Der Client wählt aus den verschiedenen Server-Antworten eine beliebige aus; dies ist in der Regel die erste Antwort. Insofern existiert prinzipiell keine feste Client-Server-Bindung. Die IP-Adresse wird einem Client nur auf Zeit, der so genannten Lease-Dauer, zugeordnet. Ist diese abgelaufen, so kann der Client die Verlängerung der Zuordnung beim Server beantragen. Ist die maximale Lease-Dauer abgelaufen, so muss ein Neuantrag erfolgen, wodurch in der Regel eine neue IP-Adresse festgelegt wird. Der DHCP-Server löscht Adressen-Zuordnungen, wenn die Lease-Dauer abgelaufen ist und keine Verlängerung beantragt wurde, oder wenn die maximale Lease-Dauer abgelaufen ist. Die betroffene IP-Adresse wird dann wieder in den Pool der nicht zugeordneten Adressen aufgenommen und kann ab dann an andere Rechner vergeben werden. Der Windows 2000 DHCP-Server kann auch mit dem älteren bootp-Protokoll umgehen, das ursprünglich aus der Unix-Welt stammt. So können auch Rechner, auf denen nicht Windows 2000 installiert ist, mit IP-Adressen versorgt werden.
Häufig wird DHCP nur zur dynamischen Zuordnung von IP-Adressen verwendet, da das feste Eintragen von IP-Adressen auf Clients in einem großen Netz mühsam ist. DHCP erlaubt jedoch auch die Konfiguration vieler weiterer Netz-bezogener Parameter (z. B. DNS -Server). Diese Parameter - insgesamt mehr als 70 - die auch DHCP-Optionen genannt werden, können für jeden Adresspool unterschiedlich konfiguriert werden.
Bei der Verwendung von DHCP ergeben sich mehrere Sicherheitsprobleme, die berücksichtigt werden müssen:
- Erfolgt die IP-Adressen-Zuordnung dynamisch, kann eine bestimmte IP-Adresse nicht mehr automatisch einem dedizierten Rechner zugeordnet werden. Im Falle eines Angriffes oder bei der nachfolgenden Angriffsrekonstruktion muss daher immer zunächst festgestellt werden, welcher Rechner zum fraglichen Zeitpunkt die entsprechende IP-Adresse erhalten hat. Dies erfordert konsistente Protokolldateien sowie eine synchronisierte Zeit innerhalb des gesamten Netzes, damit eine korrekte zeitliche Zuordnung der Einträge aus Protokolldateien, die auf unterschiedlichen Rechnern erzeugt wurden, möglich ist.
- Die IP-Adressen werden bis zum Ablauf der Lease-Dauer einem bestimmten Rechner zugeordnet. Die Namen-Adressen-Zuordnung wird entsprechend im DNS-Server registriert. Ist ein Rechner ausgeschaltet oder kann ein Angreifer einen Rechner lahm legen, z. B. durch eine Denial-of-Service-Attacke, so kann er u. U. dessen IP-Adresse übernehmen, solange die Lease-Zeit noch nicht abgelaufen ist. Um die Zeitspanne zu verringern, in der eine illegale Übernahme einer IP-Adresse möglich ist, sollte der DHCP-Server so konfiguriert werden, dass er das Forward-Mapping im DNS-Server nach Ablauf der Lease-Zeit automatisch löscht.
- Damit beim Einsatz von DHCP die Zuordnung zu Rechnern möglichst statisch ist, empfiehlt es sich, eine lange Lease-Dauer (z. B. 6 Monate) einzurichten. Auf diese Weise hat ein Rechner eine fast statische IP-Adresse und DHCP kann zum Verteilen von Konfigurationen über DHCP-Optionen verwandt werden. Lange Lease-Zeiten können jedoch bei mobilen Rechnern - je nach DNS-Update-Verfahren - auch zu Problemen führen (siehe unten).
- Die Vergabe von IP-Adressen an DHCP-Clients ist unter Sicherheitsgesichtspunkten eine kritische Aktivität. Aus diesem Grund sollten nur berechtigte DHCP-Server in einem Netz existieren. Unter Windows 2000 können DHCP-Server nur betrieben werden, wenn diese im Active Directory als autorisierte DHCP-Server registriert wurden. Dies erfolgt in der DHCP-Verwaltung (MMC-Snap-In) über Vorgang/Autorisieren. Es ist jedoch zu beachten, dass ein Angreifer auch DHCP-Server einsetzen kann, die nicht unter Windows 2000 betrieben werden, beispielsweise Linux DHCP-Server. Solche DHCP-Server unterliegen nicht dieser Einschränkung. Allerdings durchsuchen die Windows 2000 Komponenten automatisch den Netzverkehr nach Nachrichten von nicht autorisierten DHCP-Servern und melden solche. Eine explizite Konfiguration dieses Verhaltens ist nicht notwendig.
- DHCP-Server sollten nicht auf einem Windows 2000 Domänen-Controller ablaufen. Alle Betriebssystemkomponenten von Windows 2000 laufen unter den Berechtigungen Local System ab. Ein Zugriffsschutz zwischen diesen Komponenten existiert daher nicht. Eine entsprechende Empfehlung wird auch von Microsoft selbst ausgesprochen.
- Wird DHCP auch für zentrale Server eingesetzt (z. B. WWW-Server), so empfiehlt es sich, entsprechende Adressreservierungen im DHCP-Server einzutragen. Dazu wird die so genannte MAC-Adresse, die die eindeutige Identität der Netzkarte des relevanten Rechners darstellt, mit einer IP-Adresse verknüpft. Diese kann dann nur vom Rechner mit der eingetragenen MAC-Adresse erfolgreich angefordert werden. Es ist jedoch zu beachten, dass moderne Netzkarten auch das Ändern der MAC-Adresse zulassen, so dass auch dies keinen vollständigen Schutz gegen die Übernahme von IP-Adressen bietet.
- Generell ist auch für Arbeitsplatzrechner, die im Regelfall nicht ständig im Netz bewegt werden, die Bindung der IP-Adresse an die MAC-Adresse zu empfehlen. Dieses Vorgehen erfordert allerdings das Pflegen der MAC-IP-Adressen-Zuordnung für alle Arbeitsplatzrechner. Dies kann jedoch zentral erfolgen und erleichtert die Auswertung von Protokollen auf anderen Rechnern (z. B. auf einer Firewall), insbesondere in heterogenen Netzen.
- Der Windows 2000 DHCP-Server kann so konfiguriert werden, dass nicht nur das Reverse-Mapping (IP-Adressen-Namen-Zuordnung), sondern auch
das Forward-Mapping (Namen-IP-Adressen-Zuordnung) im DNS-Server eingetragen wird. Dies hat den Vorteil, dass dynamische DNS-Updates nur durch DHCP-Server erfolgen können, sodass Veränderungen immer durch die gleichen und bekannten Rechner ausgelöst werden. Dieses Verfahren besitzt jedoch auch verschiedene Nachteile:- Die DNS-Records sind dann im Besitz des DHCP-Servers. Fällt dieser aus, so müssen die DNS-Records vom Administrator von Hand entfernt werden.
- Werden DHCP-Clients häufig bewegt, so erhalten sie ihre Adresse ggf. von unterschiedlichen DHCP-Servern, werden jedoch beim gleichen DNS-Server registriert. Dadurch kann das Adressen-Update fehlschlagen, da das DNS-Record noch auf den vorherigen DHCP-Server registriert ist und der aktuelle DHCP-Server nicht die Update-Berechtigung besitzt. Die Wahrscheinlichkeit für das Auftreten dieses Phänomens kann dadurch verringert werden, dass kürzere Lease-Zeiten konfiguriert werden und die DHCP-Server nach Ablauf der Lease-Zeit auch das Forward-Mapping im DNS-Server löschen.
- Tragen DHCP-Server auch das Forward-Mapping im DNS-Server ein, so geschieht dies unter den Berechtigungen des DHCP-Servers, dem diese Erlaubnis aufgrund seiner Domänenzugehörigkeit erteilt ist. Da auf DHCP-Ebene keine Authentisierung erfolgt, können auf diese Weise auch Rechner, die nicht Domänenmitglieder sind, im DNS registriert werden. Erfolgt das Eintragen des Forward-Mappings durch den DHCP-Client selbst und ist die Option Secure Update für die relevante DNS-Zone aktiviert, so können nur authentisierte Rechner DNS-Updates vornehmen.
Zusammenfassend muss berücksichtigt werden, dass die Nutzung von DHCP und dynamischen DNS-Updates jeweils mit Vor- und Nachteilen behaftet ist. Die zu verwendende Konfiguration muss daher jeweils für den Einzelfall nach einer sorgfältigen Risikoabschätzung entschieden werden.
Ergänzende Kontrollfragen:
- Ist geprüft worden, ob auf den Einsatz von DHCP verzichtet werden kann?
- Ist der DHCP-Server so konfiguriert, dass er die von ihm erzeugten DNS-Einträge automatisch nach Ablauf der Lease-Dauer wieder löscht?
- Sind für alle nicht mobilen Rechner, die DHCP nutzen müssen, vordefinierte IP-Adressen reserviert und an die jeweilige MAC-Adresse gebunden?
- Ist geprüft worden, ob alle dynamischen DNS-Einträge ausschließlich durch den DHCP-Server erfolgen können?