M 5.169 Systemarchitektur einer Webanwendung

Verantwortlich für Initiierung: Verantwortliche der einzelnen Anwendungen

Verantwortlich für Umsetzung: Administrator

Webanwendungen verwenden im Allgemeinen mehrere IT -Systemkomponenten wie z. B. Webserver, Web-Applikationsserver und Hintergrundsysteme. Als Grundlage für den sicheren Betrieb einer Webanwendung muss eine geeignete Systemarchitektur gewählt werden.

Beim Entwurf der Systemarchitektur der Webanwendung und der Vernetzung der beteiligten IT-Systeme sollten die folgenden Punkte berücksichtigt werden.

Trennung nach Server-Rollen

Die Serverdienste der Webanwendung (z. B. Webserver, Applikationsserver, Datenbankserver) sollten jeweils auf separaten IT-Systemen betrieben werden. Kann bei diesem Ansatz eine Schwachstelle im System einer exponierten Komponente (z. B. im Webserver) ausgenutzt werden, so sind die auf anderen Systemkomponenten (z. B. der Datenbank) gespeicherten Daten hiervon nicht direkt betroffen.

Eine Trennung der Server-Rollen kann auch durch eine Servervirtualisierung umgesetzt werden. Wird von der Servervirtualisierung Gebrauch gemacht, so ist bei der Umsetzung der Baustein B 3.304 Virtualisierung zu berücksichtigen.

Eingeschränkte Konten für Serverprozesse der Systemkomponenten

Es sollten jeweils eigene Konten für die unterschiedlichen Serverprozesse der Systemkomponenten verwendet werden (z. B. ein eigener Systembenutzer für den Webserverprozess). Dabei sind die Rechte dieser Dienstekonten auf Betriebssystemebene soweit einzuschränken, dass nur auf die erforderlichen Ressourcen und Dateien des Betriebssystems zugegriffen werden kann. Auf diese Weise verfügt ein Angreifer auch nach einer erfolgreichen Kompromittierung eines Server-Prozesses nur über eingeschränkte Rechte, sodass der Zugriff auf Betriebssystemebene erschwert wird.

Mehrschichtige Netzwerkarchitektur

Die IT-Systemkomponenten der Webanwendung sollten im Sicherheitsgateway in demilitarisierten Zonen (DMZ) entsprechend des Schutzbedarfs entkoppelt werden (siehe M 2.73 Auswahl geeigneter Grundstrukturen für Sicherheitsgateways ).

Die Netzwerkarchitektur sollte einen mehrschichtigen (Multi-Tier) Ansatz verfolgen. Dabei sollten mindestens die folgenden Sicherheitszonen berücksichtigt werden:

Es sollte aus den oben genannten Zonen nicht auf Systeme im Intranet zugegriffen werden können. Falls z. B. für die Authentisierung an der Webanwendung ein Verzeichnisdienst eingesetzt wird, sollte hierfür nach Möglichkeit eine eigene Domäne auf dedizierter Hardware verwendet werden.

Eine Filterung des Datenverkehrs sollte durch getrennte Filterkomponenten erfolgen (z. B. Paketfilter). Bei hohem Schutzbedarf sollten die Filterkomponenten durch Systeme mit Filterfunktionen auf höheren Protokollebenen (z. B. Application Level Gateway) ersetzt oder ergänzt werden. Das Application Level Gateway sollte dabei in einer eigenen Sicherheitszone integriert werden, die noch vor den Systemen der Webschicht die Anfragen der Benutzer entgegennimmt.

Einsatz von Web Application Firewalls

Bei der Filterung auf höheren Protokollebenen kann auf den Einsatz von Web Application Firewalls (WAF) zurückgegriffen werden. Da eine WAF das HTTP -Protokoll und die darüber übertragenen Daten analysiert, können Angriffsmuster auf Anwendungsebene bereits an der WAF gefiltert werden. Auf diese Weise werden Angriffsversuche frühzeitig erkannt und nicht mehr an die Webanwendung weitergeleitet.

Die Filterung an der WAF kann üblicherweise auf zwei Arten erfolgen.

Prüffragen: