Container, Microservices & Serverless Computing

Autor
Markus Pfister
Veröffentlicht
28. August 2019

Welche Eigenschaften müssen moderne Cloud-Umgebungen eigentlich bieten können? Zum einen müssen sie skalierbar sein, zum anderen müssen Dienste schnell hoch- oder heruntergefahren werden können, um flexibel auf Kundenwünsche zu reagieren. Mit Containeranwendungen, Microservices und dynamischen Infrastrukturen investieren immer mehr Unternehmen in ihre Effektivität. Zugleich sehen sie sich damit aber mit einer nie dagewesenen Komplexität der zu verwaltenden Anwendungen konfrontiert. Eine Komplexität, die sich schnell auf die Sicherheit auswirkt. Wie Sie diese Herausforderung meistern können, erfahren Sie in diesem Blogbeitrag.

Der Dynamik in der Cloud Security zu folgen ist schwer – die Dynamik zu verstehen, eine echte Her-ausforderung. Denn mit immer mächtigeren Orchestrierungs-Werkzeugen werden die Ressourcen in der Cloud dynamisch bereitgestellt. Unterschieden werden grundsätzlich zwei Typen von Diensten in der Cloud: Serverless Computing und Microservice – nicht zu verwechseln mit den herkömmlichen Infrastructure-, Plattform- und Application-as-a-Service. Aber worum geht es bei Serverless Computing und Microservice eigentlich?

Microservices sind wie Legosteine

Nehmen wir an, Sie waren kürzlich in den Ferien und haben tolle Fotos gemacht. Nun möchten Sie diese bearbeiten. Dies können sie natürlich selbst tun, oder aber einen Cloud-Dienst abonnieren und die entsprechende, automatisierte Funktion aufrufen. Als Service-Bezüger brauchen Sie nur die URL, die Aufrufparameter und die Login-Daten zu kennen – den Rest erledigt der Service-Anbieter. Genau so funktioniert das Konzept der Microservices: Lose gekoppelte und in sich geschlossene Funktionen, kombinierbar wie Legosteine.

Und was, wenn Sie der Service-Anbieter sind? In diesem Falle haben Sie einen Cloud Stack mit Con-tainern. In den einzelnen Containern betreiben Sie die Infrastrukturen wie Datenbanken, Message Queues und Anwendungen, die Ihre Microservices zur Verfügung stellen. Sie haben dabei den Vorteil, dass Sie diese Container problemlos verschieben können – wie in einem Container-Hafen. Damit die Container beim Transport im Laderaum der riesigen Containerschiffe oder der Verteilung mittels LKW gesichert sind, werden Twistlocks eingesetzt. Was Twistlocks genau sind, erfahren Sie weiter unten.

Traditionelle Sicherheitsansätze sind mit der Dynamik von Cloud-Umgebungen überfordert

Nur wie kann man bei einem System, das in ständiger Bewegung ist, die Sicherheit gewährleisten? Eine dynamische Cloud-Umgebung stellt folgende – keineswegs geringe – Herausforderungen an eine Sicherheitslösung:

  • In der Cloud werden Tools für DevOps eingesetzt mit dem Ziel der Continuous Integration. Ein Deployment soll dabei nur erfolgen, wenn die definierten (Sicherheits-)Richtlinien eingehalten werden.
  • Container und darin laufende Microservices werden nach Bedarf gestartet und gestoppt. Die Sicherheitslösung muss somit mit dynamischem Verhalten umgehen können. Gleichzeitig soll ein hoher Automatisierungsgrad erreicht werden.
  • Während der Laufzeit sollten die Infrastrukturen auf Vulnerabilities geprüft und Angriffe unterbunden werden. Container, Cloud Stack und Microservices müssen zur Laufzeit geschützt werden. Wichtig: Die Fokussierung auf eine Komponente genügt nicht. Der Cloud Stack muss auf jeder Ebene (Host, Virtualisierungsschicht, Container, Anwendungen in den Containern, Microservice, Netzwerk) überwacht werden.

Fehlkonfigurationen innerhalb von Cloud Services bieten eine grosse Angriffsfläche

Schnell können scheinbar einfache Fehlkonfigurationen innerhalb von Cloud Services zu schwerwie-genden Auswirkungen führen. Ein Beispiel ist der Verlust von Schlüsseln und Tokens von 190’000 Konten durch den Docker Hub. Schuld war ein klassischer Cyberangriff, bei dem die Akteure schwache Sicherheitskonfigurationen des Schlüssel- und Token-Speichers innerhalb einer Cloud-Umgebung ausnutzten. Der Leak von über 13 Millionen Benutzerdatensätzen bei Ladders ist hier ein perfektes Beispiel für eine grundlegende Container-Fehlkonfiguration mit gravierenden Folgen.

Unit 42, das Forschungsteam unseres Partners Palo Alto Networks, untersuchte dazu mehrere Bereiche: Sowohl die Standardkonfigurationspraktiken innerhalb von Container-Plattformen und in der Public Cloud als auch die Offenlegung von Informationen, die in diesen Containern gefunden wurden. Die Ergebnisse wurden im Bericht «Misconfigured and Exposed: Container Services» zusammengefasst. Dieser liefert interessante Einblicke in falsch konfigurierte Container, Methoden zur Identifizierung von Diensten, die der Öffentlichkeit zugänglich sind und Massnahmen zum Schutz von Container-Diensten.

Wichtige Schritte zur Risikominimierung von Container-Diensten

Um die Sicherheit von Container-Plattformen insgesamt zu verbessern, schlägt der Bericht von Palo Alto Networks die folgenden Schritte vor:

  • Investieren Sie in Cloud-Sicherheitsplattformen oder Managed Services, die sich auf Container-Sicherheitsstrategien konzentrieren.
  • Beschränken Sie den Zugriff auf Dienste, die auf Containern für interne Netzwerke gehostet werden durch Firewall-Kontrollen oder Netzwerkrichtlinien für Containerplattformen. Die folgenden Links können den sicheren Zugriff auf Container erleichtern:
  • Legen Sie grundlegende Authentifizierungsanforderungen für Ihre Container fest. Die folgenden beiden Links enthalten hilfreiche Anweisungen, wie Sie eine grundlegende Authentifizierungspraxis für Docker oder Kubernetes einrichten können:
  • Identifizieren Sie die Art der Daten, die in den Containern gespeichert oder verwaltet werden. Verwenden Sie zudem geeignete Sicherheitsverfahren, um diese Datentypen sicher zu halten.
  • Die Compliance-Richtlinien Ihres Unternehmens helfen, die erforderlichen Schutzmassnahmen festzulegen.
  • Isolieren Sie die Dienste zu Ihren eigenen Containern. Hosten Sie nicht mehr als einen Dienst auf einem einzelnen Container. Dies wird die Ressourceneffizienz des Containers selbst verbessern und zur Umsetzung effektiver Sicherheitsrichtlinien beitragen.

Wenn Sie solche Cloud Services einsetzen, empfehlen wir Ihnen wärmstens, diese Schritte zu beherzigen. Damit schaffen Sie eine solide Grundlage, um Ihre Container-Plattforminfrastruktur vor Cyberangriffen zu schützen.

Twistlock zur Sicherung von Containern in der Transportindustrie und in der Cloud Security

infoguard-gizmodo-twistlockWie bereits erwähnt, sind Twistlocks Verriegelungen, die Container untereinander oder mit dem Trägerfahrzeug verbinden. Dabei werden die Twistlocks in die genormten Eckbeschläge der Container eingesetzt – oder anders ausgedrückt, werden die Container auf die am Fahrzeug fix befestigten Verriegelungen aufgesetzt. Dann wird ein Teil des Twistlocks um 90 Grad gedreht und dadurch eine form-schlüssige Verbindung hergestellt. Die Lösung von «Twistlock», unserem Partner im Bereich Cloud- und DevOps-Sicherheit, kann aber noch viel mehr!

Twistlock bietet einen integrierten Ansatz, um Container-Sicherheit zu gewährleisten und zu überwachen. Im Gegensatz zum traditionellen Vorgehen, klinkt sich Twistlock vollständig in die Continuous-Integration-Pipelines ein, zum Beispiel mit Jenkins, und interagiert nativ mit Docker oder Kubernetes. Das Twistlock-Framework ist eine Schwachstellen-Management-Suite für Container. Sie kümmert sich nicht nur um das Härten von Containern und Images, sondern auch um die Umgebung, in der die Container laufen. Konkret heisst das, dass Twistlock die Container auf Exploits sowie auf Anwendungs- oder Konfigurationsfehler untersucht und die Container-Aktivitäten überwacht. Dabei erkennt Twistlock Verstösse gegen Sicherheitsrichtlinien, meldet diese und greift bei Bedarf korrigierend ein. Wie Twistlock im Detail funktioniert, erfahren Sie in diesem Video.

Nachfolgende Tabelle zeigt die wesentlichen Features von Twistlock auf:

infoguard-twistlock-1

Automatisierung

Skaliert Sicherheit durch automatisches Erlernen (Baselining) des normalen Verhaltens einer Applikation, wozu auch die Kommunikation mit andern Cloud Services gehört. Basierend auf dieser Information werden «Allow Rules»-Laufzeitmodelle erzeugt. Zur Integration mit existierenden Tools stehen APIs bereit.

infoguard-twistlock-2

Sichtbarkeit

Twistlock stellt dynamische Ansichten bereit von Anwendungen, Komponenten und dem Sicherheitsstatus. Vulnerabilites und Compliance Issues werden bewertet. Jeder Host und Container verfügt über einen «Flugdatenschreiber» in Echtzeit.

infoguard-twistlock-3

Prävention

Twistlock ermöglicht automatisches Blocken von nicht-normalem Verhalten von Prozessen, Netzwerkverkehr und Aktivitäten auf Files zur Laufzeit gegenüber der Baseline. Es sind nur als Compliant eingestufte Anwendungen aus vertrauenswürdigen Quellen zugelassen. Twistlock setzt «Least Privilege» Networking und Micro-Segmentierung in Ihrer Umgebung durch und verhindert somit einen Wildwuchs an Service Accounts.

 

Twistlock unterstützt dabei eine breite Palette von Cloud-Plattformen wie AWS, Azure, Docker EE, Google Cloud Platform, IBM Cloud, Kubernetes, OpenShift, Pivotal und Rancher. Sie möchten mehr Details zu Twistlock? Hier finden Sie nochmals alle Informationen sowie Details zu den Features von Twistlock:

Twistlock Datasheet

 

Sie sehen: Twistlock ist nicht nur zur Sicherung beim Transport von Metallcontainern unerlässlich, sondern auch in der Cloud Security. Unsere Experten zeigen Ihnen gerne auf, wie Twistlock auf bei Ihnen eingesetzt werden kann:

Jetzt Offerte anfordern!

 


Bildquelle Twistlock Steps: https://gizmodo.com/the-simple-metal-mechanism-that-changed-the-global-econ-1530878459  

Artikel teilen