Container und Microservices absichern 5 Tipps für mehr Sicherheit in DevOps-Umgebungen

Redakteur: Stephan Augsten

Dank ihrer Isolation gelten Container und Microservices als verhältnismäßig sicher. Doch auch diese Technologien können zu neuen Sicherheitsrisiken führen, warnt F5 Networks. Der Security-Anbieter hat deshalb fünf Tipps für mehr Sicherheit zusammengefasst.

Anbieter zum Thema

Container-Umgebungen gelten gemeinhin als sicher, lassen sich aber mitunter dennoch kompromittieren.
Container-Umgebungen gelten gemeinhin als sicher, lassen sich aber mitunter dennoch kompromittieren.
(Bild: realworkhard - Pixabay.com / Pixabay )

Um auf die potenziellen Sicherheitsrisiken in DevOps-Umgebungen hinzuweisen, verweist F5 Networks in einer Pressemitteilung auf die Datenbank „Common Vulnerabilities and Exposures“ (CVE). Dort findet sich seit Januar unter der Kennung CVE-2019-5736 eine Schwachstelle in runC.

Die Anfälligkeit in der portablen Container-Laufzeitumgebung lasse sich demnach mit „minimaler Benutzerinteraktion“ ausnutzen. Anschließend könne ein Hacker Root-Level-Code auf dem Host ausführen. Die erwähnte Benutzerinteraktion lässt sich mit einer einzigen, einfachen Regel verhindern, unterstreicht F5 Networks: durch das Abschließen der Tür.

Laut Studien gebe es aber immer mehr öffentlich zugängliche, containerisierte Umgebungen, die keine Authentifizierung benötigen. Das bedeutet, dass jeder Nutzer die Kontrolle übernehmen und bösartige Container installieren kann, um Zugriff auf Root-Ebene zu erhalten. Lori MacVittie, Principal Technical Evangelist bei F5 Networks, hat deshalb einige grundlegende Maßnahmen zur Absicherung zusammengefasst:

1. Komponenten selbst hosten

Laut Studien bestehen 80 bis 90 Prozent der Anwendungen in Unternehmen aus Komponenten von Drittanbietern. Diese werden häufig von externen Standorten geladen und dabei von der Quellcodeanalyse ausgeschlossen. Eine Möglichkeit, die Runc-Schwachstelle auszunutzen, besteht jedoch in der Infiltrierung eines Containers, der ungeprüft geladen und in einer Anwendung verwendet wird. Ähnliches gilt für UX-Komponenten von Drittanbietern. Wenn möglich, sollten Unternehmen die Komponenten auf ihrer eigenen Website hosten, um das Risiko von Manipulationen zu verringern.

2. Komponenten prüfen

Komponenten von Drittanbietern können grundsätzlich Schwachstellen enthalten. Daher sollten sie in die Sicherheitsprozesse des Unternehmens integriert werden, zum Beispiel die Prüfung im Rahmen der CI/CD-Pipeline. Dabei ist immer der gesamte Code – egal wo er ausgeführt wird – auf mögliche Risiken hin zu scannen.

3. Türen schließen

Ob Web-, Anwendungs-, Datenbank- oder Middleware-Server oder auch Container-Orchestrierungsumgebung: In allen Fällen muss eine persönliche Authentifizierung für den Zugriff auf administrative Konsolen erforderlich sein. Dies gilt auch für alle öffentlichen Speicherorte und Cloud-Anwendungen.

4. Den Schlüssel verstecken

Wer eine Tür abgeschlossen hat, sollte den Schlüssel nicht auf die Fußmatte legen. Um Anwendungen und Prozesse vor unbefugtem Zugriff zu schützen, dürfen Anmeldeinformationen, Schlüssel oder Zertifikate nicht in öffentlich zugänglichen Speicherorten abgelegt werden.

5. APIs einbinden

Schnittstellen übertragen Benutzereingaben, doch diesen darf ein Unternehmen niemals vertrauen. Daher ist zu verhindern, dass APIs Daten einfach an interne Anwendungen oder Microservices weiterleiten. APIs müssen genauso wie Anwendungen immer geprüft und gesichert werden.

Natürlich gibt es viele weitere Möglichkeiten, um Anwendungen und die Umgebungen, in denen sie laufen, zu schützen. Doch diese funktionieren nicht, wenn die genannten fünf einfachen Schritte nicht als Basis umgesetzt werden. Da sie für die gesamte CI/CD-Pipeline gelten, muss DevOps diese Schritte in die Sicherheits-Checkliste aufnehmen.

(ID:45962179)