Container Security

  • Fabian Sinner
  • Mai 5, 2023

Inhaltsverzeichnis

    Container Security

    Container Security: Worauf kommt es an?

    Container Security schützt die agile Gestaltung von Prozessen und die Vereinfachung der Bereitstellung von Anwendungen. Diese Aspekte sind oft einem hohen Risiko von Cyber-Attacken ausgesetzt. In der Entwicklung stehen Schnelligkeit und ausreichende Sicherheit häufig im Konflikt miteinander.

    Warum ist Container Sicherheit problematisch?

    Die Technologie von Containern ist der Grundstein, um Agilität in der Entwicklung zu gewinnen. Je schneller eine Anwendung gelauncht werden kann, desto schneller kann sie (profitabel) genutzt werden. Genau diese neue Geschwindigkeit geht oft auf Kosten der nötigen Sicherheit. Ohne fehlenden Schutz sind Container jedoch sehr anfällig für Cyber-Angriffe.

    Die Schwachstellen eines einzelnen Containers können dabei noch weitreichendere Konsequenzen haben: Wenn mehrere Container auf einem Server angesiedelt sind, öffnet die Sicherheitslücke eines Containers im schlimmsten Fall den Zugang zu allen weiteren Elementen, die die Schlüsselressourcen des infizierten Containers teilen. Das schwächste Glied im Zusammenschluss entscheidet also über die gesamte Sicherheit.

    Welche Cyber-Attacken zielen auf Container ab?

    Über eine Schwachstelle im Container können sich verschiedene Typen von Malware Zugang zum Server verschaffen. Meistens wird durch schädlichen Code der Zugriff zu Container A ermöglicht, um dann weiter ins System vorzudringen.

    Das Ziel der Malware-Verbreiter ist es, sensible Daten abzugreifen oder Funktionen zu manipulieren. Ein solches Datenleck kann schwere Schäden für die Reputation oder sogar Strafgelder nach sich ziehen, wenn die Vorgaben des IT-Sicherheitsgesetzes oder der Datenschutzgrundverordnung missachtet wurden.

    Container Security in der Entwicklungsphase

    Den berüchtigten Warnschuss gibt es beim Thema Container-Sicherheit nicht. Einmal kompromittiert ist es bereits zu spät. Sobald ein neuer Container verwendet wird, muss seine Sicherheit Angriffen standhalten. Genau aus diesem Grund sollte die Container Security ein integraler Bestandteil der Entwicklung sein.

    Grundregeln für die Container Security

    1. Absicherung des Containers in Entwicklungsphase aufnehmen
    2. Häufige, bereits bekannte Schwachstellen recherchieren
    3. Individuelle Risiken des Containers definieren
    4. Maßnahmen zur Container-Sicherheit durchführen (bekannte und erwartete Schwachstellen)
    5. Vorgaben für ein Monitoring entwickeln
    6. Regelmäßiges Patching durchführen

    Container Security in der Anwendungsphase

    Herkunft der Images prüfen

    Entscheidend für die gesamte Sicherheit sind die Container Images, insbesondere der Basis Images. Überprüfen Sie deshalb die Herkunft der Quelle sehr genau und nutzen Sie nur Images aus vertrauenswürdigen Quellen mit Signatur.

    Systeme des Container-Host updaten

    Sicherheitslücken im Betriebssystem sind einfach zu vermeiden, indem regelmäßige Aktualisierungen durchgeführt werden. So werden Patches eingespielt und veraltete Kernels auf den neuesten Stand gebracht. Richten Sie eine jour fixe oder sogar heure fixe ein, in der Sie auf neue Updates prüfen und diese durchführen!

    Container-Gruppierungen vornehmen

    Wenn neue Sicherheitsprobleme auftauchen, muss es schnell gehen. Daher ist es besonders wertvoll, alle Container anhand ihrer potenziellen Risiken zu gruppieren. So kann im Fall der Fälle schneller agiert werden.

    Genau diese zusätzliche Zeit, die Sie brauchen, um alle Container zu identifizieren, die betroffen sein könnten, geht auf das Konto Cyber-Krimineller. Erstellen Sie Risikoprofile für alle bestehenden und neuen Container anhand der definierten Risiken in der Entwicklungsphase.

    Kommunikation und Ressourcen beschränken

    Um den Container vor DoS- und DDoS-Angriffen zu schützen, ist es sinnvoll, den Zugriff auf den Container individuell zu konfigurieren, zu beschränken oder komplett zu deaktivieren. Das schließt den Zugriff von Ressourcen, externen Anwendungsdiensten, aber auch die Kommunikation via Internet ein. Identifizieren und kappen Sie unnötige Kommunikationspfade, um die Sicherheit des Containers zu erhöhen.

    Sichere Repositories nutzen

    Container Images bieten eine große Angriffsfläche, wenn sie aus nicht sicheren Quellen stammen. Nutzen Sie deshalb nur Ressourcen aus bekannten Quellen, z. B. denen des Container-Anbieters oder anderen zertifizierten Anbietern.

    Container Security Scans durchführen

    Neben Patches sollte eine proaktive Suche nach neuen Schwachstellen in regelmäßigen Abständen durchgeführt werden. Der Hintergrund: Wenn eine neue Sicherheitslücke vom Anbieter entdeckt und gepatcht wird, ist dies für einige Nutzer bereits zu spät. Das Image Scanning kann mithilfe von Tools der Container-Hosts vereinfacht werden.

    Container Security Infrastruktur bewahren

    Container sollen voneinander getrennt und isoliert bleiben. Wie diese Isolierung funktioniert, entscheidet das Betriebssystem des Container-Hosts. Ist die Isolierung nicht stabil, spricht man von Breakouts. Dabei greifen Container unberechtigt auf andere Container oder das Host-System zu. Nötige Abgrenzungen werden durch Namespaces geschaffen.

    Wo liegen die Herausforderungen der Container Security?

    Open-source Code

    Bei der Entwicklung von Anwendungen und Containern wird Entwickler-Teams häufig open-source Code zur Verfügung gestellt. Dies hat den Vorteil, dass die Weiterentwicklung beschleunigt wird.

    Problematisch ist jedoch die Vertrauenswürdigkeit: Wenn Dateien oder Bilder aus einem open-source Repository bereits Schwachstellen oder sogar schädlichen Code enthalten, ist die Sicherheit vom ersten Schritt an beeinträchtigt. Docker und Kubernetes sind die beiden bekanntesten Software-Anbieter für open-source Container-Technologie.

    Patch Management

    Die Hersteller der Container-Software bieten in regelmäßigen Abständen Patches für bekannte Sicherheitslücken an. Leider sind genau diese regelmäßigen Updates ein zweischneidiges Schwert: Nach der Veröffentlichung sind nicht nur Nutzer alarmiert, sondern auch Cyber-Kriminelle.

    Unmittelbar nach Bekanntmachung tut sich ein Zeitfenster auf, diese neue Schwachstelle auszunutzen, bevor sie bei den Anwendern gepatcht wurde. Entwickler müssen daher sicherstellen, dass neue Patches möglichst schnell nach ihrer Veröffentlichung angewendet werden.

    Dabei ist das übliche Patch Management nicht immer auf containerisierte Anwendungen übertragbar und kann oft nicht so schnell wie gewohnt durchgeführt werden.

    Root-Rechte des Container-Hersteller

    In vielen Fällen benötigt die verwendeten Container-Technologie umfassende Zugriffsrechte zum Container. Das heißt, zur Verwaltung der Container-Dienste über eine Schnittstelle müssen dem Provider Root-Rechte gewährt werden.

    Wer Zugriff auf diese Administrationsebene erhält, muss daher sehr genau kontrolliert werden. Außerdem wird die Schnittstelle zum Container zu einem potenziellen Angriffspunkt, den die Entwickler nicht selbständig absichern können.

    Gezielte Angriffe auf Container Security

    DDoS-Angriffe, Cross-Site-Scripting und malware-verseuchte Container sind allesamt Gefahren für die Sicherheit von Containern. Je mehr Kommunikationsschnittstellen und Zugriffsberechtigte Container haben, desto größer ist die Angriffsfläche für Cyber-Kriminalität. Vorsorge im Bereich der Container Security ist daher kein Luxus, sondern unabdingbar.

    Container-Sicherheit ist planbar

    Die Technologie von Containern ist ein absoluter Gewinn für die Entwicklung. Leider bergen Flexibilität und Geschwindigkeit, die Unternehmen durch ihre Nutzung erreichen, auch viele Gefahren. Ein Schritt nach vorne im Bereich der Schnelligkeit bedeuten leider allzu oft zwei Schritt nach hinten in Sachen Sicherheit.

    Wer Container Security von Anfang an priorisiert und Sicherheitsmaßnahmen auf jeder Ebene (Entwicklung, Bereitstellung, Einsatz) etabliert, kann die Risiken deutlich senken. Anbieter wie Docker und Kubernetes bieten eigene Sicherheitslösungen an, die noch durch individuelle Protokolle ergänzt und erweitert werden sollten.

    So individuell, wie Sie die Technologie verwenden, so einzigartig sind auch die Kriterien für ein passendes Sicherheitskonzept.

    Teil 2: Welche Kosten verursacht eine DDoS-Attacke?
    Neuer DDoS-Report für das 1. Halbjahr 2022
    X