Bundesamt für Sicherheit in der Informationstechnik

M 4.452 Überwachung eines Web-Service

Verantwortlich für Initiierung: Verantwortliche der einzelnen Anwendungen, Leiter IT

Verantwortlich für Umsetzung: Administrator

Um den Sicherheitszustand eines Web-Service nachvollziehen zu können, ist es notwendig, diesen kontinuierlich zu überwachen. Ziel einer solchen Überwachung ist es, Verstöße gegen die geltenden Sicherheitsvorschriften zu entdecken, bestehende Sicherheitslücken aufzudecken oder Fehlkonfigurationen, die zu Sicherheitslücken führen können, zu erkennen.

Als Bestandteil des Sicherheitskonzeptes für einen Web-Service muss deshalb ein Überwachungskonzept entwickelt werden.

Komplexe Systeme wie Web-Services können in der Regel nicht mehr durch einzelne Administratoren überwacht werden, sondern die Kontrolle muss automatisch durch entsprechende Systemkomponenten oder Produkte erfolgen. Die Überwachung eines Web-Service muss bei Veränderungen entsprechend angepasst werden.

Des Weiteren müssen in der Planung zur Überwachung eines Web-Service grundsätzlich alle relevanten Komponenten berücksichtigt werden. Daher sollten im Überwachungskonzept beispielsweise auch Datenbanken und Verzeichnisdienste, abhängige und genutzte Web-Services sowie die relevanten IT-Systeme enthalten sein. Dies ist von besonderer Bedeutung, wenn unterschiedliche Services über einen Enterprise Service Bus (ESB) miteinander verbunden sind.

Überwachung von Verfügbarkeit und Leistung

Wenn Dienste ausfallen, ihre Schnittstellen ändern oder ihr Antwortzeitverhalten verschlechtern, kann das weitreichende Folgen auf eine Vielzahl von abhängigen Systemen haben. Die Verfügbarkeit und Leistung von Web-Services müssen daher geeignet überwacht werden.

Neben der generellen Erreichbarkeit und Aktivität des Web-Service sowie der relevanten Schnittstellen-Dienste und Abhängigkeiten sollten daher auch Leistungsparameter überwacht werden. Hierzu gehören beispielsweise:

  • Antwortzeiten von Anfragen,
  • Anzahl der Anfragen beziehungsweise Anforderungen,
  • Größe von Anforderungen und Antworten oder
  • Füllstände von Speichern (zum Beispiel Speicher der JVM, Message-Queues).

Dadurch können zum einen Fehlkonfigurationen oder technisch bedingte Engpässe sowie zum anderen Denial-of-Service-Angriffe frühzeitig erkannt und zeitnah behandelt werden.

Insbesondere bei höheren Anforderungen an die Verfügbarkeit und bei der Verteilung eines Web-Service über mehrere Systeme sollte die Lastverteilung überwacht werden.

Meldungen

Des Weiteren sollten die Protokolldateien und Systemmeldungen (Notifications) hinsichtlich relevanter Meldungen kontinuierlich ausgewertet werden. Hierzu sollte ein am Schutzbedarf ausgerichtetes Log-Level im jeweiligen Web-Service konfiguriert werden (siehe auch M 4.397 Protokollierung sicherheitsrelevanter Ereignisse von Web-Anwendungen und Web-Services ). Für die Überwachung können beispielsweise die folgenden Meldungen relevant sein:

  • Fehler- oder Warnmeldungen,
  • Meldungen zu Berechtigungsverstößen oder -änderungen (zum Beispiel Vergabe von Administratorberechtigungen),
  • Meldungen zur Änderung von sicherheitsrelevanten Einstellungen,
  • Meldungen zu ungültigen XML -Nachrichten oder
  • Fehlermeldungen zur Inkonformität von Schnittstellen.

Meldungen mit einer höheren Kritikalität müssen zu einer Alarmierung eines verantwortlichen Mitarbeiters führen, um eine Reaktion in einem angemessenen Zeitraum sicherzustellen. Hierfür empfiehlt sich der Einsatz eines Alarmierungssystems.

Überwachung von Policies

In diesem Zusammenhang sollten auch die unterschiedlichen Meldungen zu Verstößen gegen die eingesetzten Policies (zum Beispiel WS-Policies, WS-SecurityPolicies) berücksichtigt werden. Diese könnten beispielsweise beinhalten:

  • Verstöße gegen die vordefinierte Nachrichtengröße,
  • Verstoß gegen die Verschlüsselungsanforderung an Nachrichten,
  • Fehler in der Ver- oder Entschlüsselung von Nachrichteninhalten,
  • Fehler in der Signatur von Nachrichteninhalten oder
  • fehlerhafte Authentisierung.

Überwachung der Verschlüsselung des Service

Werden aufgrund höherer Vertraulichkeitsanforderungen Verschlüsselungsmaßnahmen eingesetzt (zum Beispiel TLS ), sollten diese hinsichtlich ihrer Funktionalität überwacht werden. Gerade durch die automatisierte Funktion eines Web-Service besteht die Gefahr, dass Fehler in der Verschlüsselung nicht rechtzeitig bemerkt werden.

Ansatzpunkte für eine Überwachung der Verschlüsselung sind beispielsweise:

  • Aktualität und Gültigkeit des Zertifikats des Web-Service,
  • Aktualität und Gültigkeit der Zertifikate von anfragenden Diensten,
  • Fehler- oder Warnmeldungen beim Aufbau von verschlüsselten Verbindungen (zum Beispiel Warnmeldungen bei veralteten SSL -Versionen)

Auswertung durch Schwellwerte und Trends

Um Bedrohungen und Schwachstellen rechtzeitig erkennen zu können, ist es erforderlich, Schwellwerte zu definieren sowie Trends aus den überwachten Werten abzuleiten, zum Beispiel für den belegten Speicherplatz, die Systemauslastung oder die genutzte Bandbreite. Anhand der Schwellwerte und jeweils kritischen Trendrichtungen sollten im Rahmen des Überwachungskonzepts Handlungsanweisungen definiert werden.

Prüffragen:

  • Existiert ein Überwachungskonzept für Web-Services?

  • Existiert eine angemessene Verfügbarkeits- und Leistungs-Überwachung?

  • Werden Meldungen der Betriebssysteme und Dienste angemessen überwacht? Ist eine zeitnahe Reaktion auf kritische Meldungen sichergestellt?

  • Werden die eingesetzten Policies hinsichtlich ihrer Einhaltung überwacht?

  • Werden die Verschlüsselungsfunktionen angemessen überwacht?

  • Wurden Schwellwerte und Trends definiert und mit Handlungsanweisungen untersetzt?

Stand: 14. EL Stand 2014