M 4.185 Absichern von virtuellen Verzeichnissen und Web-Anwendungen beim IIS-Einsatz
Verantwortlich für Initiierung: Leiter IT, IT-Sicherheitsmanagement
Verantwortlich für Umsetzung: Administrator
Um einen unberechtigten Zugriff auf das Dateisystem des Web-Servers zu verhindern, sind entsprechende ACLs (Access Control Lists) einzurichten, in denen die Zugriffsrechte restriktiv vergeben werden (siehe auch M 4.53 Restriktive Vergabe von Zugriffsrechten auf Dateien und Verzeichnisse unter Windows NT). Der Umgang mit Scripts und CGI-Anwendungen erfordert besondere Aufmerksamkeit, da hier Ausführungsrechte benötigt werden.
Wird für das Konto IUSR_Computername für eine Ressource die Berechtigung Kein Zugriff festgelegt, wird anonymen Benutzern der Zugriff auf diese Ressource verweigert.
Im Allgemeinen sollten folgende Dateiberechtigungen auf dem IIS vergeben werden:
Dateitypen | Beispiele | Nutzer (ACL) | Zugriffsrechte (ACL) |
---|---|---|---|
Scripts, |
*.exe, *.dll, |
Jeder |
Beschränkter Zugriff (X) |
ausführbare |
*.cmd, *.pl, |
Administratoren |
Vollzugriff |
Dateien |
*.asp, *.cgi |
System |
Vollzugriff |
Eingebundene |
*.inc, *.shtml, |
Jeder |
Beschränkter Zugriff (X) |
Dateien |
*.shtm |
Administratoren |
Vollzugriff |
System |
Vollzugriff | ||
Statische |
*.html, *.gif, |
Jeder |
Beschränkter Zugriff (R) |
Dateien |
*.jpeg |
Administratoren |
Vollzugriff |
System |
Vollzugriff | ||
Kombination statische/ |
*.html, *.gif, *.jpeg, *.exe, |
Jeder |
Lesen (RX) |
ausführbare Dateien |
*.dll, *.cmd, *.pl, *.asp, |
Administratoren |
Vollzugriff |
*.cgi |
System |
Vollzugriff | |
Datenbanken |
*.mdb |
Jeder |
Beschränkter Zugriff (RW) |
Administratoren |
Vollzugriff | ||
System |
Vollzugriff |
Tabelle: Zugriffsrechte auf Dateitypen
Besser als für jede Datei die ACL zu setzen, ist es, für jeden Dateityp ein Verzeichnis anzulegen und die ACL für dieses Verzeichnisse festzulegen. Zum Beispiel wäre eine Verzeichnisstruktur wie diese denkbar:
Verzeichnis | Dateitypen | Nutzer (ACL) | Zugriffsrechte (ACL) |
---|---|---|---|
\inetpub\wwwroot\ myserver\script |
Scripts | Jeder | Beschränkter Zugriff (X) |
Administratoren | Vollzugriff | ||
System | Vollzugriff | ||
\inetpub\wwwroot\ myserver\executable |
Ausführbare Dateien | Jeder | Beschränkter Zugriff (X) |
Administratoren | Vollzugriff | ||
System | Vollzugriff | ||
\inetpub\wwwroot\ myserver\include |
Eingebundene Dateien | Jeder | Beschränkter Zugriff (X) |
Administratoren | Vollzugriff | ||
System | Vollzugriff | ||
\inetpub\wwwroot\ myserver\static |
Statische Dateien | Jeder | Beschränkter Zugriff (R) |
Administratoren | Vollzugriff | ||
System | Vollzugriff | ||
\inetpub\wwwroot\ myserver\images |
Bilddateien | Jeder | Beschränkter Zugriff (R) |
Administratoren | Vollzugriff | ||
System | Vollzugriff | ||
\inetpub\wwwroot\ myserver\database |
Datenbank-dateien | Jeder | Beschränkter Zugriff (RW) |
Administratoren | Vollzugriff | ||
System | Vollzugriff |
Tabelle: Zugriffsrechte auf Verzeichnisse
Beim Einsatz des IIS als FTP- bzw. als SMTP-Server sollten auch folgende Verzeichnisse durch eine spezielle ACL geschützt werden:
c:\inetpub\ftproot (FTP-Server)
c:\inetpub\mailroot (SMTP-Server)
Jeder Benutzer hat standardmäßig auf diese beiden Verzeichnisse Vollzugriff. Dieser Zugriff sollte abhängig von der notwendigen Funktionalität herabgesetzt werden. Wenn jeder Benutzer Schreibrecht erhalten soll, ist es empfehlenswert, das Verzeichnis auf eine andere Festplatte auszulagern. Um von einem FTP-Server Dateien herunterzuladen, ist ein Leserecht im Verzeichnis ftproot ausreichend. Hierdurch wird verhindert, dass vorhandene Informationen verändert oder ersetzt werden. Auf das mailroot-Verzeichnis sollten nur die Benutzer zugreifen können, die den SMTP-Dienst nutzen sollen. Über die MMC (Microsoft Management Console) können weitere Einstellungen, z. B. zur Authentisierung, vorgenommen werden.
Die Zugriffsrechte auf Dateien und Verzeichnisse (NTFS-Berechtigungen) werden mit Hilfe des Windows Explorers im Menü Eigenschaft | Sicherheit festgelegt. Darüber hinaus besteht die Möglichkeit, über die MMC des IIS weitere Berechtigungen für virtuelle Web-Verzeichnisse zu vergeben. Folgende Optionen können ausgewählt werden:
- Lesen: (standardmäßig aktiviert) Benutzer können den Inhalt und die Eigenschaften von Dateien anzeigen.
- Schreiben: Benutzer können den Inhalt und die Eigenschaften von Dateien ändern.
- Zugriff protokollieren (Besuche protokollieren): Für jeden Besuch einer Web-Seite wird ein Protokolleintrag erstellt.
- Verzeichnis durchsuchen (erlaubt): Benutzer können Dateilisten und Auflistungen anzeigen.
- Indizieren des Verzeichnisses (Ressource indizieren): Ermöglicht dem Indexdienst die Indizierung der jeweiligen Ressource.
- Scriptzugriff (nur IIS 5.0): Benutzer haben Zugriff auf Quelldateien. Ist Lesen aktiviert, kann der Quellcode gelesen werden. Ist Schreiben aktiviert, ist der Schreibzugriff auf den Quellcode möglich. Scriptzugriff ermöglicht den Zugriff auf den Quellcode für Dateien, z. B. auf die Scripts in einer ASP-Anwendung. Diese Option ist nur verfügbar, wenn Lesen oder Schreiben aktiviert ist.
- FrontPage-Web (nur bei Web-Seite).
Die Standardeinstellungen sind Lesen, Zugriff protokollieren und Indizieren des Verzeichnisses.
Stimmen diese Berechtigungen nicht mit den NTFS-Berechtigungen überein, werden die Einstellungen mit den geringsten Rechten wirksam. Das bedeutet, es wird die Schnittmenge gebildet.
Ergänzende Kontrollfragen:
- Wurden die Dateien im webroot-Verzeichnis, insbesondere Scripts und ausführbare Dateien, durch geeignete ACLs geschützt?
- Wurde beim Einsatz des IIS als FTP-Server das Verzeichnis \Inetpub\ftproot mit einer speziellen ACL versehen?
- Wurde beim Einsatz des IIS als SMTP-Server das Verzeichnis \Inetpub\mailroot mit einer speziellen ACL versehen?