iX 5/2017
S. 78
Review
Compliance
Aufmacherbild

Docker-Container und -Hosts überwachen

Sicher am laufenden Band

Sicherheitsprozesse zu automatisieren, ist ein zentraler Bestandteil von DevSecOps. Wichtig wird das vor allem im Rahmen von Continuous Integration und DevOps. Da dort häufig Container eingesetzt werden, müssen Produkte zur Automatisierung von Sicherheit damit umgehen können.

Tabelle
Tabelle: Anbieterübersicht

Früher war „Ich werde dich durch ein Shell-Script ersetzen“ eine freundliche Drohung gegenüber Administratoren, heute ist es die Arbeitsrealität in größeren Unternehmen. Automatisierung der Administration ist das Schlagwort, das als DevOps bekannt wurde. Das Gebot der Stunde ist nun die Erweiterung der Automatisierung auf die Sicherheit: DevSecOps. Einige Produkte erledigen dies speziell für das Trendthema Container und überwachen Docker-Container und -Hosts auf Sicherheitsprobleme. Ihr Fokus liegt dabei auf dem Erkennen von Schwachstellen in den Konfigurationen der Hosts und der Container über den gesamten Lebenszyklus hinweg.

Mit dem Siegeszug von Docker wird die Frage relevant, welche Container auf welchen Hosts laufen und welche Software diese Container enthalten. Es ist also notwendig, eine Übersicht über den gesamten Betrieb zu erstellen und diese in einer für die Administratoren verständlichen Form zu präsentieren. Dies erledigen die bekannten Verwaltungs- und Orchestrierungstools wie Mesos, Kubernetes oder Rancher. Die Frage, welche Versionsstände und Konfigurationen die Hosts und Container enthalten, beantworten die Tools für Sicherheitsbelange allerdings nicht ausreichend. Dass der Frontend-Container in Version 13 läuft, mag für den Betrieb ausreichen, für das Management der Verwundbarkeiten ist ein sehr viel detaillierterer Blick notwendig.

Diese Informationen zu sammeln, auszuliefern und zu verarbeiten, haben sich mehrere Sicherheitsmanagement-Tools vorgenommen. Ihr Ansatz ist dabei ähnlich: Aus einem mehr oder weniger automatisierten Erkennen der Hosts heraus erfolgt ein Scan der Container und deren Konfiguration. So erstellen die Programme einen Überblick der zu betrachtenden Assets und unterziehen sie mindestens einem Compliance-Check gegen den CIS Benchmark für Docker-Container. Aqua Sec geht in der im Februar 2017 vorgestellten Version 2.0 noch einige Schritte weiter.

Wichtig für alle DevSecOps-Werkzeuge ist die Einbettung in das Management über RESTful APIs. Nur damit können sie ihre Arbeit automatisiert verrichten. Ziel der DevSecOps ist wie bei DevOps, keine manuellen Schritte im Betrieb mehr zu benötigen. So kann die Administration den Betrieb vollständig in einer Testumgebung simulieren und dann ohne Veränderungen in die Produktion übertragen.

Vulnerability Assessment von Tenable

Übersicht über die Ergebnisse der Überwachung auf Schwachstellen in der Konsole von Tenable.io (Abb. 1) Quelle: Tenable

Von den Herstellern auf dem Markt weist Tenable die größte Erfahrung auf. Deren bekanntestes Produkt ist Nessus, das vor fast 20 Jahren das Vulnerability Assessment einführte. Tenable erweitert seit Anfang 2017 sein Portfolio um das auf Cloud und Container spezialisierte Tenable.io als Software-as-a-Service-Angebot. Es gibt zwar auch eine On-Premises-Variante, allerdings ist diese im Funktionsumfang stark eingeschränkt. Das neue Cloud-Angebot besteht aus drei Teilen:

1. Das Vulnerability Management verwaltet die gefundenen Schwachstellen in einer Webseite, stellt aber auch Schnittstellen zum Patch-Management und zu Ticketsystemen bereit.

2. Der Web Application Security Scanner (Dynamic Application Security Testing – DAST) stellt für Tenable ein neues Marktsegment dar, ist allerdings erst in einer geschlossenen Betaphase.

3. Das dritte Modul ist die Container Security, die sich in die Verwaltung der Container wie Kubernetes integriert (Continuous Integration and Continuous Deployment – CI/CD).

Damit hat Tenable.io alle Container ab dem Erstellen im Blick und nicht erst mit der Inbetriebnahme. Dieses Modul überwacht auch Hosts und Container auf Schwachstellen und Fehler in der Konfiguration, wie Abweichungen vom CIS Docker Benchmark.