Anleitung zur Verringerung von Sicherheitsbedrohungen unter Windows NT und Windows 98

Kapitel 3: Netzwerksicherheit und -absicherung

Veröffentlicht: 13. Sep 2004

In diesem Kapitel werden Sicherheitslücken in Netzwerken beschrieben und Möglichkeiten der Absicherung von Hosts Netzwerk gegen solche Sicherheitslücken vorgestellt.. Themen sind Netzwerksegmentierung, Sichern des TCP/IP-Stacks (Transmission Control Protocol/Internet Protocol) sowie der Einsatz persönlicher Firewalls zum Schutz von Hosts.

Auf dieser Seite
HintergrundHintergrund
Konzeption der NetzwerksicherheitKonzeption der Netzwerksicherheit
ImplementierungImplementierung
ZusammenfassungZusammenfassung

Hintergrund

Ältere Systeme erregen oft die Aufmerksamkeit von Angreifern, da sie auf ein gewisses Vertrauen bzw. auf Interaktionen mit internen Anwendungen schließen lassen – dies ist meist der Grund, weshalb sie immer noch im Einsatz sind. Wenn bei solchen Systemen tatsächlich eine Sicherheitslücke vorhanden ist, sind sie für Angreifer extrem interessant und bieten sich für weitere Erkundungen geradezu an.

Wenn Sie ältere Systeme schützen möchten, müssen Sie deshalb den Stellenwert ermitteln, den diese Systeme in Ihrer Gesamtumgebung einnehmen. Beim Aufbau und der Konfiguration des gesamten Netzwerks können Sie logische Punkte erstellen, die den feindlichen Datenverkehr so weit wie möglich beschränken, bevor er Ihre älteren Systeme erreichen kann. Diese Maßnahmen gelten über die systemspezifischen Schutzmaßnahmen hinaus, die wir in den folgenden Kapiteln erläutern werden.

Der Begriff Perimeternetzwerk beschreibt üblicherweise ein isoliertes Netzwerksegment an dem Punkt, wo die Verbindung zwischen Unternehmensnetzwerk und Internet besteht. Dienste und Server, die mit dem externen, ungeschützten Internet in Verbindung stehen müssen, werden im Perimeternetzwerk platziert. Dieses wird auch als DMZ, demilitarisierte Zone, oder überwachtes Subnetz bezeichnet. Auch wenn die Angreifer tatsächlich in der Lage sind, Sicherheitslücken in öffentlich zugänglichen Diensten auszunutzen, nähern sie sich somit dem vertrauenswürdigen inneren Netzwerk lediglich einen Schritt. Um einen besseren Schutz für Ihr gesamtes Netzwerk zu erhalten, sollten Sie bei älteren Systemen genauso vorgehen wie bei Ihrem Perimeternetzwerk: Sie platzieren die älteren Systeme in eigenen Netzwerksegmenten und isolieren sie dadurch von anderen Hosts im Netzwerk. Dieser Ansatz bietet zwei Vorteile: Er mindert das Risiko, dass ein kompromittiertes älteres System sich auf den Rest des Netzwerks auswirkt, und er ermöglicht ein aggressiveres Filtern und Blockieren des Netzwerkdatenverkehrs von und zu den älteren Computern.

Hinweis: Microsoft empfiehlt, Systeme unter Microsoft® Windows NT®, Version 4.0, oder Microsoft Windows® 98 niemals direkt im Internet zu platzieren, auch nicht im Rahmen eines Perimeternetzwerks. Diese Systeme sollten nur in Ihrem internen Netzwerk zum Einsatz kommen.

Überlegungen zur Netzwerksicherheit

Sie sollten die älteren Systeme in Ihrer Umgebung auf die gleiche Weise schützen wie Ihre Perimeterumgebung. Um Ihr Netzwerk zu schützen und abzusichern, müssen Sie Ihre geschäftlichen Anforderungen und finanziellen Mittel anhand der in den folgenden Abschnitten ausgeführten Überlegungen abwägen:

Tiefenverteidigung

Perimeterkontrolle

Bidirektionale Bedrohungen

Trennung verschiedenartiger Dienste

Ausfallplanung und Reaktion auf Zwischenfälle

Sicherungskopien

Zeitsynchronisierung

Überprüfung und Überwachung

Informiertes Bewusstsein

Tiefenverteidigung

Um Computersysteme vor modernen Bedrohungen zu schützen, sollten IT-Manager eine Tiefenverteidigungsstrategie entwickeln. Eine solche Strategie umfasst den Ausschluss risikoreicher Faktoren und die Einführung von Kontrollmaßnahmen, die das Risiko mindern. Wie gut Ihre Software, Hardware, Prozesse und Mitarbeiter auch sein mögen – ein zielstrebiger Angreifer kann sich dennoch einen Weg durch eine einzelne Sicherheitsebene bahnen. Das Modell der Tiefenverteidigung schützt Ihr Kapital in Form mehrerer Sicherheitsebenen vor Eindringungen und Sicherheitsbedrohungen. Dieser mehrere Ebenen umfassende Ansatz zur Systemsicherheit erhöht den Aufwand, den ein Angreifer betreiben muss, um in ein Informationssystem eindringen zu können, und senkt dadurch das Gesamtrisiko und die Wahrscheinlichkeit einer Gefährdung.

Ein Tiefenverteidigungsansatz baut deshalb nicht nur auf eine starke Perimeterabwehr und abgesicherte Server auf, sondern auf das Zusammenspiel mehrerer Abwehrmaßnahmen gegen potenzielle Bedrohungen. Eine Tiefenverteidigung verringert nicht den Bedarf an anderen Sicherheitsmaßnahmen, sondern nutzt die gemeinsame Stärke aller Komponenten. Die Anordnung von Schutzmaßnahmen in sich überschneidenden Ebenen bietet zwei wesentliche Vorteile:

Angriffe sind weniger Erfolg versprechend. Je mehr Ebenen vorhanden sind, desto schwieriger ist es für einen Angreifer, tatsächlich einen Durchbruch zu erzielen, und desto größer ist die Wahrscheinlichkeit, dass Sie den Angriff währenddessen bemerken.

Außerdem wird dadurch das Risiko neuer Sicherheitslücken in Geräten gemindert. Jede Ebene schützt vor einer anderen Angriffsart oder bietet einen doppelten Schutz, der nicht der Schwäche einer anderen Ebene unterliegt. Somit können viele neue Angriffe verhindert werden, indem eine abhängige Transaktion durch eine weiterhin intakte Abwehrmaßnahme blockiert wird. Dadurch bleibt Ihnen Zeit, um die eigentliche Schwäche zu beheben.

Ihre Geschäftsabläufe müssen angepasst werden, um Änderungen an mehreren Ebenen zu koordinieren, sofern dies bisher noch nicht möglich ist.

Netzwerksegmentierung

Perimeternetzwerke sollen eine Grenze schaffen, die den Datenverkehr zwischen internen und externen Netzwerken trennt. Wenn eine solche Grenze besteht, können Sie Ihren Netzwerkdatenverkehr kategorisieren, in Quarantäne stellen und kontrollieren. In einem idealen Perimeternetzwerk wird theoretisch, mit Ausnahme des für gewünschte Interaktionen absolut notwendigen Datenverkehrs, überhaupt kein Datenverkehr an das zentrale System zugelassen. Jede zusätzliche Transaktion, die den Perimeter überschreitet, stellt eine weitere potenzielle Lücke in der Abwehr und damit einen weiteren möglichen Weg dar, über den ein Angreifer die Kontrolle erlangen könnte. Jeder neu aktivierte Dienst erhöht das Bedrohungsrisiko und beinhaltet weiteren Programmcode, der Sicherheitslücken aufweisen kann.

Bei gängigen Sicherheitsrichtlinien wird zwischen den Hosts in Ihrem Netzwerk, die direkt mit dem Internet in Verbindung stehen, und verbindungslosen Hosts ein Perimeter definiert. Sie können jedoch zusätzliche Sicherheit gewinnen, indem Sie ältere Systeme als Teil des Perimeters behandeln und die Kommunikation zwischen Ihrem "normalen" Netzwerk und solchen Segmenten, in denen sich ältere Systeme befinden, streng kontrollieren. Die Verbannung älterer Systeme in eigene Netzwerksegmente bietet zwei wichtige Vorteile:

Sie können die älteren Systeme auf die gleiche Weise wie Computer im Perimeternetzwerk behandeln. Da ältere Versionen von Windows nicht alle Sicherheitsmerkmale und -funktionen neuerer Versionen enthalten, sind sie ein größeres Risiko und müssen entsprechend geschützt werden.

Ihre älteren Systeme lassen sich besser kontrollieren. Indem Sie diese Systeme in einen eigenen Perimeter stellen, trennen Sie sie von den Kontrolleinrichtungen des Netzwerkperimeters (etwa Firewalls), die den Datenverkehr zwischen verschiedenen Netzwerken überwachen und steuern.

Bidirektionale Bedrohungen

Viele Angriffe sind erfolgreich, da sie bewirken, dass das Zielsystem Kontakt mit einem System außerhalb des Perimeters aufnimmt. Dieser Kontakt wendet sich an ein feindliches System, das dadurch schließlich Zugriff auf das Zielsystem erhält. Ein weiteres gängiges Szenario beinhaltet Würmer und Viren. Sobald das System erfolgreich kompromittiert ist, verteilt sich die Malware (bösartige Software) von einem System auf das nächste. Bei ihrer Verbreitung nutzt sie Vertrauensverhältnisse aus und stört externe Systeme. Auch solche Systeme können mit feindlichen Systemen in Verbindung treten, um eine Hintertür für weitere Aktivitäten zu öffnen. Der Perimeter muss so konzipiert sein, dass nicht nur der eingehende, sondern auch der ausgehende Datenverkehr begrenzt ist. Dadurch ist es unwahrscheinlicher, dass Ihre Systeme im Falle einer Gefährdung gegen Ihre eigene Umgebung eingesetzt werden. Auch der Aufwand des Angreifers wird erhöht, da Ihre eigenen Systeme nicht dazu verwendet werden können, eigene Abwehrebenen zu zerstören.

Trennung verschiedenartiger Dienste

Häufig werden auf einem Computer mehrere Dienste installiert, um sicherzustellen, dass die teure Hardware optimal genutzt wird. Wenn dies jedoch wahllos erfolgt, wird oftmals der Schutz des Systems erschwert. Analysieren Sie sorgfältig die Dienste und den Datenverkehr Ihrer Dienste, und stellen Sie sicher, dass Ihre Perimetereinrichtungen ausreichend sind, um den Datenverkehr auf die erforderlichen Kombinationen aus Diensten und Remotesystemen zu beschränken. Umgekehrt gilt: Indem Sie ähnliche Systeme und Dienste gruppieren und das Netzwerk sorgfältig partitionieren, lässt sich der nötige Schutz wesentlich einfacher gewährleisten.

Ausfallplanung und Reaktion auf Zwischenfälle

Eine gute Sicherheitsplanung und -implementierung beinhaltet auch die Frage: "Was passiert, wenn diese Maßnahme fehlschlägt?" Es ist wichtig, die möglichen Folgen von Fehlern, Unfällen und anderen unvorhergesehenen Ereignissen zu kennen. Dadurch können Sie Ihre Abwehrmaßnahmen so konzipieren, dass diese Folgen gemindert werden und ein einzelner Ausfall nicht sofort eine Kette von Ereignissen zur Folge hat, durch die Ihre älteren Systeme komplett verwundbar werden. In jedem Unternehmen sollte zum Beispiel ein im Voraus definierter Plan vorliegen, der beschreibt, was während eines Viren- oder Wurmangriffs bzw. bei einer mutmaßlichen Gefährdung zu tun ist. In den meisten Unternehmen sollte ein solches Reaktionsteam Mitarbeiter aus der IT-Abteilung, der Rechtsabteilung sowie der Geschäftsführung umfassen. Diese Personen müssen zusammen eine einheitliche Antwort auf einen möglichen Angriff geben. Das unter http://www.microsoft.com/germany/technet/sicherheit/guidance/default.mspx verfügbare Microsoft Security Guidance Kit (in englischer Sprache) bietet Informationen darüber, wie solche Reaktionspläne erstellt und umgesetzt werden können.

Hinweise: Microsoft erläutert seinen internen Reaktionsansatz und -plan in dem englischsprachigen Whitepaper "Incident Response: Managing Security at Microsoft", das unter http://www.microsoft.com/technet/itsolutions/msit/security/msirsec.mspx verfügbar ist.

Sicherungskopien

Wenn es ein Angreifer geschafft hat, in Ihr System einzudringen, ist dieser Erfolg unter Umständen nur vorübergehend, sofern Sie eine Gefährdung Ihrer zentralen Ressourcen und Daten verhindern können. Mit erfolgreichen Sicherungs- und Wiederherstellungsverfahren sorgen Sie dafür, dass auch im Falle eines Falles die Daten zur Aufrechterhaltung des Geschäftsbetriebs vorhanden sind. Das Erstellen von Sicherungskopien Ihrer Daten ist jedoch nur der erste Schritt. Sie müssen in der Lage sein, jedes kompromittierte oder betroffene System rasch wiederherzustellen. Damit Sie die Originalhardware forensisch analysieren können (um zum Beispiel Versicherungsansprüche geltend zu machen oder den Angriffsweg zu ermitteln), müssen Ersatzhardware und -software sowie geprüfte Einrichtungsverfahren vorliegen.

Zeitsynchronisierung

Die verschiedenen Anhaltspunkte, an denen Sie einen Angriff erkennen, verteilen sich unter Umständen auf mehrere Systeme. Dies gilt insbesondere in einem Perimeternetzwerk. Wenn Sie diese Daten nicht miteinander in Beziehung bringen, können Sie einen Angriff unter Umständen überhaupt nicht entdecken. Von besonderer Bedeutung ist es, dass alle Systeme dieselbe Uhrzeit aufweisen. Mit dem Befehl net time können Sie die Uhrzeit von Arbeitsstationen und Servern mit ihren Domänencontrollern abstimmen. NTP-Implementierungen (Network Time Protocol) von Drittanbietern sorgen dafür, dass Ihre Server eine Zeitsynchronisierung mit anderen Betriebssystemen und Hardwareelementen von Netzwerken durchführen, wodurch eine einheitliche Zeitbasis in Ihrem Netzwerk entsteht.

Überprüfung und Überwachung

Ihr Systemschutz mag noch so gut sein, Sie müssen ihn dennoch regelmäßig überprüfen und überwachen. Dabei ist es wichtig, dass Sie das Muster Ihres normalen Datenverkehrs sowie Muster von Angriffen und Reaktionen darauf kennen. Dann erkennen Sie negative Ereignisse schon daran, dass sich der Rhythmus Ihres Netzwerkdatenverkehrs ändert. Ein zentraler Bereich bei der Überprüfung und Überwachung ist die Authentifizierung. Eine plötzlich auftretende Folge fehlgeschlagener Authentifizierungsversuche ist oft der einzige Hinweis darauf, dass ein Brute-Force-Angriff auf Wörterbuchbasis erfolgt. Bei einem solchen Angriff werden einfach aufgebaute Kennwörter mithilfe gängiger Wörter oder alphanumerischer Zeichenfolgen ermittelt. Somit sind erfolgreiche, ungewöhnlich verlaufende Authentifizierungen ein möglicher Hinweis darauf, dass zumindest auf einer Ebene in Ihr System eingedrungen wurde und dass ein Angreifer versucht, die anfängliche Sicherheitslücke auf einen vollständigen Systemzugang auszudehnen. Eine regelmäßige Zusammenstellung und Archivierung von Ereignisprotokollen, zusammen mit automatisierter und manueller Analyse, machen oft den Unterschied zwischen fehlgeschlagenen und erfolgreichen Eindringungsversuchen. Mit automatisierten Tools wie Microsoft Operations Manager (MOM) lassen sich die protokollierten Informationen einfacher protokollieren und analysieren.

Wachsamkeit durch Information

Sie können nicht alles wissen, aber Sie sollten auf Bedrohungsarten achten, die andere Administratoren entdecken. Es gibt mehrere hervorragende Quellen, die aktuelle Informationen zu solchen Sicherheitsbedrohungen und -fragen bieten. Diese finden Sie im Abschnitt "Weitere Informationen" am Ende dieses Kapitels.

Konzeption der Netzwerksicherheit

Es gibt verschiedene spezifische Maßnahmen, mit denen Sie Ihr Netzwerk gegen interne und externe Angriffe absichern. Diese Maßnahmen umfassen:

Aufteilung Ihrer älteren Systeme in eigene, perimeterähnliche Netzwerksegmente und Schutz mittels Zugriffskontrollregeln, Firewalls und anderer Techniken.

Einsatz von Firewalls, sei es auf Netzwerkebene durch Hardwaregeräte für Netzwerke, Microsoft Internet Security and Acceleration Server (ISA-Server) oder andere Produkte oder auf den einzelnen Arbeitsstationen.

Absichern des TCP/IP-Stacks durch strengere Festlegungen hinsichtlich der Verarbeitung abweichender Pakete durch den Stack.

Zusätzlicher Schutz durch Port- und Paketfilterfunktionen in Windows NT 4.0.

Voraussetzungen

Diese Lösung erfordert die folgenden Voraussetzungen:

Zur Netzwerksegmentierung müssen ungenutzte, ausreichend große Netzwerksubnetze vorhanden sein, um die entsprechenden Hosts und die Netzwerkauslastung aufzunehmen.

Verständnis von TCP/IP, der in Ihrem Netzwerk verwendeten Ports, Paketfilterung und Routing.

Profunde Kenntnis der verschiedenen TCP/IP-Optionen und -Eigenschaften der weiteren Geräte, mit denen Ihre älteren Systeme interagieren.

Architektur

Bei der Konzeption der Netzwerkarchitektur sind verschiedene Sicherheitsüberlegungen anzustellen.

Netzwerksegmentierung

Eine Netzwerksegmentierung kontrolliert den Datenfluss zwischen Hosts in verschiedenen Segmenten eines Netzwerks. Ein segmentiertes und richtig konzipiertes Netzwerk verbessert die Leistung und Sicherheit, indem es sicherstellt, dass zwischen den Segmenten eines Netzwerks nur der zulässige Datenverkehr weitergeleitet wird. Der Umstieg von Hubs auf Switches kann die Möglichkeit, dass ein Angreifer Kennwörter und sonstigen vertraulichen Datenverkehr ausschnüffelt, zwar einschränken, jedoch nicht gänzlich ausschließen. Ein kompromittiertes System, das an einen Switch angeschlossen ist, kann immer noch dazu verwendet werden, Informationen von anderen Systemen zu erlangen. Aus diesem Grund sind Switches eher eine Antwort auf Probleme in Verbindung mit Netzwerkkollisionen und -leistungen, nicht jedoch auf Fragen zur Netzwerksicherheit.

Auch Port- und Paketfilterung kann, zusammen mit persönlichen Firewalls, bei älteren Systemen Eindringung und Gefährdung verhindern. Aufgrund des administrativen Aufwands ist es in bestimmten Situationen jedoch nicht sinnvoll, auf den einzelnen Computern der Benutzer eine Firewallsoftware zu installieren und zu verwalten. Sofern Sie keine Firewallsoftware verwenden, die Sie von einem zentralen Server und einer zentralen Datenbank aus verwalten können, muss der Administrator nach der Installation mehrmals direkt an jedem Computer die Konfiguration ändern und an die einzelnen Benutzerwünsche anpassen. Außerdem sind bei jeder neuen Anwendung häufig weitere administrative Schritte erforderlich, um potenziellen Sicherheitslücken und möglichem Einzelpunktversagen der Anwendung zu begegnen.

Viele Unternehmen haben einfach nicht genügend Mitarbeiter, um hunderte persönlicher Firewalls zu verwalten. In solchen Situationen können diese Unternehmen Netzwerksegmentierung als einen alternativen oder zusätzlichen Schutzmechanismus für das Netzwerk einsetzen. Wie bereits zuvor erläutert, bedeutet Netzwerksegmentierung, bestimmte Server in einem Perimeternetzwerk in Quarantäne zu stellen. Dies kann auch bedeuten, ein Netzwerk in einzelne Segmente aufzuspalten, um für die Systeme in den jeweiligen Segmenten zusätzliche Sicherheit zu bieten. Eine Segmentierung kann auch eine beträchtliche Flexibilität beim Gestalten des Datenverkehrs, beim Überwachen und Filtern der Ports und bei anderen Aufgaben der Netzwerkverwaltung bieten, da jedes Segment eine eigene Konfiguration besitzen kann, die sowohl den Bedürfnissen der Benutzer in der Gruppe als auch den Sicherheitsanforderungen des Netzwerks entspricht. Durch die Netzwerksegmentierung kommen Firewalls auf der Ebene der Arbeitsgruppen zum Einsatz, wo sie zusammen mit den Perimeterfirewalls das gesamte Netzwerk weiter sichern können.

Mit einer Netzwerksegmentierung beugen Sie zwei potenziellen Bedrohungen vor: solchen von außerhalb des Netzwerks und solchen aus dem Netzwerk selbst. Der klassische Fall eines cleveren Mitarbeiters in der Konstruktionsabteilung, der Zugang auf den Dateiserver der Personalabteilung erlangt, ist ein gutes Beispiel für eine Situation, in der ein lokales Netzwerk (LAN) von einer Netzwerksegmentierung profitieren würde. Die Firewall an der Spitze des Segments der Personalabteilung überwacht den Datenverkehr, um Computern aus unbefugten Abteilungen den Zugriff zu verweigern. Umgekehrt sollte aber auch das Segment der Konstruktionsabteilung vor den anderen Segmenten geschützt sein.

Durch Netzwerksegmentierung können Sie das Netzwerk in eigene Sicherheitszonen aufteilen und für die einzelnen Segmente eine eigene, regelbasierte Datenverkehrsverwaltung einrichten. Es gibt mehrere Möglichkeiten, ein Netzwerk zu segmentieren. Sie können zum Beispiel jedem Segment eine hardwarebasierte Firewall zuweisen und das Netzwerk so physisch segmentieren. Sie können aber auch eine einzige, zentralisierte Firewall mit virtueller LAN-/Segmentierungsfunktion einsetzen, die einzelne Gruppen schützt. Für welche Lösung Sie sich letztlich entscheiden, hängt von der Netzwerktopologie und den Sicherheitsanforderungen der einzelnen Gruppen ab. Sie sollten zumindest diejenigen Segmente, die das größte Risiko darstellen, etwa drahtlose Netzwerke, vom restlichen Netzwerk isolieren und strenge Regeln festlegen, die einen unbefugten Datenverkehr von und zu diesen Segmenten unterbinden.

Um die beste Lösung zur Segmentierung ihres Netzwerks zu ermitteln, sollten Sie zunächst die Netzwerkstruktur überprüfen. Anschließend können Sie diejenigen Segmente identifizieren, die das größte Risiko darstellen, und eine Lösung aufbauen. Unter Umständen verfügt der Hersteller Ihrer Firewall über entsprechende technische Informationen und Produkte, mit denen Sie eine Lösung umsetzen können.

Die Firma Trey Research segmentierte die älteren Systeme in ihrer Zentrale, indem sie die Windows NT 4.0-Server und Windows 98-Clients in einem eigenständigen Netzwerksegment platzierte und dann eine Firewall zwischen diesem Segment und dem übrigen Firmennetzwerk installierte. Durch die Aktivierung der Netzwerkadressübersetzung (NAT) bei dieser Firewall können die Techniker von Trey den eingehenden und ausgehenden Datenverkehr für dieses Segment blockieren und somit die Abwehr weiter erhöhen.

Persönliche Firewalls

Auch wenn die in den TCP/IP-Stack von Windows NT integrierten Schutzvorrichtungen ein erster Schritt sind, so sind sie doch aufgrund wesentlicher Einschränkungen für viele Umgebungen ungeeignet. Außerdem tragen sie nichts zum Schutz von Windows 98-Clients bei. Softwarefirewalls, so genannte persönliche Firewalls, bieten oft zusätzlichen Schutz. Diese spezialisierten Anwendungen befinden sich an der Spitze des Netzwerkstacks, um Netzwerkaktivitäten abzufangen, anhand der mit zulässigem Datenverkehr konfigurierten Datenbank zu kategorisieren und so den Datenverkehr zuzulassen oder zu blockieren.

Der große Vorteil persönlicher Firewalls ist, dass sie an die Muster des Datenverkehrs der einzelnen Computer genau angepasst werden können. Da es sich dabei jedoch letztlich um eine Anwendung handelt, ist es durchaus möglich, darauf zuzugreifen und sie zu beeinträchtigen, ob zufällig oder in böser Absicht.

Dennoch bieten persönliche Firewalls bei älteren Servern und Clients zusätzliche Sicherheit und wichtige Funktionen, über die ältere Systeme nicht verfügen – etwa die Fähigkeit, den Datenverkehr bestimmter Ports auf bestimmte Hosts zu beschränken und das Risiko durch die erforderlichen Dienste zu verringern. Je nachdem, wo sich die Firewall im Netzwerkstack befindet, kann sie feindlichen Datenverkehr blockieren, bevor er Sicherheitslücken im Betriebssystem oder in empfangsbereiten Anwendungen erreicht.

Persönliche Firewalls tragen auch dazu bei, einen möglichen Schaden durch Trojaner, Viren und Würmer zu begrenzen. Solche Malware leitet häufig ausgehenden Datenverkehr oder das Abhören von Ports zur unberechtigten Nutzung von Verbindungen ein. Dieser Datenverkehr verfolgt mehrere Zwecke, vom Verteilen von Spam (an interne und externe Nachrichtendienste) bis hin zum Scannen anderer Hosts und Netzwerke nach Sicherheitslücken. Außerdem werden dadurch Festplattenspeicherplatz, Prozessorleistung, Speicherkapazität und Netzwerkbandbreite vergeudet. Solche Anwendungen und ihre Verbindungsversuche führen, neben den Infektions- und Bereinigungsproblemen, oft zu so genannten DoS-Perioden (Denial-of-Service).

Neben erweiterten Funktionen zur Eingangs- und Ausgangsfilterung können viele persönliche Firewalls auch den Netzwerkzugang anhand des anfordernden Programms zulassen oder verweigern. Mit dieser Funktionalität kann bestimmten Anwendungen der Zugriff auf das Netzwerk permanent verweigert werden, unabhängig von den verwendeten Ports und Protokollen. Umgekehrt kann auch einer vorab definierten Liste von Anwendungen der Zugriff gestattet werden. Dadurch kann verhindert werden, dass die Benutzer Sicherheitskonfigurationen mithilfe protokollübergreifender Anwendungen wie Peer-To-Peer-Dateiaustausch, Instant Messaging oder anderer Anwendungen, die ihre Verbindungen mit dem Hypertext Transfer Protocol (HTTP) tunneln, überlisten.

Das Einrichten und Konfigurieren persönlicher Firewalls ist recht zeitaufwendig, da die Programme jede Transaktion überprüfen, bis sie richtig kategorisiert und als zulässig oder verweigert klassifiziert ist. Dazu ist eine detaillierte Kenntnis sämtlicher Bestandteile des von befugten Anwendungen und Diensten generierten Netzwerkdatenverkehrs erforderlich, da eine einzige blockierte Interaktion die Ausführung notwendiger Programme lahm legen könnte. Außerdem ist regelmäßiges Warten, Patchen und Aktualisieren notwendig. Entscheiden Sie sich für eine persönliche Firewall, die Funktionen für den Einsatz in Unternehmen bietet, etwa das zentrale Verwalten und Warten von Konfigurationsdatenbanken.

Der zusammen mit ISA Server verwendete ISA Firewall Client bietet ausgeklügelte Funktionen zum Filtern und zum Durchsetzen von Richtlinien. Er ermöglicht die Kontrolle des Datenverkehrs auf der Grundlage der Benutzeridentität bzw. auf der Grundlage von Ursprung oder Ziel des Datenverkehrs. Mithilfe strategisch angeordneter Server kann der gesamte Datenverkehr überwacht und gesteuert werden. Die unternehmensweiten Richtlinien lassen sich einfach und rasch aktualisieren.

Eine weitere Option ist der Download des Routing- und RAS-Dienstes für Windows NT. Obwohl RRAS in erster Linie Unterstützung für dynamische Routingprotokolle wie Routing Information Protocol (RIP) sowie Funktionen für DFÜ- und virtuelle private Netzwerke (VPN) bietet, lässt sich damit auch für den eingehenden Netzwerkdatenverkehr eine Zugriffssteuerung definieren, die über die einfache Portfilterung in Windows NT hinausgeht. RRAS kann auf der folgenden Seite kostenlos heruntergeladen werden: http://www.microsoft.com/ntserver/nts/downloads/winfeatures/rras/rrasdown.asp.

Allerdings hat der Einsatz von RRAS oder anderen Add-On-Lösungen einen entscheidenden Nachteil: Add-Ons sind Subsysteme der Software, die als Windows-Dienste ausgeführt und deshalb erst nach der Initialisierung der Netzwerkschnittstellen und -protokolle ausgeführt werden. Aus diesem Grund besteht während eines kurzen Zeitraums, etwa während eines Neustarts oder Dienstausfalls, die Möglichkeit, dass feindlicher Datenverkehr ungehindert passieren kann. Die Verwendung persönlicher Firewalls, des ISA Server Firewall Clients oder von RRAS ohne sonstige Schutzmaßnahmen und -ebenen bietet keine absolute Sicherheit. Optimaler Schutz wird nur durch mehrere Abwehrmaßnahmen, die Schwächen in den einzelnen Ebenen ausgleichen, gewährleistet.

Trey Research verwendet auf manchen Systemen bereits die Internetverbindungsfirewall (ICF), die Teil von Windows XP ist. Trey erwarb für seine unter Windows 98 und Windows NT Workstation 4.0 laufenden Computer die Lizenz für die persönliche Firewall eines Drittanbieters. Diese Firewall bietet die Eingangs- und Ausgangsfilterung des internen Datenverkehrs im abgetrennten Netzwerk des Unternehmens und zudem eine zentralisierte Datenerfassung, mit deren Hilfe Trey Einblick in die Art und das Volumen des Netzwerkdatenverkehrs erhält.

Port- und Paketfilter für Windows NT

Eine der besten Methoden, vernetzte Computer zu schützen, ist es, die Arten von Netzwerkdatenverkehr zu beschränken, die sie erhalten und verarbeiten können. Dies erfordert in der Regel einen Paketfilter. Administratoren denken bei der Konzeption von Strategien zur Paketfilterung meist an Router und Netzwerkdrosselpunkte. Windows NT verfügt jedoch bereits über eine einfache Paketfilterung, nämlich TCP/IP-Sicherheit. Diese Funktion bietet zwar allein keinen ausreichenden Schutz, zusammen mit statusbehafteten Paketfiltereinrichtungen sorgt sie aber für eine hervorragende nachgeordnete Schutzebene.

Der große Vorteil der in Windows NT integrierten TCP/IP-Sicherheitsfunktionen ist, dass sie im TCP/IP-Netzwerkstack als integraler Teil der Protokolltreiber implementiert sind. Der Nutzen dieser tief gehenden Integration ist, dass sämtliche Einstellungen stets aktiv sind, solange die geschützten Schnittstellen aktiv sind; zu keinem Zeitpunkt – selbst während des Systemstarts nicht – bleibt der Netzwerkdatenverkehr ungefiltert. TCP/IP-Sicherheit ist für Anwendungen transparent; bei der Verwendung mit bestimmten persönlichen Firewalls können jedoch Probleme auftreten.

TCP/IP lässt das portweise Filtern von TCP und UDP (User Datagram Protocol) sowie anderer IP-Protokolle zu. Aktive Filter blockieren den eingehenden Datenverkehr, lassen jedoch ausgehenden Datenverkehr und Antworten auf vom lokalen Host initiierte TCP-Verbindungen zu. Es gibt jedoch gewisse Einschränkungen:

Wenn Portfilter Datenverkehr blockieren oder zulassen, betrifft dies alle Hosts. Sie können keine feinere Einstellung festlegen, wie es zum Beispiel bei der Erweiterungsfunktion von IP Security (IPsec) in Windows 2000, Windows XP und Microsoft Windows Server™ 2003 der Fall ist.

Die Filter sind nicht wirklich statusbehaftet und können nicht dynamisch verknüpft werden, um Datenverkehr bei sekundären Verbindungen zuzulassen. Die IPsec-Implementierung in späteren Windows-Versionen ermöglicht das Zulassen sekundärer Verbindungen, wie dies auch bei den meisten Hardwarefirewalls der Fall ist.

Neben der einfachen, weiter oben beschriebenen Funktion zur Portfilterung bietet der TCP/IP-Stack von Windows NT zahlreiche konfigurierbare Parameter, die besonders interessant sind, um bedrohlichen Netzwerkdatenverkehr auszuschließen oder zu begrenzen. Im Laufe der Zeit wurden zahlreiche Angriffsarten entwickelt, die Lücken im TCP/IP-Netzwerkcode von Windows NT 4.0 ausnutzen. Auch wenn all diese Lücken im Rahmen von Service Packs und Sicherheitsupdates geschlossen wurden, kann es sinnvoll sein, die Änderungen vorzunehmen, um Ihr Netzwerk zusätzlich zu schützen. Für diese Änderungen muss in der Regel die Registrierung direkt mit den Tools regedit32 oder regedit bearbeitet werden. In Artikel 120642 der Microsoft Knowledge Base (KB), "TCP/IP- und NBT-Konfigurationsparameter für Windows 2000 und Windows NT" (http://support.microsoft.com/?kbid=120642), finden Sie eine ausführliche Liste der konfigurierbaren Parameter. Die für die Netzwerk- und Systemsicherheit wichtigsten Parameter werden in den folgenden Abschnitten erläutert.

Trey Research hat auf seinen älteren Hosts Port- und Paketfilterung definiert, um zu verhindern, dass Datenverkehr von allen Ports, die nicht im Knowledge Base-Artikel 150543 ("Windows NT-, Terminal Server- und Microsoft Exchange-Dienste verwenden TCP/IP-Ports", http://support.microsoft.com/?kbid=150543) aufgeführt sind oder von anderen Anwendungen im Netzwerk verwendet werden, das interne Netzwerk verlässt und ins Internet gelangt. Dadurch wird gewährleistet, dass kein vertraulicher Netzwerkdatenverkehr in einem unkontrollierten Netzwerk verbreitet wird.

Schutz vor SYN-Flooding

SYN-Flooding (SYN = Synchronisierung) ist eine gängige Angriffsmethode gegen TCP-Dienste. Wenn ein TCP-Client eine neue Verbindung initiiert, sendet er an den empfangsbereiten Server ein leeres TCP-Paket, in dem das SYN-Flag gesetzt ist. Dadurch wird angegeben, dass der Client eine neue Verbindung anfordert. Der Server sendet ein Antwortpaket zurück, in dem die Flags SYN und ACK (Acknowledgment = Bestätigung) gesetzt sind. Der Client antwortet dann mit einem ACK-Paket. Dadurch wird der Dreiwege-Handshake abgeschlossen, und die Verbindung ist geöffnet.

Solange die abschließende Bestätigung noch nicht eingegangen ist, weist der TCP/IP-Treiber dieser Verbindung den Status SYN_RCVD (SYN empfangen) zu. Wenn Windows aus irgendeinem Grund keine Antwort auf das SYN+ACK-Paket erhält, wartet es standardmäßig eine Sekunde lang und überträgt dann das SYN+ACK-Paket erneut. Nach einer weiteren Wartezeit von drei Sekunden erfolgt eine zweite Neuübertragung, nach weiteren sechs Sekunden eine letzte Neuübertragung. Für jede Verbindungsanfrage muss der Server eine bestimmte Speichermenge und andere Kernelstrukturen zuweisen; eine Flut eingehender Anfragen kann die Ressourcen rasch überlasten und einen Dienstausfall (DoS) bewirken. Die entsprechenden Registrierungsschlüssel lauten wie folgt:

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\SynAttackProtect (REG_DWORD):

0 = Deaktiviert (Standard)

1 = Erstellung des Route-Cache-Eintrags verzögern, bis Verbindung hergestellt

2 = Benachrichtigung des Winsock-Treibers verzögern, bis Dreiwege-Handshake abgeschlossen ist (empfohlen)

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\TcpMaxHalfOpen (REG_DWORD):

Dieser Schlüssel definiert die Höchstzahl an Verbindungen, die sich nach Vorgabe des IP-Stacks im Status SYN_RCVD befinden dürfen, bevor der Status SynAttack ausgelöst wird. Die Standardeinstellung ist 100.

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\
Parameters\TCPMaxHalfOpenRetried (REG_DWORD):

Dieser Schlüssel definiert die Höchstzahl an Verbindungen, die sich im Status SYN_RCVD befinden und mehr als einmal neu übertragen wurden, bevor SynAttack ausgelöst wird. Die Standardeinstellung ist 80.

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\
Parameters\TCPMaxPortsExhausted (REG_DWORD):

Dieser Schlüssel definiert, wie viele Verbindungsanfragen aufgrund eines fehlenden Backlogs verweigert werden, bevor SynAttack ausgelöst wird. Die Standardeinstellung ist 5.

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
TCPMaxConnectResponseRetransmissions (REG_DWORD):

Dieser Schlüssel definiert die Anzahl an Versuchen zur Neuübertragung während des Status SYN_RCDV. Der Standardwert lautet 3, wodurch drei Neuübertragungen erfolgen. Wenn Sie diesen Wert auf 1 setzen, erfolgt nur ein Versuch zur Neuübertragung.

Im englischsprachigen Knowledge Base-Artikel 142641 ("Internet Server Unavailable Because of Malicious SYN Attacks") unter http://support.microsoft.com/?kbid=142641 werden diese Einstellung ausführlich beschrieben.

Auf älteren Hosts hat Trey Research die Konfiguration aller zuvor aufgeführten Registrierungsschlüssel strenger gestaltet und dadurch die Gefahr, dass diese Systeme durch einen SYN-Angriff beeinträchtigt werden, verringert. Trey Research verwendet nicht die strengsten Einstellungen, da im Netzwerk regulärer SYN-Datenverkehr auftritt, der weiterhin normal verlaufen soll. Die Systemadministratoren von Trey sind sich der Tatsache bewusst, dass die von ihnen vorgenommenen Änderungen an den Standardkonfigurationen überprüft werden müssen. Aus diesem Grund überwachen sie regelmäßig die Menge an SYN-Datenverkehr in ihrem Netzwerk.

Steuerung der Backloggröße

Anwendungen, die TCP/IP verwenden, greifen auf die Winsock-API zurück, die von afd.sys, dem Winsock-Kernelmodustreiber, bereitgestellt wird. Die Winsock API bietet die Mechanismen, mit denen Anwendungen Clientverbindungen öffnen und an den Ports Listener für Serververbindungen einrichten können. Die Funktion listen() weist Winsock an, auf Verbindungsversuche an einem bestimmten Port zu achten und diese an die Anwendung weiterzuleiten.

Ein Parameter, den diese Funktion angeben muss, ist die Backloggröße. Das Backlog ist eine Warteschlange, in der anstehende eingehende Verbindungen auf die Verarbeitung durch den Stack warten. Die Backloggröße gibt die Maximallänge der Warteschlange an. Die Standardeinstellung unter Windows NT Server lautet 200, unter Windows NT Workstation 5. Windows NT 4.0 Service Pack 2 (SP2) bietet eine dynamische Backlogfunktion. Dadurch kann der TCP/IP-Stack die Größe der Backlogwarteschlange anpassen, um den aktuellen Netzwerkbedingungen gerecht zu werden.

Diese Funktion zur Anpassung der Backlogwarteschlange ist standardmäßig deaktiviert und muss mithilfe der folgenden Registrierungseinträge aktiviert werden. Um von dieser Funktion zu profitieren, muss die aufrufende Anwendung zudem eine Backlogwarteschlange anfordern, die größer als der Parameter MinimumDynamicBacklog ist. Die entsprechenden Registrierungsschlüssel lauten wie folgt:

HKLM\SYSTEM\CurrentControlSet\Services\AFD\
Parameters\EnableDynamicBacklog (REG_DWORD):

0 = Deaktiviert (Standard)

1 = Aktiviert (empfohlen)

HKLM\SYSTEM\CurrentControlSet\Services\
AFD\Parameters\MinimumDynamicBacklog (REG_DWORD):

Dieser Schlüssel definiert die Mindestzahl an Einträgen in der Backlogwarteschlange. Wenn die Anzahl der verfügbaren Einträge dieses Minimum unterschreitet, müssen Sie mehr Einträge erstellen. Der empfohlene Wert lautet 20.

HKLM\SYSTEM\CurrentControlSet\Services\
AFD\Parameters\MaximumDynamicBacklog (REG_DWORD):

Dieser Schlüssel definiert die Höchstzahl an Einträgen, die in der Backlogwarteschlange erstellt werden können. Wenn dieser Wert auf mehr als 5000 pro 32 MB RAM-Speicher gesetzt wird, kann es im Falle eines Angriffs zu einer Speicherüberlastung kommen. Bedenken Sie, dass für jeden Netzwerkdienst eine eigene Backlogwarteschlange erstellt wird. Die Zielserver von Trey Research verfügen über 512 MB System-RAM; die Formel zur Berechnung der Obergrenze dieses Registrierungswerts lautet entsprechend:

(512/32) * 5000 = 144000.

Für die Arbeitsstationen (die jeweils 256 MB RAM aufweisen), lautet der Wert (256/32) * 5000 = 72000.

HKLM\SYSTEM\CurrentControlSet\Services\AFD\
Parameters\DynamicBacklogGrowth-Delta (REG_DWORD):

Dieser Schlüssel definiert, wie viele neue Verbindungen dem Backlog auf einmal hinzugefügt werden können, wenn weitere Verbindungen erforderlich sind. Der empfohlene Wert lautet 10.

Im englischsprachigen Knowledge Base-Artikel 142641 ("Internet Server Unavailable Because of Malicious SYN Attacks") unter http://support.microsoft.com/?kbid=142641 werden diese Einstellung ausführlich beschrieben.

Trey Research legte die empfohlenen Werte für alle zuvor aufgeführten Registrierungsschlüssel fest, um die Anzahl eingehender Verbindungen kontrollieren zu können und um somit zu verhindern, dass die Systeme des Unternehmens durch eingehende Anfragen überlastet werden.

TCP Keep-Alive-Zeitgeber

Bei TCP Keep-Alive-Zeitgebern handelt es sich um eine erweiterte TCP-Funktion, die Leerlaufverbindungen betriebsbereit hält. Diese Funktion ist insbesondere dann wichtig, wenn solche Verbindungen Firewalls und NAT-Geräte zur Netzwerkadressübersetzung durchlaufen, die aus ihren Verbindungs- und Tarnungstabellen regelmäßig veraltete Einträge löschen.

Windows NT bietet die Möglichkeit, TCP Keep-Alive-Zeitüberschreitungen zu aktivieren und zu definieren. Indem Sie diesen Wert herabsetzen, können Sie verhindern, dass inaktive Verbindungen Ressourcen zu lange belegen. Um diesen Wert anzugeben, verwenden Sie den folgenden Registrierungsschlüssel:

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\KeepAliveTime (REG_DWORD):

Dieser Schlüssel definiert die Anzahl der Millisekunden zwischen zwei Keep-Alive-Tests. Der Standardwert lautet 7.200.000 (zwei Stunden).

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\KeepAliveInterval (REG_DWORD):

Dieser Schlüssel definiert die Anzahl der Millisekunden zwischen der Neuübertragung von Keep-Alive-Paketen, wenn keine Antwort eingeht. Der Standardwert lautet 1000 (eine Sekunde).

Trey Research veränderte die Einstellungen des TCP Keep-Alive-Zeitgebers nicht; da bislang noch keine Probleme mit der Zeitdauer, die Verbindungen in Verwendung bleiben, aufgetreten sind.

Path Maximum Transmission Unit Discovery

Path Maximum Transmission Unit (MTU) Discovery ist eine Funktion, mit der Windows automatisch die größte unterstützte Paketgröße in allen Netzwerksegmenten zwischen Hosts ermitteln kann. Diese Funktion sendet große Pakete aus, bei denen das Bit "do not fragment" gesetzt ist, die also nicht fragmentiert werden sollen. Wenn ein Router unterwegs das Paket nicht weiterleiten kann, weil es größer als der MTU-Wert für dieses Segment ist, gibt er eine ICMP-Meldung (Internet Control Message Protocol) zurück. Windows reduziert dann so lange die Paketgröße, bis das Paket erfolgreich an die Zieladresse gesendet ist.

Durch das Einstellen der richtigen MTU für Remotehosts vermeidet Windows die Generierung fragmentierter Pakete, die Leistungseinbußen und eine höhere Wahrscheinlichkeit, dass Daten verloren gehen und Neuübertragungen erforderlich sind, verursachen würden. Außerdem können fragmentierte Pakete ein Sicherheitsrisiko sein; fragmentierte Pakethandler sind eine häufige Quelle von Pufferüberläufen, und die Fähigkeit, Fragmente bereits an der Grenze auszufiltern, senkt die Wahrscheinlichkeit von Angriffen erheblich. Die Funktion "Path MTU Discovery" sollte aktiviert bleiben, allerdings müssen dann ICMP Typ 3, Code 4 durch die Firewalls geleitet werden. Diesen Wert können Sie mit dem folgenden Registrierungsschlüssel festlegen:

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\EnablePathMTUDiscovery (REG_DWORD):

1 = Aktiviert (Standard, empfohlen)

0 = Deaktiviert

Durch den Wert 0 wird die MTU-Größe für den gesamten Datenverkehr außerhalb konfigurierter lokaler Subnetze auf 576 Byte gesetzt. Außerdem akzeptiert Windows bei dieser Einstellung keine Anforderungen, den MTU-Wert zu ändern.

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\EnablePathMTUBHDetect (REG_DWORD):

0 = Deaktiviert (Standard)

1 = Aktiviert

Durch den Wert 1 kann Windows versuchen, während Path MTU Discovery so genannte Black-Hole-Router zu entdecken. Diese Router verwerfen zu lange Pakete, bei denen das Bit "do not fragment" gesetzt ist, stillschweigend, anstatt die richtige ICMP-Antwort zurück zu senden. Wenn Sie diesen Wert aktivierten, finden mehr Versuche zur Neuübertragung statt.

Trey Research veränderte die Standardwerte für Path MTU Discovery nicht, da eine Deaktivierung dieser Funktion dazu führen kann, dass bestimmte Remotesysteme nicht mehr erreichbar sind. Trey Research möchte nicht, dass Geschäftstransaktionen, bei denen Systeme innerhalb des Kommunikationspfads die MTU-Größe nicht unterstützen, unterbrochen werden.

Quellrouting

Durch Quellrouting können Anwendungen die Routingtabellen außer Kraft setzen und ein oder mehrere Zwischenziele für die ausgehenden Datagramme festlegen. Der Nutzen dieser Funktion zur Fehlerbehebung ist marginal; hingegen wäre es äußerst unklug, sie in modernen Produktionsnetzwerken zu verwenden. Ein erfolgreicher Angreifer kann mit dieser Funktion den gesamten Netzwerkdatenverkehr in transparenter Weise an einen zentralen Punkt zur Paketerfassung leiten. Deaktivieren Sie deshalb das Quellrouting mithilfe des folgenden Registrierungsschlüssels; stellen Sie außerdem sicher, dass Ihre Grenzrouter so konfiguriert sind, dass sie alle IP-Datagramme, bei denen die Quellroutingsoption eingestellt ist, verwerfen.

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\DisableIPSourceRouting (REG_DWORD):

0 = Aktiviert (Standard)

1 = Deaktiviert, wenn IP-Weiterleitung aktiviert ist

2 = Vollständig deaktiviert (empfohlen)

Trey Research deaktivierte das Quellrouting auf allen Hosts innerhalb seines Zugriffsbereichs, um das Abfangen von Netzwerkdaten durch Angreifer zu verhindern.

Dead Gateway Detection

Mit der Funktion "Dead Gateway Detection" kann Windows erkennen, dass ein Standardgateway nicht mehr reagiert, und auf zusätzlich konfigurierte Standardgateways umschalten. In der Praxis wird diese Funktion selten verwendet; sie bietet eine Gelegenheit für DoS-Angriffe. Diese Funktion können Sie mit dem folgenden Registrierungsschlüssel steuern:

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\EnableDeadGWDetect (REG_DWORD):

0 = Deaktiviert (empfohlen)

1 = Aktiviert (Standard)

Trey Research aktivierte die Funktion "Dead Gateway Detection" auf allen Hosts, um die Möglichkeit von DoS-Angriffen in seinem Netzwerk zu verringern.

Router Discovery

Die Funktion "Router Discovery" lokalisiert und konfiguriert mithilfe der ICMP Router Discovery-Meldungen Standardrouten und -gateways. Auch mit dieser Funktion können Angreifer den Netzwerkdatenverkehr zu verschiedenen Zwecken umleiten, etwa für Sniffing und MITM-Angriffe (Man-In-The-Middle). Router, die diese Funktion unterstützen, müssen die entsprechende Meldung des ICMP Internet Router Discovery Protocol (IRDP) senden. Diese sollte deaktiviert sein. Darüber hinaus muss in Dynamic Host Configuration Protocol (DHCP) die entsprechende Option konfiguriert sein, so dass die Schnittstelle die IRDP-Meldungen akzeptiert.

Sie sollten die folgenden Registrierungsschlüssel bearbeiten, um bösartige Konfigurationsänderungen zu verhindern; wenn die Funktion zur Verwendung mehrerer Routen erforderlich ist, sollten Sie eventuell das Add-On RRAS einsetzen und ein absicherbares Routingprotokoll verwenden.

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\PerformRouterDiscovery (REG_DWORD):

0 = Deaktiviert (empfohlen)

1 = Aktiviert

Trey Research deaktivierte die Funktion "Router Discovery" auf allen Hosts, um unbefugte Konfigurationsänderungen im Netzwerk zu verhindern.

ICMP-Umleitungen

ICMP-Umleitungen sind eine weitere potenzielle Sicherheitslücke, da dadurch ein böswilliger Absender Pakete zusammenstellen und die Routingtabelle des Opfers manipulieren kann. Diese Funktion ist standardmäßig aktiviert und sollte über den folgenden Schlüssel deaktiviert werden, um nachteilige Auswirkungen zu verhindern:

HKLM\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\EnableICMPRedirect (REG_DWORD):

0 = Deaktiviert (empfohlen)

1 = Aktiviert (Standard)

Trey Research deaktivierte ICMP-Umleitungen auf allen Hosts, um auf jedem Host die Routingtabelle zu schützen.

Portstilllegung per RPC

Zahlreiche Dienst hören standardmäßig Netzwerkschnittstellen ab, einschließlich der lokalen Loopbackschnittstelle. Die Portzuordnung des Microsoft-Remoteprozeduraufrufs RPC hört beispielsweise TCP/135, UDP/135, TCP/1027 und TCP/1028 ab. Drei dieser Dienste – RPC-Client, RPC-Server und RPC-Endpunktzuordnung – können so konfiguriert werden, dass alle offenen Ports stillgelegt werden. Diese Änderungen müssen jedoch sorgfältig geprüft werden, da sonst Funktionalitäten unterbrochen werden können – nicht nur bei Remotehosts, sondern auch zwischen lokalen Diensten.

Microsoft Exchange und Microsoft SQL Server™ sind die gängigsten Anwendungen, für die RPC erforderlich ist. Außerdem werden RPC-Aufrufe während der Remoteverwaltung von Servern verwendet. Gängige Dienstprogramme, die RPC-Dienste benötigen:

DHCP-Manager

DNS-Administrator

WINS-Manager

Systemmonitor

Event Viewer

Registrierungs-Editor

Server-Manager

Benutzer-Manager

Um zu ermitteln, ob RPC von einer Anwendung verwendet wird, installieren Sie Netzwerkmonitor-Tools/Agent von der Windows NT 4.0-CD. Damit können Sie ermitteln, ob die Anwendung auf den angegebenen Ports RPC verwendet.

Löschen Sie den folgenden Registrierungsschlüssel, um den RPC-Client zu deaktivieren:

HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_tcp

HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_udp

Löschen Sie den folgenden Registrierungsschlüssel, um den RPC-Server zu deaktivieren:

HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_tcp

HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_udp

Die RPC-Endpunktzuordnung (rpcss.exe) öffnet mehrere Ports, wenn der RPC-Server deaktiviert ist. Sie kann aber auch so konfiguriert werden, dass nicht lokale DCOM-Verbindungsversuche (Distributed Component Object Model) abgewiesen werden. Beachten Sie dabei, dass sich dies nachhaltig auf die Fähigkeit auswirkt, Systeme dezentral zu verwalten. Besonders betroffen ist die in Kapitel 4, "Absichern von Microsoft Windows NT 4.0", beschriebene Erweiterung des Verzeichnisdienstclients, da sie stark von den Unterstützungen der Windows-Verwaltungsinstrumentation (WMI) abhängt, bei denen es sich um DCOM-Objekte handelt. Sie können nicht lokale DCOM-Verbindungen mithilfe des folgenden Registrierungsschlüssels deaktivieren:

HKLM\SOFTWARE\Microsoft\OLE\EnableDCOM (REG_SZ):

Setzen Sie den Wert auf N, um remote DCOM-Verbindungen zu deaktivieren.

Trey Research veränderte die Einstellungen für RPC-Ports auf seinen internen Hosts nicht, da diese Ports aktiv sein müssen, um diverse Netzwerkdienste verwenden zu können. Durch die Stilllegung der RPC-Hosts wären mehrere Anwendungen für die Benutzer unerreichbar.

Implementierung

Voraussetzungen

Damit diese Implementierungsdetails korrekt funktionieren, muss die grundlegende Infrastruktur von Trey Research installiert sein. Dies wird in Kapitel 2, "Anwenden von SRMD (Security Risk Management Discipline) auf das Beispiel von Trey Research", beschrieben.

Übersicht

Um dieses Lösungsszenario zu implementieren, sind die folgenden Aktivitäten erforderlich:

Konfigurieren der systemeigenen Portfilterung von Windows NT 4.0.

Konfigurieren der IP-Anpassungsparameter von Windows NT 4.0.

Die Registrierungsdateien für die meisten dieser Einstellungen befinden sich in den Tools und Vorlagen dieses Leitfadens.

Konfigurieren der systemeigenen Portfilterung von Windows NT 4.0

Bevor Sie die TCP/IP-Portfilterung auf Ihren Windows NT-Servern aktivieren, müssen Sie genau wissen, welcher Datenverkehr für den korrekten Betrieb des Servers in seiner jeweiligen Rolle notwendig ist. Microsoft bietet eine Liste bekannter Ports, die von Windows NT 4.0 verwendet werden. Diese Liste finden Sie im englischsprachigen Artikel "Port Reference for MS TCP/IP" unter http://www.microsoft.com/technet/prodtechnol/winntas/support/port_nts.mspx.

Für andere Anwendungen sollte eine eigene Dokumentation vorhanden sein. Für Windows Serversysteme sollten Sie den Knowledge Base-Artikel 832017 ("Port-Anforderungen für das Microsoft Windows Serversystem") unter http://support.microsoft.com/?kbid=832017 lesen. Für weitere Anwendungen, die nicht in diesen Listen aufgeführt sind, schlagen Sie entweder in der Dokumentation des Anwendungsherstellers nach, oder verwenden Sie Tools zum Überwachen des Netzwerkdatenverkehrs, etwa Netmon.exe (eine Komponente von Windows NT 4.0), Netstat (ein integriertes Dienstprogramm von Windows NT, das anzeigt, welche Ports gerade verwendet werden) oder TCPView (ein kostenloses Tool der Firma Sysinternals, www.sysinternals.com), um die von der Anwendung verwendeten Ports zu überprüfen.

Wenn Sie wie folgt vorgehen, ist das Konfigurieren der Portfilterung von Windows NT ein recht einfacher Prozess.

So konfigurieren Sie die systemeigene Portfilterung von Windows NT

1.

Um die Netzwerksystemsteuerung zu öffnen, klicken Sie auf Start, Einstellungen, Systemsteuerung, und doppelklicken Sie dann auf Netzwerk.

2.

Wählen Sie auf der Registerkarte Protokolle die Option TCP/IP-Protokoll, und klicken Sie dann auf Eigenschaften.

3.

Klicken Sie auf der Registerkarte IP-Adresse auf Erweitert.

4.

Markieren Sie im Dialogfeld Erweiterte IP-Adressen das Kontrollkästchen Sicherheit aktivieren.

5.

Klicken Sie auf Konfigurieren.

6.

Wählen Sie im Dialogfeld TCP/IP-Sicherheit den entsprechenden Adapter aus (sofern der Server mehrfach vernetzt ist).

7.

Standardmäßig sind keine Filter definiert, und sämtlicher TCP-, UDP - und IP-Datenverkehr ist zugelassen (siehe Abbildung 3.1). Um Filter zu aktivieren, markieren Sie bei den TCP-, UDP- oder IP-Protokollen das Kontrollkästchen Nur zulassen, und fügen Sie die Port- und Protokollnummern, für die Sie den Datenverkehr zulassen wollen, hinzu. Stellen Sie sicher, dass die grundlegenden Infrastrukturdienste möglich sind.

nt980301.gif

Abbildung 3.1. Konfigurieren der systemeigenen Portfilterung von Windows NT
Großes Bild anzeigen

Konfigurieren der IP-Anpassungsparameter von Windows NT 4.0

Um die IP-Anpassungsparameter von Windows NT zu konfigurieren, bearbeiten Sie die folgenden Registrierungsparameter.

Achtung: Wenn Sie die Parameter zum Anpassen des TCP/IP-Stacks ändern, ändern Sie auch die Art, wie das Netzwerksubsystem mit Routern, Switches und anderen Computern im Netzwerk kommuniziert. Diese Änderungen können sich auf die Leistung oder Stabilität der Produktionsanwendungen auswirken. Bevor Sie Änderungen an der Produktionsumgebung durchführen, sollten Sie die beabsichtigten Änderungen in einer Laborumgebung, die das Verhalten und die Konfiguration Ihrer Produktionsserver und -clients widerspiegelt, sorgfältig prüfen.

So konfigurieren Sie IP-Anpassungsparameter von Windows NT für Server

1.

Starten Sie den Registrierungs-Editor (Regedt32.exe).

2.

Stellen Sie sicher, dass die folgenden Registrierungseinträge (TCP_Params.reg) für den Schlüssel HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters gelten:

SynAttackProtect (REG_DWORD) = 2

TcpMaxHalfOpen (REG_DWORD) = 100

TCPMaxHalfOpenRetried (REG_DWORD) = 80

TCPMaxPortsExhausted (REG_DWORD) = 5

TCPMaxConnectResponseRetransmissions (REG_DWORD) = 1

KeepAliveTime (REG_DWORD) = 7200000

KeepAliveInterval (REG_DWORD) = 1000

EnablePathMTUDiscovery (REG_DWORD) = 1

EnablePathMTUBHDetect (REG_DWORD) = 0

DisableIPSourceRouting (REG_DWORD) = 2

EnableDeadGWDetect (REG_DWORD) = 0

PerformRouterDiscovery (REG_DWORD) = 0

EnableICMPRedirect (REG_DWORD) = 0

3.

Stellen Sie sicher, dass die folgenden Registrierungseinträge (AFD_Params.reg) für den Schlüssel HKLM\SYSTEM\CurrentControlSet\Services\AFD\Parameters gelten:

EnableDynamicBacklog (REG_DWORD) = 1

MinimumDynamicBacklog (REG_DWORD) = 20

MaximumDynamicBacklog (REG_DWORD) = 144000

DynamicBacklogGrowth-Delta (REG_DWORD) = 10

4.

Stellen Sie sicher, dass die folgenden Registrierungseinträge (DisableDCOM.reg) für den Schlüssel HKLM\SOFTWARE\Microsoft\OLE gelten:

EnableDCOM (REG_SZ) = N

Achtung: Durch Deaktivieren von DCOM werden auch verschiedene grundlegende Funktionen zur Remoteverwaltung und andere Anwendungen deaktiviert, etwa die Erweiterungen des Verzeichnisdienstclients, WMI, die Fähigkeit, gemeinsam genutzte Drucker und Dateien remote zu verwalten, und andere Funktionen. Prüfen Sie diese Änderungen sorgfältig in einer Laborumgebung, bevor Sie sie auf Produktionsserver anwenden.

5.

Wenn Sie sich sicher sind, dass keine RPC-basierten Dienste, Anwendungen oder Dienstprogramme verwendet werden, löschen Sie die folgenden Unterschlüssel:

HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_tcp

HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_udp

HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_tcp

HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_udp

6.

Beenden Sie den Registrierungs-Editor.

So konfigurieren Sie IP-Anpassungsparameter von Windows NT für Arbeitsstationen

1.

Starten Sie den Registrierungs-Editor (Regedt32.exe).

2.

Stellen Sie sicher, dass die folgenden Registrierungseinträge (NT4WS_TCP_Params.reg) für den Schlüssel HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters gelten:

SynAttackProtect (REG_DWORD) = 2

TcpMaxHalfOpen (REG_DWORD) = 100

TCPMaxHalfOpenRetried (REG_DWORD) = 80

TCPMaxPortsExhausted (REG_DWORD) = 5

TCPMaxConnectResponseRetransmissions (REG_DWORD) = 1

KeepAliveTime (REG_DWORD) = 3600000

KeepAliveInterval (REG_DWORD) = 1000

EnablePathMTUDiscovery (REG_DWORD) = 1

EnablePathMTUBHDetect (REG_DWORD) = 0

DisableIPSourceRouting (REG_DWORD) = 2

EnableDeadGWDetect (REG_DWORD) = 0

PerformRouterDiscovery (REG_DWORD) = 0

EnableICMPRedirect (REG_DWORD) = 0

3.

Stellen Sie sicher, dass die folgenden Registrierungseinträge (NT4WS_AFD_Params.reg) für den Schlüssel HKLM\SYSTEM\CurrentControlSet\Services\AFD\Parameters gelten:

EnableDynamicBacklog (REG_DWORD) = 1

MinimumDynamicBacklog (REG_DWORD) = 20

MaximumDynamicBacklog (REG_DWORD) = 72000

DynamicBacklogGrowth-Delta (REG_DWORD) = 10

4.

Beenden Sie den Registrierungs-Editor.

Zusammenfassung

Die Ausweitung des Konzepts eines Perimeternetzwerks ist eine sinnvolle Methode, ältere Systeme abzusichern. Sie bietet innerhalb der Gesamtkonzeption und -konfiguration des gesamten Netzwerk zusätzlichen Schutz. Diese natürlichen Drosselpunkte, zusammen mit der Datenverkehrskontrolle einer persönlichen Firewallsoftware und den systemeigenen Funktionen von Windows NT 4.0 zur Portfilterung und IP-Abstimmung, sorgen für mehrere Schutzebenen und ergänzen die spezifischen Anleitungen zur Absicherung, die Sie in den weiteren Kapiteln finden.

Weitere Informationen

Die E-Mail-Liste NTBUGTRAQ ist eine hervorragende Ressource, in der aktuelle Sicherheitsprobleme von Windows diskutiert werden. Der äußerst kompetente Listenmoderator, Russ Cooper, ist nicht mit Microsoft verbunden. Unter www.ntbugtraq.com/ können Sie die Liste abonnieren oder die Archive lesen.

Das CERT Coordination Center (CERT/CC) ist eine Zentralstelle für Sicherheitshinweise und Bulletins. Weitere Informationen finden Sie unter www.cert.org/.

Das SANS Institute bietet zahlreiche Schulungen, Zertifizierungen und Forschungsangebote in Fragen der Computersicherheit. Weitere Informationen finden Sie unter www.sans.org/.

Das US Computer Emergency Readiness Team (US-CERT) konzentriert sich auf Sicherheitsratschläge und Bedrohungen für die USA, ist aber eine gute Informationsquelle bezüglich aktueller Bedrohungen. Weitere Informationen finden Sie unter www.us-cert.gov/.

Die National Security Agency bietet zahlreiche Anleitungen zur sicheren Konfiguration zahlreicher Betriebssysteme und Anwendungen: www.nsa.gov/snac/.

RRAS für Windows NT 4.0 kann auf der folgenden Seite heruntergeladen werden: http://www.microsoft.com/ntserver/nts/downloads/winfeatures/rras/rrasdown.asp.


**
**