zurück zur Übersicht

Sprung zu Containern, Sturz in Unsicherheit?

Warum gewinnen Container an Bedeutung?

Container sind ein weiterer Schritt auf dem Weg zu autonomen, skalierbaren und isolierten Komponenten. So kann eine moderne Anwendung als ein Netz unabhängiger Microservices dargestellt werden, in der jeder Microservice in einem Container läuft. Was sich am Anfang als modernes Practice in Software Continuos Deployment durchgesetzt hat, wird heute auch in anderen IT Bereichen verwendet.

Bei Container wird stark auf Automatisierung gesetzt und das bietet auch eine gute Gelegenheit für die Sicherheit, früh und transparent mit einzusteigen.

Container bringen schon mit sich konzeptuelle Sicherheitsvorteile:

  • Bessere Isolierung zwischen den Anwendungen und dem Betriebssystem
  • Container haben in der Regel niedrige Privilegien auf dem System
  • Gelegenheit, dem “Secure-by-default” Prinzip zu folgen – wenn die gepackten Anwendungen am Anfang sicher konfiguriert werden

Neue Container – neue Risiken?

Welche Risiken sind mit dem Einsatz von Containern verbunden? Während neue Technologien einen Sprung nach vorn anbieten, verbergen sie meistens gleichzeitig eine Kombination von alten und neuen Risiken. Welche Phasen im Leben eines Container sind dadurch betroffen?

  • Erzeugung der Container Images

Container Images Repository, die Basis für laufenden Container sind, muss abgesichert sein und es sollten nur sichere und saubere Images zur Verfügung stehen. Zwei Schwachstellen in einem Image würden sich bei großer Anzahl laufender Container vervielfältigen. Die Vernunft sagt, dass beim Bauen eines Images alle Komponenten auf ihre Sicherheit geprüft werden müssen. Nachdem eine neue Schwachstelle entdeckt ist, sollte ein neues Container Image gebaut werden, statt die existierienden Container zu patchen. Ein weiterer Aspekt ist die Image-Signierung, sodass sichergestellt werden kann, dass Images von einer vertrauenswürdigen Quelle erzeugt wurden. Beim Anlegen von Private Container Registry muss ein vernünftiges Berechtigungskonzept entwickelt werden – wer darf die Images erzeugen, anpassen, ziehen usw.

  • Konfiguration von Containern

Container benötigen sichere Konfiguration: Container Technologien wie Docker, LXC, CoreOS haben unterschiedliche Sicherheitskonzepte und vorkonfigurierte Einstellungen. Welche System Calls sind erlaubt? Welche Rechte auf dem Host hat der Container? Können Container miteinander kommunizieren und wie? Konfigurationsrichtlinien in Form einer Policy sollten am Anfang auch mit dem IT-Security Team besprochen werden.

  • Echtzeit-Übersicht über Container

Das Risiko, keinen zentralen Überblick über laufende Container und deren Konfiguration zu haben, ist für alle Beteiligten, egal ob IT oder Fachabteilung, groß. Container Management Plattformen erhöhen die Effizienz und vermindern Fehlerhaftigkeit in dem Container Lifecycle Prozess. Wenn eine neue Schwachstelle entdeckt oder behoben wird, sollten die ensprechenden Images angepasst werden und die betroffenen Anwendungen neu deployed werden, am besten automatisiert jedoch ohne Downtime in Produktion.

  • Container Runtime Security

Wie wird es erkannt, wenn Änderungen an dem laufenden Container gemacht wurden oder wenn die ersten 3 Phasen in dem Container nicht alle sicherheitsrelevante Probleme gefangen haben? Container Scanning ist ein sinnvolles Element in regelmäßigen Vulnerability Scans. Des Weiteren kann eine unterliegende Lösung das Verhalten von Containern überwachen.

Auf dem Weg zu sicheren Containern

Vulnerability Scanning ist ein unabdingbarer Schritt im Schwachstellenmanagementsprozess. In diesem Kontext handelt es sich um Unterstützung in den ersten zwei und der letzen Phase im Lebenszyklus eines Images und Container – ja, sowohl die Images als auch laufende Container können gescannt werden. Selbstverständlich ist das Container Scanning nicht das einzige Bauelement in der Absicherung dieser Komponenten – das erfordert einen reifen Prozess mit einem praktikablen Konzept, der als Basis für alle technischen Maßnahmen dienen kann.

Beim Scanning steht Image Scanning im Vordergrund, weil dies der erste Moment in dem Prozess ist, wenn ein Element auf Sicherheit geprüft werden kann und daher der richtige Zeitpunkt noch vor dem Deployment. Später in dem Lebenszyklus durchgeführtes Container Scanning und Runtime-Überwachung sind ergänzende Mechanismen.

Ein Scan kann bei Erstellung eines neuen Images automatisch getriggert werden. Es werden dabei die verwundbaren Komponenten und unsichere Konfiguration geprüft. Einige Scanner sind in der Lage, auch den Quellcode zu scannen um Malware zu finden. Es ist zu beachten, dass nur das Scanning von Images bzw. Containern nicht ausreicht; Hosts auf denen die Container deployed werden, müssen auch einen hohen Sicherheitsgrad erreichen. Von Vorteil ist also, wenn ein Scanner alle Schichten abdecken und korrelieren kann.

Wir werden uns diesem Artikel nicht mit Anforderungen an einen Scanner beschäftigen, jedoch eine sehr wichtige Erwartung von den DevOps Teams lautet: gute und einfache Integration mit den bestehenden Continuous Integration/Deployment Prozessen und Landschaft.

Einige Tools, die in letzten 2 Jahren als reine Container Scanners konzipiert wurden, haben sich mittlerweile zu den Full-Security-Plattformen entwickelt. Mit diesen Lösungen können Container in ihrem ganzen Lebenszyklus überwacht, geprüft und auditiert werden. Welche zusätzlichen Features bieten sich in der Regel an?

  • Runtime Überwachung und Schutz

Verhaltensbasierende Anomalien in und von Containern werden erkannt, geloggt oder sogar geblockt. Die erwartete Konfiguration wird geprüft. Die Logs können an die SIEM Systeme geleitet werden.

  • Zugriffskontrolle

Feinkörniges Zugriffskonzept und Nachvollziehbarkeit, wer in dem Container was gemacht hat.

SecureLink Deutschland nimmt das Thema Container Security ernst und so kann es dieses Jahr bei unserer Veranstaltung Detect & Defect 2018 im März nicht fehlen. Eine Übersicht zu weiteren interessanten Themen finden Sie hier.

 


Weitere Links:

https://www.infoworld.com/article/3104030/security/5-keys-to-docker-container-security.html

https://www.cisecurity.org/benchmark/docker/

http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-190.pdf

 

 

 

Schreibe einen Kommentar

Wir nehmen Datenschutz ernst! Deshalb informieren wir Sie, was mit Ihren Daten geschieht:

  • Daten aus Formularen und Webseiten-Tracking können von uns zur Analyse gespeichert werden
  • Die Daten können zur Optimierung der Webseite ausgewertet werden. Das ermöglicht es uns, besser zu verstehen, wo das Interesse unserer Besucher liegt. Wir benutzen primär Hubspot für dieses Tracking (mehr dazu finden Sie in der Erklärung auf unserer Datenschutzseite, siehe unten)
  • Wir geben Ihre Daten nicht an Dritte weiter. Im Rahmen von Veranstaltungen, an denen Sie teilnehmen möchten, kann es nötig sein, dass Ihre Daten an Vertragspartner übermittelt werden.
  • Sie haben jederzeit ein Recht auf die Herausgabe, Berichtigung oder Löschung persönlicher Daten.
  • Sie können Ihre Einwilligung, mit uns in Kontakt zu treten, jederzeit mit sofortiger Wirkung widerrufen.

Weitere Details dazu, was wir mit den Daten tun und nicht tun finden Sie auf unserer Datenschutzseite, oder schreiben Sie mich bei Fragen direkt an!

Felix Möckel
Data Protection Officer