Anmelden


Herausforderung Container-Sicherheit: Komplexität beherrschen durch Machine Learning

Container bündeln Betriebssysteme, Applikationen und Konfigurationsdateien in einem einzigen Image, das sich schnell verteilen und bei Bedarf austauschen lässt. Containerisierte Applikationen sind portabel und können auf fast beliebigen Host-Systemen in der Cloud und On-Premise ausgeführt werden. Mehr als zwei Drittel der IT-Verantwortlichen in Deutschland sind daher überzeugt, dass Container-Technologie zu einem festen Bestandteil ihrer Applikationsentwicklung und Bereitstellung wird, so das Ergebnis einer Studie von Techconsult aus dem Jahr 2020.*

Aber der enorme Geschwindigkeits- und Flexibilitätsgewinn der Applikationsentwicklung bedeutet für die IT-Sicherheit einen weiteren Kontrollverlust. Mit vorhandenen Mitteln ist bereits die Komplexität von Hybrid- und Multi-Cloud-Umgebungen kaum zu beherrschen. Container drehen die Komplexitätsspirale jetzt noch weiter und die nächste Generation von Technologien wie Serverless verbreitet sich schnell. Management und Entwicklungsteams drängen auf Tempo, während die IT-Sicherheit auf die Bremse treten muss, um ihre Aufgabe zu erfüllen. In dieser Situation suchen sich Entwicklungsteams vermeintliche Abkürzungen. Eine unkontrollierte Schatten-IT entsteht, die wiederum zu neuen Bedrohungen führt.

Sicherheit am Wendepunkt

Was sind die Ursachen für diese immer stärker hervortretenden Schwierigkeiten der IT-Sicherheit in der neuen Welt der Cloud und Container? Einerseits fehlen schlicht Fachkräfte, die über das erforderliche, hoch spezialisierte Cloud- und Security-Know-how verfügen. Andererseits sind die vorhandenen Sicherheitswerkzeuge meist nicht Cloud-nativ, d.h. sie stammen aus einer Zeit klar definierter Perimeter und deutlich weniger dynamischer Umgebungen. Obwohl sich viele Hersteller bemühen, ihre etablierten und langjährig bewährten Produkte an die Cloud anzupassen, treten die Grenzen des Machbaren hervor:

  • Container und Microservices werden on-demand gestartet und sind oftmals wenige Stunden oder sogar nur Minuten aktiv. Sicherheitsrelevante Zusammenhänge, die nicht innerhalb dieses kurzen Zeitfensters erfasst wurden, gehen verloren. Die Dynamik macht es zudem sehr schwer, die Kommunikation zwischen Containern durch Firewall/Networking-Regeln zu erfassen.
  • Punktlösungen generieren eine Vielzahl von Alarmen bieten keine übergreifende Perspektive. Informationssilos verhindern die Kontextualisierung von Events. Angesichts der unzähligen Interdependenzen kann von Sicherheitsverantwortlichen nicht erwartet werden, Daten aus verschiedenen Konsolen manuell zu einem Gesamtbild zusammenzusetzen.
  • Herkömmliche Sicherheitsarchitekturen sind für bestimmte Aspekte der Container-Kommunikation blind: So lassen sich zum Beispiel Network Intrusion Detection Systeme gut nutzen, um den ein- und ausgehenden Datenverkehr zu AWS EC2 Instanzen zu überwachen. Der Datenverkehr zwischen Containern auf derselben EC2 Instanz bleibt hingegen völlig unsichtbar.

Diese Probleme können nicht einfach durch Investitionen in weitere regelbasierte Werkzeuge oder zusätzliche IT-Mitarbeiter gelöst werden. Vor diesem Hintergrund wächst das Interesse an Machine-Learning- und KI-gestützten Ansätzen, die Sicherheit im Takt der Cloud bei reduziertem Aufwand versprechen.

Neuer Ansatz: Verhaltensbasierte Sicherheit

Verhaltensbasierte Sicherheit nutzt Machine Learning, um zunächst selbständig den Normalzustand (die Baseline) der Cloud- und Container-Umgebung zu erlernen. Ausnahmslos alle Aktivitäten von Containern, Applikationen, Anwendern und anderen Cloud-Komponenten werden aufgezeichnet und automatisch analysiert. So entsteht eine permanent aktualisierte Baseline, vor der sich verdächtige Anomalien deutlich abheben, auch wenn gar nicht gegen eine konkrete Sicherheitsregel verstoßen wird.

Die hierzu erforderliche Technologie wurde erstmals 2015 unter dem Namen „Polygraph“ vom amerikanischen Cloud-Security-Anbieter Lacework auf dem Markt eingeführt. Investoren zeigen sich vom Marktpotenzial überzeugt, sodass der Hersteller in einer jüngsten Finanzierungsrunde über eine halbe Milliarde US-Dollar verbuchen konnte. Um ein vollständiges Bild aller Vorgänge zu ermöglichen, konzentriert sich das Monitoring auf laufende Prozesse, die laut Lacework eine ideale Analyseeinheit darstellen:

  • Validierbar: Jeder Prozess ist mit einer bestimmten Binärdatei verbunden, die einen spezifischen SHA-256 Hash hat.
  • Nachverfolgbar: Prozesse werden von Anwendern, Applikationen oder anderen Prozessen gestartet. Diese Startumstände können nachverfolgt werden.
  • Vorhersagbar: Prozesse haben ganz bestimmte Command Lines, Zwecke und Lebenszyklen.
  • Unumgänglich: Prozesse sind verantwortlich für die gesamte Kommunikation. Nur Prozesse sprechen miteinander und mit externen Hosts im Internet.

Das Monitoring umfasst Prozesshierarchien, Prozesse/Machine-Kommunikation, Änderungen an Anwender-Privilegien, interne und externe Datentransfers sowie alle anderen Aktivitäten. Um Anomalien zu identifizieren, wird das aktuelle Verhalten eines Containers (oder einer anderen Entität) mit seinem aus der Vergangenheit bekannten Verhalten verglichen. Darüber hinaus erfolgt ein Abgleich mit dem Verhalten der Peer-Gruppe, in der sich andere Container befinden. Polygraphen beantworten also zwei Fragen: Verhält sich dieser spezielle Container wie gewohnt? Und verhält er sich wie ähnliche Container? Das ermöglicht einen neuen Praxisansatz für zentrale Herausforderungen der Cloud- und Container-Sicherheit.

Kontrolle von Images und Registry

Entwickler nutzen oftmals Container-Images aus öffentlichen Quellen als Grundlage ihrer Arbeit. Hier können sich Malware oder Anweisungen zum Malware-Download einschleichen. Häufig entstehen außerdem Sicherheitsrisiken, wenn die in Containern enthaltenen Applikationen Schwachstellen aufweisen oder Standardkonfigurationen übernommen werden. Images werden zudem zentral über eine Registry bereitgestellt und verwaltet. Gelingt Angreifern der Zugriff auf diese Registry, ist meist eine Manipulation der Inhalte möglich.

Das Problem ist die Multiplikation: Ein einziges kompromittiertes Image verursacht überall dort Probleme, wo es eingesetzt wird. Beim Monitoring auf Prozessebene werden neu eingeführte Dateien, Hash-Werte und alle anderen Änderungen im Zeitverlauf erfasst. Die Hash-Checksummen werden kontinuierlich mit einer kuratierten Datenbank abgeglichen. Bei einer erkannten Bedrohung erhalten Sicherheitsverantwortliche so die erforderlichen Informationen, um Bedrohungen nicht nur in einem, sondern in allen betroffenen Containern einzudämmen.

Schutz von Orchestratoren

Orchestratoren wie Kubernetes oder Docker Swarm ermöglichen ein effizientes Container-Management. Die Web-Oberflächen dieser Plattformen sind über öffentliche IP-Adressen erreichbar und in zu vielen Fällen ungeschützt: 2018 entdeckte Lacework mehrere Hundert Interfaces im Internet, die keine Credentials erforderten. Unbefugte hätten kompletten Zugriff auf die Containerverwaltung, auch eine Remote Code Execution wäre über API und User Interface möglich.

Auf der Orchestrierungsebene ermöglicht das Prozess-Monitoring den Blick in Kubernetes-Cluster sowie in die Kommunikation zwischen Clustern. Visualisierungen gehen bis auf Namespace- und Pod-Level. Offene und ungeschützte API-Server oder Management-Konsolen sowie unerwartete Verbindungsversuche dorthin werden als Abweichungen von der Baseline erkannt.

Sichtbarkeit der Vorgänge

Zur Erfüllung ihrer Aufgaben müssen Container untereinander kommunizieren. Prozess-Monitoring erfasst die Gesamtheit dieser Kommunikation, auch wenn sie zwischen Containern auf demselben Host oder innerhalb einer Datei stattfindet. Das ist ein wesentlicher Unterschied zum bekannten Traffic-Monitoring auf Networking-Ebene. Die Logs bleiben zudem bestehen, auch wenn ein Container bereits nach ein paar Minuten wieder gelöscht wird. Sicherheitsverantwortliche können somit Angriffe oder andere Anomalien auch in dynamischen Umgebungen zu ihrem Ursprung zurückverfolgen.

Automatisierung der Sicherheit

In Container-Umgebungen ist es Sicherheitsteams nicht mehr möglich, alle aktuellen Container-Prozesse zu überwachen und zielgenaue Regeln zu definieren, um unnötige oder bösartige Vorgänge aufzuspüren. Der automatisierte Abgleich mit dem bekannten Container-Verhalten und dem Kontext der Peer-Analysegruppe identifiziert bekannte und unbekannte Bedrohungen sowie Anomalien, wenn ein Anwender zum Beispiel plötzlich Root-Privilegien erhält oder eine Container-Applikation unerwartet viele Verbindungen zu neuen APIs startet. Weil die Technologie den Normalzustand kennt, kann sie zudem viele reguläre Aktivitäten im Cloud-Datacenter als Bedrohung ausschließen. Das reduziert die Zahl der False Positives und Alarme.

Unternehmen setzen auf Cloud & Container für mehr Flexibilität und Geschwindigkeit. Von der IT-Sicherheit wird erwartet, diese Entwicklung nicht zu behindern, sondern aktiv zu unterstützen – ohne Kompromisse beim Schutz einzugehen. Dieser Spagat kann nur noch durch einen hohen Grad an Automatisierung und maschineller Intelligenz gelingen, denn ein Ende der Komplexitätsspirale ist nicht abzusehen.

 

*Techconsult im Auftrag von Cronon, „Container in der IT und ihr Potenzial in deutschen Unternehmen“, 2020

Autor: Bernd Mährlein, Area Director Central Europe bei Lacework