Sicherheit für DHCP Server
Vorwort
Das DHCP Protokoll (Dynamic Host Configuration Protocol) ist ein IP-Standard,
der entwickelt wurde, um die
Administration von Adresskonfigurationen weniger komplex zu gestalten. DHCP-Server
ermöglichen es dem
Administrator, eine automatische Zuweisung von TCP/IP Konfigurationen beim Rechnerstart
einzurichten.
Wird ein Clientcomputer von einem Subnetz in ein anderes verschoben, dann wird
seine alte IP-Adresse frei
und kann nau verwendet werden. Der Client konfiguriert seine TCP/IP-Einstellungen
automatisch, sobald
der Computer an seinem neuen Standort neu gestartet wird.
Hinweis:
Die Paketfilterung spielt bei DHCP-Servern keine große Rolle, denn DHCP-Anforderungen
sind Broadcast-
meldungen und können nicht über einen Router in ein anderes Netzwerk
weitergeleitet werden, sofern sie
nicht spezifisch hierfür konfiguriert werden oder ein DHCP-Relay Agent
konfiguriert wird.
Konfiguration der Rolle DHCP Server
Sie können DHCP installieren, indem Sie im Dialogfeld Software
auf Windows-Komponenten hinzufügen/ent-
fernen, dann auf Netzwerkdienste
und dann auf die Schaltfläche Details
klicken und DHCP-Protokoll (Dyn-
amic Host Configuration Protocol) wählen. Eine weitere Möglichkeit
den DHCP Server zu installieren und zu
konfigurieren besteht in der Möglichkteit die Rolle mittels der Serververwaltung
zu erstellen.
Autorisieren von DHCP Servern
Zwar mag die Rolle eines DHCP-Infrastrukturservers banal erscheinen, tatsächlich
aber kann ein DHCP Server
verwendet werden, um die Sicherheit von DHCP-Clientcomputern gezielt zu beeinträchtigen.
DHCP-Clients
vertrauen darauf, dass der DHCP-Server, der IP-Adressen zuweist, ihnen auch
Informationen zum Standard-
gateway und zu den DNS-Servern vermittelt. Ein Angreifer könnte einen DHCP
Server in einem Netzwerk-
segment aufstellen und Angaben zu Standardgateway und DNS-Server durch IP-Adressen
von Computern
ersetzen, di von ihm kontrolliert werden. Diese Computer könnten dann den
gesamten vom Client kommenden
Datenverkehr abfangen, ihn auf das Vorhandensein vertraulicher Informationen
überprüfen und auf dieser
Basis Man-in-the-Middle-Angriffe durchführen.
Die physiche Sicherheit und die Netzwerksicherheit stellen
die einzelnen Möglichkeiten dar, zu verhindern, dass
ein Angreifer einen falschen DHCP-Server in Ihrem Netzwerk aufstellt. Allerdings
kann Windows Server 2003
das Risiko vermindern, dass ein Benutzer unabsichtlich einen Windows-basierten
DHCP-Server in Ihrem
netzwerk startet, was dazu führen würde, dass DHCP-Clients falsche
Adressdaten erhalten würden und nicht
auf Netzwerkressourcen zugreifen könnten. Active Directory enthält
eine Liste der IP-Adressen für Computer,
die Sie für den Einsatz als DHCP-Server in Ihrem Netzwerk autorisiert haben.
Es unterstützt die Erkennung
nicht autorisierter DHCP-Server und verhindert, dass diese Server in Ihrem Netzwerk
gestartet oder ausge-
führt werden können.
Hinweis:
Microsoft Windows NT 4.0 und ältere Windows Betriebssytsteme überprüfen
diese DHCP-Serverautorisie-
rung nicht.
Um einen Computer als DHCP-Server zu autorisieren, melden
Sie sich zunächst als Organisationsadmin-
istrator an. Dann starten Sie die DHCP-Konsole, klicken mit der rechten Maustaste
auf den Server und dann
auf Autorisieren. Sobald ein DHCP-Server autorisiert
ist, wird der Servercomputer der Liste der autorisierten
DCHP-Server in der Verzeichnisdatenbank hinzugefügt. Sie können überprüfen,
ob ein Server erfolgreich
autorisiert wurde, indem Sie mit der rechten Maustaste auf den DHCP
Knoten in der DHCP Konsole
klicken und dann Autorisierte Server verwalten
wählen.
Ein DHCP-Server unter Windows Server 2003 geht wie nachfolgend
beschrieben vor, um zu ermitteln, ob
Active Directory vorhanden ist. Wird eine Active Directory Domäne gefunden,
dann wertet der Server
seine eigene Autorisierung aus, indem er einen der folgenden Prozesse ausführt.
Welcher Prozess
genau durchgeführt wird, hängt davon ab, ob es sich um einen Mitglieds-
oder einen eigenständigen Server
handelt.
Mitgliedserver
Bei Mitgliedsserver (d.h. Servern, die Mitglied einer Domäne sind, welche
wiederum Teil einer Organisation
ist) fragt der DHCP-Server eine Liste mit den IP-Adressen der autorisierten
DCHP-Server bei Active Directory
ab. Findet der Server seine eigene IP-Adresse in dieser Liste, dann führt
er eine Initialisierung durch und stellt
dann den DHCP-Dienst für Clients bereit. Findet er seine Adresse nicht
in der Liste, dann findet die Initiali-
sierung ebenso wenig statt, wie die Bereitstellung von DHCP-Diensten. DHCP-Server,
die in einer Umge-
bung mit mehreren Gesamtstrukturen installiert sind, beschränken sich bei
der Autorisierungsermittlung
auf ihre jeweilige Gesamtstruktur. Nach der Autorisierung bieten DHCP-Server
in einer Umgebung
mit mehreren Gesamtstrukturen allen erreichbaren Clients IP-Adressen zu Lease
an. Das bedeutet, dass
wenn Clients in einer anderen Gesamtstruktur über Router, an denen eine
DHCP- oder BOOTP-Weiterlei-
tung aktiviert ist, erreichbar sind, der DHCP-Server auch diesen Clients IP-Adressen
anbietet.
Steht Active Directory nicht zur Verfügung, dann arbeitet der DHCP-Server
in seinem letzen bekannten
Zustand weiter.
Eigenständige Server
Bei eigenständigen Servern (d.h. Servern, die kein Mitglied einer Domäne
sind oder Teil einer vorhandenen
Organisation sind) sendet der DHCP-Dienst nach dem Start eine DHCP-Informationsnachricht
(DHCPINFORM). Diese Meldung beinhaltet verschiedene herstellerspezifische Optionstypen,
die von
anderen DHCP-Servern unter Windows Server 2003 erkannt und unterstützt
werden. Sobald andere
DHCP-Server die Meldung erhalten, ermöglichen diese Optionstypen die Abfrage
und den Empfang
von Informationen zur Stammdomäne. Bei einer Abfrage antworten die anderen
DHCP-Server mit
DHCP-Bestätigungsmeldungen (DHCPACK). Empfängt der eigenständige
Server keine Antwort, wird
er initialisiert und stellt Clietns DHCP-Dienste bereit. Wenn der eigenständige
Server eine Antwort
von einem in Active Directory autorisierten DHCP-Server empfängt, wird
der eigentständige Server nicht
initialisiert und stellt Clients keine DHCP-Dienste bereit.
Autorisierte Server wiederholen den Erkennungsprozess standardmäßig
in Abständen von 60 Minuten.
Nicht autorisierte Server wiederholen den Erkennungsprozess standardmäßig
in Abständen von
zehn Minuten. Bemühungen zur Erkennung nicht autorisierter Server werden
als Einträge vom Typ
Rogue-Erkennung wird neu gestartet im Überwachungsprotokoll
verzeichnet.
Dynamische DNS Updates
DHCP und DNS sind eng miteinander verbunden, denn ein DHCP-Server lässt
sich so konfigurieren, dass
er Updates im Namen seiner DHCP-Clients an jedem DNS-Server durchführt,
der dynamische Updates
unterstützt. Dies ist ein aus sicherheitstechnischer Sicht wesentliches
Konzept, denn Netzwerkdienste
wie ISS können bei der Autorisierung von Abfragen dNS einsetzen. Außerdem
können Netzwerkdienste,
die Verwendungs- oder Überwachungsprotokolldateien erstellen, DNS Informationen
zu Clients speichern.
Aus diesem Grund verbessern Sie dadurch, dass Sie über DNS-Informationen
z uallen Computern im
Netzwerk verfügen, die Netzwerksicherheit, denn eine Nachverfolgung von
IP-Kommunikationsvorgängen
zum beteiligten Computer ist so wesentlich einfacher.
Der DHCP-Server kann zur Registrierung und Aktualisierung
der Ressourceneinträge Host (A) und
Pointer (PTR) im Namen seiner DHCP-fähigen
Clients verwendet werden. Der PTR-Eintrag löst die
IP-Adresse des Clients in seinen Hostnamen auf, der A-eintrag den vollqualifizierten
Domänenamen
(Fully Qualified Domain Name, FQDN) in die IP-Adresse. zwar sind Endbenutzer
auf A-Einträge
angewiesen, um Dienste im Netzwerk zu finden, aber PTR-Einträge sind für
sicherheitsrelevante
Aufgaben wie die Filterung eingehender Abfragen geeigneter, die auf dem Domänennamen
des Clients
basieren.
Standardmäßig registriert und aktualisiert Windows
Server 2003 Clientinformationen über die maßgeb-
lichen DNS-Server der Zone, in der der DHcP-Server aufgestellt ist, gemäß
der DHCP-Clientanforderung.
In diesem Modus kann der DHCP-Client die Verarbeitungsweise anfordern, die der
DHCP-Server für
Aktualisierungen seiner A-und PTR-Ressourceneinträge durchführt. Sofern
dies möglich ist, verarbeitet
der DHCP Server die Clientanforderungen zur Bearbeitung von Aktualisierungen
für den zugehörigen
Namen und die I-Adressinformationen im DNS. dies ist die Standardeinstellung,
die aber dazu führen
kann, dass die DNS-Einträge von DHCP-Clients nicht aktualisiert werden,
weil davon ausgegangen
wird, dass der Client seine eigenen DNS-Einträge registriert. Um diese
Einstellung zu wählen, rufen
Sie das Eigenschaftenfenster des DHCP-Servers oder eines DHCP-Bereichs auf.
Klicken Sie hier auf
die Registerkate DNS und aktivieren Sie das
Kontrollkästchen DNS-A und -PTR Einträge
nur nach
aufforderung von DHCP-Client dynamisch aktualisieren.
Um den DHCP-Server hingegen so zu konfigurieren, dass er die
DNS-Einträge für einen Client immer
aktualisiert, rufen Sie das Eigenschaftenfenster des DCHP-Servers oder eines
DCHP-Bereichs auf,
klicken auf die Registerkarte DNS, und aktivieren das Kontrollkästchen
DNS-A und -PTR Einträge
immer dynamisch aktualisieren. In diesem Modus führt der DHCP-Server immer
Aktualisierungen
des Client FQDN, der geleasten IP-Adressinformationen und sowohl der A- als
auch der PTR-Ress-
ourceneinträge durch, unabhängig davon, ob der Client seine eigene
Aktualisierungen durchführen
möchte. Wenn Sie es vorziehen, den Clients die Aktualisierung ihrer eigenen
DNS-Einträge zu
überlassen, können Sie das Kontrollkästchen Dynamische
DNS-Updates mit den unten angege-
benen Einstellungen aktualisieren deaktivieren.
Zwar können alle neueren Versionen unter Windows - Windows
2000, Windows XP und Windows
Server 2003 - ihre eigenen DNS-Einträge regisrieren, aber ältere Versionen
wie etwa Windows 98
beherrschen diese Fähigkeit nicht. Konfigurieren Sie den DHCP-Server deswegen
so, dass er DNS
Einträge im Auftrag dieser Clients registriert, indem Sie das Kontrollkästchen
DNS-A- und -PTR
Einträge für DHCP-Clients, die keine Updates anfordern (z.B. Clients,
die Windows NT 4.0
ausführen), dynamisch aktualisieren aktivieren.
DNS Eigenschaften, Dynamisches
DNS
Warnung:
Auc hwenn die Möglichkeit, den PTR-Eintrag nachzuschlagen, der für
eine bestimmte IP-Adresse regist-
riert ist, bei der Ermittlung der Herkunft einer Anforderung nützlich sein
kann, so ist dies doch kaum ein zu-
verlässiges Hilfsmittel, wenn es darum geht, einen Angreifer zu identifizieren.
Ein Angreifer würde nämlich
entweder eine IP-Adresse verwenden, ohne sich beim DHCP-Server zu regisrieren,
oder er würde als Her-
kunft die Adresse eines anderen Benutzers vortäuschen.
Bekannte Sicherheitsrisiken bei DHCP-Servern
Das DHCP-Protokoll selbst ist ein offener Internetstandard mit mehreren bekannten
Sicherheitsrisiken.
Zunächst einmal ist DHCP ein Protokoll ohne Authentifizierung. Wenn ein
Benutzer eine Verbindung mit
dem Netzwerk herstellt, dann muss er keine Anmeldeinformationen übermitteln,
um eine Lease zu er-
halten. Insofern kann ein nicht authentifizierter Benutzer eine Lease für
jeden DHCP-Client bekommen,
sofern ein DHCP-Server vorhanden ist, der diese vermitteln kann. Alle Optionswerte,
die der DHCP-Ser-
ver mit der Lease bereitstellt, zB. die IP-Adressen von WINS-Servern (Windows
Internet Naming Service)
oder DNS Servern, werden dem unauthentifizierten Benutzer so bekannt gegeben.
Wird der DHCP-Client
als Mitglied einer Benutzer- oder Anbieterklasse identifiziert, dann stehen
außerdem die Optionen zur
Verfügung, die mit der betreffenden Klasse verknüpft sind.
Böswillige Benutzer mit physichem Zugriff auf das DHCP-fähige
Netzwerk können Denial-of-Service-Angri-
ffe auf DHCP-Server ausführen, indem sie beim Server zahlreiche Leases
anfordern und so die Anzahl
der Leases dezimieren, die für die anderen DHCP-Clients verfügbar
sind. Außerdem kann sich ein solcher
Denial-of-Service-Angriff auch auf den DNS-Server auswirken, wenn der DHCP-Server
zur Durchführung
dynamischer DNS-Updates konfiguriert ist.
Hinweis:
Wenn Clients unter Windows XP 802.1X fähige LAN-Switches oder drahtlose
Access-Points für den
Zugriff auf ein Netzwerk verwenden, findet die Authentifizierung statt, bevor
der DHCP-Server eine Lease
zuweist. In einem solchen Fall ist die Sicherheit für DHCP also höher!!
Um diese Risiken zu mindern, sollten Sie sicherstellen, dass
unautorisierte Personen keinen physichen
oder drahtlosen Zugriff auf Ihr Netzwerk haben, und zudem die Überwachungsprotokollierung
aktivieren
(siehe nachfolgender Abschnitt). Konfigurieren Sie DCHCP-Server paarweise und
teilen Sie die DHCP-
Bereiche so zwischen den Servern auf, dass 80 Prozent der Adressen über
den einen und die verblei-
benden 20 Prozent über den zweiten Server vergeben werden. So stellen Sie
sicher, dass Clients bei
Ausfall eines Servers weiterhin IP-Adresskonfigurationen erhalten.
Überlegungen zur Protokollierung
Aktivieren Sie die Überwachungsprotokollierung für jeden DHCP-Server
in Ihrem Netzwerk. Überprüfen
Sie die Protokolldateien regelmäßig und überwachen Sie sie,
wenn der DHCP-Server eine ungewöhnlich
hohe Anzahl von Leaseanforderungen von Clients erhält. Die Überwachungsprotokolldateien
enthalten
die Informationen, die Sie benötigen, um die Herkunft von Angriffen gegen
den DHCP-Server zurückzu-
verfolgen. Die Standardposition der Überwachungsprotokolldateien ist %SystemRoot%\system32\dhcp.
Sie können zudem im Systemprotokoll nach erläuternden Informationen
zum DHCP-Serverdienst suchen.
Standardmäßig protokolliert der DHCP-Dienst nur
die Start- und Beendigungsereignisse in der Ereignis-
anzeige. Eine detailliertere Protokollierung kann wie folgt am DHCP-Server aktiviert
werden:
Verwenden Sie die DHCP-Überwachungsprotokolle, um die dynamischen DNS-Updates
durch den
DHCP-Server zu überwachen. Die Ereigniskennung 30
steht für ein dynamisches Update eines DNS-
Servers. Die Kennung 31 weist darauf hin,
dass das dynamische Update fehlgeschlagen ist, während
die Kennung 32 ein erfolgreiches Update signalisiert.
Die IP-Adresse des DHCP-Clients ist im DHCP-
Überwachungsprotokoll enthalten. Auf diese Weise können Sie etwa die
Herkunft eines Denial-of-
Service-Angriffs ermitteln.
DHCP-Clients sind in den Protokolleinträgen häufig schwierig auszumachen,
denn die einzigen Infor-
mationen, die in den meisten Ereignisprotokollen gespeichert sind, sind Computernamen
und nicht
IP-Adressen. Die DHCP-Überwachungsprotokolle stellen ein weiteres Hilfsmittel
zur Ermittlung der
Herkunft interner Angriffe oder unbeabsichtigter Aktivitäten dar. Allerdings
sind die Informationen in
diesen Protokollen alles andere als zuverlässig, denn sowohl Hostnamen
als auch MAC-Adressen
(Media Access Control) können gefälscht oder vorgetäuscht sein.
(Unter diesem als Spoofing bezei-
chneten Vortäuschen versteht man eine Vorgehensweise, bei der eine Datenübertragung
von einem
Benutzer stammt, der ein anderer ist als derjenige, der er zu sein vorgibt.)
Nichtsdestoweniger überwiegen die Vorteile der Ermitlung dieser Daten bei
weitem die Belastungen,
die durch die Aktivierung der Protokollierung an einem DHCP-Server entstehen.
Wenn Sie mehr als
nur eine IP-Adresse und einen Computernamen haben, kann dies bezüglich
der Art und Weise, wie
eine IP-Adresse im Netzwekr verwendet wurde, schon sehr aussagekräftig
sein.
Standardmäßig haben Mitglieder der Gruppen "Server-Operatoren"
und "Authentifizierte Benutzer"
Leseberechtigungen für diese Protokolldateien. Um jedoch die Integrität
der Daten zu sichern, die
von einem DHCP-Server protokolliert wurden, empfiehlt es sich, den Zugriff auf
diese Protokollda-
deien auf die Serveradministratoren zu beschränken. Die Gruppen "Server-Operatoren"
und
"Authentifizierter Benutzer" sollten also aus der ACL des Ordners
%SystemRoot%\system32\dchp
entfernt werden.
Erstellt von: Haßlinger Stefan
Im: Jahr 2006