IIS 7: Sicherheit durch verteilte Aufgaben

Rollendienste in IIS 7

04.12.2007 von Martin Kuppinger
Sicherheit wird bei den IIS 7 groß geschrieben. Ein wichtiger Bestandteil sind die Rollendienste für die Steuerung der installierten Funktionalität. Damit lassen sich die IIS modular einrichten und nicht erforderliche Dienste vermeiden – und so die Angriffsflächen reduzieren.

Mit dem Konzept von Rollen und Funktionen beim Windows Server 2008 hat Microsoft auch die Rollendienste eingeführt. Rollendienste sind Teile von Rollen; sie können genutzt werden, um die konkret verfügbaren Funktionen innerhalb einer Rolle zu steuern. Bei den IIS 7 (Internet Information Services) sind es mehr als 40 verschiedene Rollendienste, die ausgewählt werden können.

Granular: Die IIS 7 sind die Rolle des Windows Server 2008, für die die meisten Rollendienste ausgewählt werden können.

Damit lässt sich die verfügbare Funktionalität optimal steuern. Das ist aus Sicherheitsgründen wichtig, um die Angriffsflächen der IIS 7 zu minimieren. Gleichzeitig bringt es aber auch Vorteile für die Lastoptimierung – weniger Serverdienste bedeuten automatisch weniger Grundlast auf dem Server. Zudem wird auch die Wartung von IIS 7-Servern vereinfacht, da Patches für weniger Dienste erforderlich sind und Wartungsphasen dadurch seltener und kürzer werden.

Die Rollendienste

Die Liste der Rollendienste bei den IIS 7 ist in mehrere Kategorien untergliedert:

Strukturiert: Microsoft hat die Rollendienste der IIS 7 in verschiedene Gruppen zusammengefasst.

Viele dieser Dienste können unabhängig von anderen Diensten eingerichtet werden, wobei natürlich immer Grundfunktionen wie der Zugriff auf statische Seiten benötigt werden. Falls es Abhängigkeiten zwischen Rollendiensten gibt, wird darauf aber bei der Installation ohnehin hingewiesen.

Die Authentifizierungsdienste

Ein besonders interessanter Bereich der Rollendienste sind die Sicherheitsdienste und hier wiederum die nun wählbaren Authentifizierungsfunktionen. Dort kann beispielsweise konfiguriert werden, dass ausschließlich mit der integrierten Windows-Authentifizierung gearbeitet wird, nicht aber mit der – zumindest ohne Verwendung von SSL – eher unsicheren Standardauthentifizierung. Erstere ist innerhalb eines internen Netzwerks der am besten geeignete Ansatz, zumal zusätzliche Features wie Single Sign-On dadurch möglich werden.

Konfigurierbare Sicherheit: Es gibt eine Reihe von Varianten für die Authentifizierung, die optional installiert werden können.

Die Digestauthentifizierung ist eine Abwandlung der Standardauthentifizierung. Hier wird nicht das Kennwort selbst, sondern ein Hash des Kennworts übertragen. Damit wird auch eine höhere Sicherheit erreicht als bei der Standardauthentifizierung – und gleichzeitig hat man nicht die Einschränkungen der Windows-Authentifizierung.

Weitere Authentifizierungsverfahren

Daneben gibt es noch zwei Authentifizierungsverfahren, die auf digitalen Client-Zertifikaten basieren. Sie unterscheiden sich in der Form, in der die Zertifikate auf Benutzer abgebildet werden. Dabei gibt es zwei Alternativen:

Wichtig ist auch hier, dass für die Nutzung von digitalen Client-Zertifikaten in jedem Fall erst der entsprechende Rollendienst installiert werden muss.

Weitere Sicherheitsfunktionen

Im Bereich Sicherheit der Rollendienste gibt es noch mehrere andere interessante Funktionen:

Alle diese Funktionen können optional eingerichtet werden. Während es bei den Authentifizierungsmechanismen vor allem darum geht, potenziell unsichere Verfahren auszuschließen, muss bei den weiteren Sicherheitsfunktionen überlegt werden, ob die Filter tatsächlich benötigt werden – denn jeder zusätzliche Filter bedeutet einen zusätzlichen Verarbeitungsschritt, auch wenn keine oder wenige Regeln konfiguriert sind.

Rollendienste für die Diagnose

Neben den spezifischen Rollendiensten für die Sicherheit sind auch die Dienste für Integrität und Diagnose interessant. Bei einer Standardinstallation der IIS werden vier Dienste automatisch eingerichtet:

Darüber hinaus gibt es noch zwei weitere Dienste für die Protokollierung. Der erste ist die Benutzerdefinierte Protokollierung, mit deren Hilfe andere Protokollierungsmodule unterstützt werden können. Dieses Modul ist dann erforderlich, wenn die Form der IIS-Protokolldateien für Analyseanwendungen nicht geeignet ist. Sie setzt allerdings spezielle COM-Module voraus, die die Protokollierungsinformationen verarbeiten.

Schließlich gibt es noch die ODBC-Protokollierung, mit der Protokollinformationen über die ODBC-Schnittstelle in eine Datenbank geschrieben werden können. Das ist ein probater Ansatz für individuelle Analysen, falls nicht mit den Standardschnittstellen oder speziellen Analysetools über die benutzerdefinierte Protokollierung gearbeitet werden soll.

Rollendienste für Anwendungen

Die Rollendienste im Bereich Anwendungsentwicklung sind unter dem Aspekt der Sicherheit schon deshalb von Bedeutung, weil ein erheblicher Teil der im Laufe der Entwicklung der IIS aufgetretenen Schwachstellen im Zusammenhang mit solchen Anwendungsschnittstellen stand. Insofern gilt gerade hier, dass man nur die unbedingt erforderlichen Komponenten installieren sollte.

Auch hier stehen eine eine ganze Reihe von unterschiedlichen Rollendiensten und damit Anwendungsschnittstellen zur Verfügung. Dazu gehören Standardschnittstellen wie CGI (Common Gateway Interface), SSI (Server Side Includes) oder die altbekannte ISAPI-Schnittstelle (Internet Server API).

Bei ISAPI sind einerseits die ISAPI-Erweiterungen und andererseits die ISAPI-Filter zu nennen, die in der Liste der Rollendienste nur als ISAP-Filter bezeichnet sind. Die Filter sind spezielle Dateien, die Anforderungen zusätzlich überprüfen, während die Erweiterungen die generelle Schnittstelle für das Hinzufügen von ISAPI-Modulen bereitstellen.

Darüber hinaus gibt es noch ASP (Active Server Pages), ASP.NET und die .NET-Erweiterbarkeit. ASP ist die ältere Version der Entwicklungsschnittstellen für die IIS, während ASP.NET auf dem .NET-Framework basiert und mit sogenanntem Managed Code arbeitet. Die .NET-Erweiterbarkeit wiederum stellt Schnittstellen für die Erweiterung von Web-Server-Funktionen über .NET-Anwendungen bereit.

Bei der Auswahl der Schnittstellen spielen die Anwendungen, die auf dem Web-Server ausgeführt sind, eine zentrale Rolle. Wenn beispielsweise die Zertifikatsdienste des Windows Server 2008 installiert werden, werden automatisch ASP und die ISAPI-Erweiterungen eingerichtet. Das Ziel muss aber generell sein, mit so wenigen Schnittstellen wie möglich auszukommen – im Idealfall nur mit ASP.NET und der .NET-Erweiterbarkeit, weil diese die beste Kontrolle über den ausgeführten Code bieten und gleichzeitig die leistungsfähigsten Schnittstellen sind.

Rollendienste hinzufügen

Das Hinzufügen zusätzlicher Rollendienste für die IIS 7 ist einfach. Im Servermanager kann auf der Seite für die IIS 7 der Link Rollendienste hinzufügen ausgewählt werden. Dadurch wird das Dialogfeld mit der Liste der Rollendienste geöffnet, in dem die gewünschten Dienste ausgewählt werden können.

Bestätigung: Die Auswahl der Rollendienste muss noch bestätigt werden. In einigen Fällen müssen zusätzliche Komponenten installiert werden.

In wenigen Fällen sind zusätzliche Komponenten im System erforderlich. Solche Abhängigkeiten werden automatisch erkannt und angezeigt. Das wichtigste zusätzliche Modul, die Windows-Prozesssteuerung, wird aber schon bei der Erstinstallation der IIS 7 eingerichtet.

Aktualisiert: die Schnittstelle mit den verfügbaren Rollendiensten und Komponenten.

Nach der Bestätigung der Auswahl erfolgt die Installation, wobei der Status angezeigt wird. Die Installation zusätzlicher Komponenten ist in der Regel innerhalb weniger Minuten erledigt. Ein Neustart des Systems ist dabei nicht erforderlich. Abschließend wird die aktualisierte Liste der Rollendienste angezeigt. (mja)