Cyberbedrohungen
Sechs Schritte für sichere Container - eine Anleitung
Container-Sicherheit ist eine nicht unerhebliche Herausforderung, da viele verschiedene Aspekte des Entwicklungsprozesses und der unterstützenden Infrastruktur abgedeckt werden müssen. So lässt sich das Prinzip „Schutz von außen nach innen“ umsetzen:
Container-Sicherheit ist eine nicht unerhebliche Herausforderung, da viele verschiedene Aspekte des Entwicklungsprozesses und der unterstützenden Infrastruktur abgedeckt werden müssen. Die grundlegende Sicherheitsstrategie sollte dabei dem einfachen Leitsatz „Schutz von außen nach innen“ folgen. Am Anfang muss also ein solides Infrastrukturfundament stehen, das im weiteren Verlauf durch eine verlässliche, qualitativ hochwertige Code-Basis ergänzt wird. Nach einer ausführlichen Darstellung der einzelnen Aspekte der Container-Sicherheit lässt sich mit den folgenden Schritten das das Prinzip „Schutz von außen nach innen“ umsetzen:
- Sichern des Container-Hosts
- Wählen Sie ein auf Container ausgerichtetes Betriebssystem für das Hosting. Durch das Entfernen von Services, die für das Container-Hosting nicht nötig sind, reduziert sich die Angriffsfläche.
- Setzen Sie Monitoring-Tools ein, um über den Zustand der Hosts informiert zu werden.
- Verwenden Sie ein umfassendes Set von Sicherheitsmechanismen, wie die in Trend Micro™ Deep Security™ für die Security des Container-Hostsystems. Auf diesen Systemen laufen alle Ihre Container-Workloads und deshalb muss deren Integrität gewahrt sein.
- Dieser Schritt lässt sich umgehen, wenn Sie einen Managed Container Service eines vertrauenswürdigen Cloud Service Providers nutzen. In diesem Fall sichert der Provider den Host und Sie lassen lediglich ihre Container laufen.
- 2. Sichern der Netzwerkumgebung
- Dieser Schritt lässt sich umgehen, wenn Sie einen Managed Container Service eines vertrauenswürdigen Cloud Service Providers nutzen. In diesem Fall sichert der Provider den Host und Sie lassen lediglich ihre Container laufen.
- Für den Nord-Süd-Verkehr (ins und vom Internet) sollte ein IPS und Webfiltering im Einsatz sein, um Angriffe zu stoppen und bösartige Inhalte zu filtern.
- Ein IPS sollte auch den Verkehr zwischen Containern überwachen. Sobald Angreifer ins Netzwerk eingedrungen sind, bewegen sie sich schnell lateral durch das Netz, um ihren Fußabdruck zu erweitern. Das Monitoring des internen Verkehrs ist ein zentraler Aspekt in einer tiefreichenden Verteidigungsstrategie.
- 3. Sichern des Management-Stacks
- Stellen Sie sicher, dass ihre Container-Registry ausreichend gesichert und überwacht wird.
- Riegeln Sie ihre Kubernetes-Installation ab und nutzen Sie die Fähigkeiten von Pod und Netzwerkrichtlinien, um Ihre Sicherheits- und Entwicklungsstandards durchzusetzen.
- Setzen Sie auf ein Tool wie Trend Micro™ Deep Security™ Smart Check, um die Konfiguration jedes Containers zu scannen und zu validieren, wenn er der Registry hinzugefügt wird. Damit können Sie gewährleisten, dass nur solche Container bereitgestellt werden, die Ihren Sicherheits- und Entwicklungsstandards entsprechen.
- 4. Aufbauen auf einer sicheren Grundlage
- Überwachen und werten Sie alle Benachrichtigungen des Projekt-Teams über Abhängigkeiten innerhalb von Applikationen aus. Bei einem Patch der Software müssen Änderungen integriert werden, um ein Risiko für die Applikationen zu minimieren.
- Setzen Sie einen Image Scanner ein, wie etwa Deep Security Smart Check, der überprüft, dass Ihre Container keine Malware, bekannte Schwachstellen, exponierte vertrauliche Information umfassen. Er sucht auch nach Indicators of Compromise (IoC). Damit lassen sich die Risiken vor der weiteren Entwicklung oder Bereitstellung auf ein Minimum reduzieren.
- 5. Sichern der Build-Pipeline
- Funktionsstarke Endpoint-Kontrollmechanismen, wie die in Trend Micro™ Apex One™, auf den Workstations der Entwickler tragen dazu bei, Malware, Besuche von bösartigen Websites oder weitere Gefahren zu verhindern.
- Ein gründliches und konsistentes Schema für die Zugriffskontrolle ist unabdingbar. Es muss sichergestellt sein, dass nur autorisierte Nutzer auf die Code-Repositories zugreifen, Branches integrieren und Builds anstoßen, die in die Produktion gehen. Dies stellt einen wichtigen Schritt dar, um die Integrität Ihrer Pipeline zu sichern.
- Server, auf denen diese Tools betrieben werden, bedürfen ebenfalls der Sicherheit. Mithilfe eines Tools wie Trend Micro™ Deep Security™ stehen Ihnen funktionsstarke Sicherheitskontrollmechanismen bei nur minimalem Overhead dafür zur Verfügung.
- 6. Sichern der Anwendung
- Konsequente Einhaltung aller Best Practices gewährleistet Code-Qualität. Die meisten Sicherheitslücken sind das Ergebnis einfacher Fehler oder einer schlechten Designwahl.
- Nutzen Sie selbstschützende Kontrollmechanismen während der Laufzeit, um die Punkte zwischen den Sicherheitslücken und Problemen in bestimmten Codezeilen miteinander zu verbinden. Damit wird eine Lücke während der Ursachenanalyse geschlossen und dies führt zu einer höheren Sicherheit.
Lesen Sie auch Teil 1 und Teil 2 der Beiträge zu „Sechs Schritte zu stabiler Sicherheit für Container“.