Applikationssicherheit Vier Erfolgsfaktoren für mehr Container-Sicherheit

Autor / Redakteur: Kimberly Craven * / Stephan Augsten

Die Container-Technologie beeinflusst, wie Unternehmen Applikationen entwickeln und betreiben. Als einer der zentralen Punkte im traditionellen Applikationslebenszyklus muss insbesondere die Container-Sicherheit umgesetzt werden.

Anbieter zum Thema

Red Hat bietet eine Reihe von Möglichkeiten, um die Einführung von Applikations-Containern im Unternehmen zu vereinfachen.
Red Hat bietet eine Reihe von Möglichkeiten, um die Einführung von Applikations-Containern im Unternehmen zu vereinfachen.
(Bild: Red Hat)

Applikations-Container lassen sich einfach zwischen Entwicklungs-, Test- und Betriebsumgebungen portieren. Somit versprechen sie einerseits eine schnellere und kostengünstigere Entwicklung. Auf der anderen Seite entstehen durch die zunehmende Verbreitung der Container in Unternehmen spezielle Herausforderungen.

Dies gilt insbesondere in Bezug auf die Sicherheit, wie eine von Red Hat bei Forrester Research in Auftrag gegebene Studie verdeutlicht: 53 Prozent der Entscheider aus den Bereichen IT-Betrieb und Softwareentwicklung nannten Sicherheitsbedenken als größtes Hindernis bei der Einführung von Applikations-Containern.

Vier wesentliche Erfolgsfaktoren können für mehr Container-Sicherheit sorgen:

1. Vertrauenswürdige Quellen verwenden

Deutlich mehr als 30 Prozent der offiziellen Images im Docker Hub enthalten einer Studie von BanyanOps zufolge Sicherheitslücken mit einer hohen Priorität. Eine Zertifizierung, beispielsweise in Form einer digitalen Signatur, erhöht das Sicherheitsniveau. Sie belegt, wer den Applikations-Container für welchen Zweck erzeugt hat.

Wer über einen Herkunftsnachweis für ein Kunstwerk oder eine Antiquität verfügt, kann seine Authentizität oder Qualität überprüfen. Ähnlich sollte es auch mit Applikations-Containern sein. Enthalten sie ungeprüfte Inhalte, kann das in einem Rechenzentrum einen weit größeren Schaden verursachen als ein gefälschtes Bild an der Bürowand.

Daher arbeiten Red Hat und andere führende Unternehmen aus der IT-Industrie an der Etablierung von Standards und Praktiken zur Zertifizierung. Diese stellen sicher, dass

  • alle Komponenten aus einer vertrauenswürdigen Quelle stammen,
  • die Container-Hosts nicht manipuliert wurden und auf dem neuesten Stand sind,
  • das Container-Image bezüglich der Plattformkomponenten und der -Layer keine bekannten Sicherheitslücken aufweist,
  • die Applikations-Container untereinander kompatibel sind und in zertifizierten Host-Umgebungen eingesetzt werden können.

2. Inhalte der Applikations-Container prüfen

Die Verifizierung der Herkunft eines Applikations-Containers ist ein guter Anfang, aber die Überprüfung der Inhalte ist fast noch wichtiger. Ähnlich wie Deep Packet Inspection die Netzwerkpakete im Hinblick auf gefährliche Inhalte analysiert, untersucht Deep Container Inspection (DCI) den Content von Containern. Diese Funktionalität ist unerlässlich. Denn der Einblick in den Programmcode spielt eine entscheidende Rolle für hohe Sicherheit während der Entwicklung und beim Betrieb.

3. Container voneinander isolieren

Haben Unternehmen Applikationen auf Basis vertrauenswürdiger Herkunft gebaut, müssen sie als nächstes sicherstellen, dass sich die Container-Images auf demselben Host nicht gegenseitig beeinträchtigen. Fakt ist, dass Applikations-Container die „verpackten“Anwendungen nicht von Haus aus absichern – im Unterschied etwa zu einem Geldtransporter, der die Scheine und Münzen physisch schützt.

Ein Applikations-Container macht zunächst einmal nichts anderes, als den Programmcode zusammen mit dessen Laufzeitabhängigkeiten in einem Paket zu verschnüren. Da die Applikations-Container über keine gesicherten „Außengrenzen“ verfügen, können bösartige Inhalte von einem Container zum nächsten und von dort bis zum Host-Betriebssystem vordringen. Jeder in einem Container laufende Prozess hat direkten Kontakt zum Host-Kernel, der damit zum Single-Point-of-Failure wird.

Eine Sicherheitslücke im Linux-Kernel ermöglicht im schlimmsten Fall einem Angreifer, das Host-Betriebssystem und alle darauf laufenden Container zu übernehmen. Daher ist es wichtig, das Host-Betriebssystem regelmäßig mit den neuesten Sicherheitsupdates zu aktualisieren. Zudem sollte der Kernel über Funktionalitäten verfügen, die einen angemessenen Umfang von Isolation und Abgrenzung bieten, so wie das etwa SELinux, Seccomp oder Namespaces tun.

4. Container-Sicherheit ist eine kontinuierliche Aufgabe

Selbst wenn ein Container-Image bei seiner Erstellung und der Übergabe in den produktiven Betrieb nachweislich sicher ist, muss dies nicht automatisch auch im weiteren Verlauf seines Lebenszyklus so sein. Das gilt allein schon deshalb, weil sich die Bedrohungslage ständig ändert und nahezu täglich neue Sicherheitslücken entdeckt werden.

Ein Container-Image ist nur so sicher wie der Programmcode und die Laufzeitabhängigkeiten. Red Hat beispielsweise hat in etwas weniger als einem Jahr in der Java-Runtime-Umgebung 66 kritische, wichtige und moderate Sicherheitslücken entdeckt und geschlossen.

Oft wird behauptet, dass sich durch die Container-Technologie die Spielregeln bei der Verwaltung und Implementierung verteilter Applikationen grundlegend geändert haben. Richtig ist vielmehr, dass ebenso wie alle anderen verteilten Anwendungen auch Applikations-Container nicht nur einmal installiert, sondern über den gesamten Lebenslauf betreut werden müssen. Unternehmen sollten dafür Regeln aufstellen, um beispielsweise Versionierung und Upgrades, Identitäts- und Zugriffsmanagement oder Performance und die Sicherheit zuverlässig überwachen und steuern zu können.

Auch wenn Geschwindigkeit und Agilität die wichtigsten Gründe für die Einführung von Container-Technologie im Unternehmen sind – das darf nicht zu Lasten der IT-Sicherheit gehen. Darum sollte eine unternehmensweite Deep Container Inspection, kombiniert mit Zertifizierung, klaren Regeln und Maßnahmen zur Vertrauensbildung, zu einem integralen Bestandteil bei der Entwicklung, Implementierung und Verwaltung von Applikations-Containern werden.

* Kimberly Craven ist Senior Manager, Platforms and Containers bei Red Hat.

(ID:44401364)