Containersicherheit

Schutz und Sicherheit für Ihre Containerumgebung auf der GCP, in GKE oder Anthos

Übersicht

Die Containerisierung ermöglicht Entwicklerteams ein schnelles Arbeiten, um Software effizient und in nie gekanntem Umfang bereitzustellen. Unternehmen erstellen immer mehr Containerarbeitslasten. Diese müssen in jeder Phase des Erstellungs- und Bereitstellungszyklus geschützt werden. Wir zeigen, wie Sie Ihre auf der GCP – egal ob in Google Kubernetes Engine oder Anthos – ausgeführten Containerumgebungen in drei wichtigen Bereichen schützen können.

Sichere Infrastruktur

Unter Infrastruktursicherheit verstehen wir eine Plattform zur Containerverwaltung mit genau den passenden Sicherheitsfeatures. Kubernetes beinhaltet Sicherheitsfeatures zum Schutz Ihrer Identitäten, Secrets und Netzwerke. Google Kubernetes Engine verwendet native GCP-Features, wie Cloud IAM, Cloud-Audit-Logging und Virtual Private Clouds, sowie GKE-spezifische Features wie die Verschlüsselung von Secrets auf der Anwendungsebene und Workload Identity, um Ihre Arbeitslasten mit den aktuellen Sicherheitsfeatures von Google zu schützen.

Softwarelieferkette

Durch den Schutz der Softwarelieferkette können Container-Images sicher bereitgestellt werden. Dadurch sorgen Sie dafür, dass Ihre Container-Images frei von Sicherheitslücken sind und die erstellten Images ohne Veränderungen bereitgestellt werden.

Laufzeitsicherheit

Dank Laufzeitsicherheit können Sie Container, die bösartiges Verhalten zeigen, in der Produktion erkennen und Maßnahmen zum Schutz Ihrer Arbeitslast ergreifen.

Container machen ein gänzlich neues Sicherheitsmodell möglich

Vereinfachte Patchverwaltung und Unveränderlichkeit

Vereinfachte Patchverwaltung und Unveränderlichkeit

Container sind immer unveränderlich. Wenn Sie Änderungen vornehmen möchten, stellen Sie also ein neues Image bereit. Sie können die Patchverwaltung durch regelmäßiges Erstellen neuer Images vereinfachen. Der Patch wird dann bei der nächsten Containerbereitstellung eingebunden. Regelmäßige Sicherheitsprüfungen der Images sorgen für eine umfassende Übersicht über Ihre Umgebung.

Reduzierte Angriffsfläche

Reduzierte Angriffsfläche

Container können im Vergleich zu VMs auf einem erheblich kleineren Hostbetriebssystem ausgeführt werden, da die Anwendungspakete an sich umfangreicher sind. Durch dieses minimale Hostbetriebssystem reduziert sich die potenzielle Angriffsfläche Ihrer Arbeitslast.

Ressourcen und Arbeitslasten isolieren

Ressourcen und Arbeitslasten isolieren

Mit Containern können Sie Ressourcen wie Speicher-Volumes ohne großen Aufwand mit cgroups und Namespaces für bestimmte Prozesse isolieren. Dank Technologien wie GKE Sandbox lassen sich Arbeitslasten logisch in einer untergeordneten VM-Sandbox isolieren, sodass sie von anderen Anwendungen getrennt sind.

Sichere Infrastruktur

Eine sichere Containerinfrastruktur sorgt dafür, dass Ihre Entwickler die erforderlichen Tools für eine sichere Erstellung von containerisierten Diensten haben. Diese Funktionen sind in der Regel in einen Container-Orchestrator wie Kubernetes eingebunden. Wenn Sie Google Kubernetes Engine verwenden, können Sie auf diese Features nativ zugreifen und noch weitere Features von Google Cloud nutzen.

Identität und Autorisierung

In Google Kubernetes Engine können Sie den Zugriff auf Ihre Projekte mit Cloud IAM organisieren. Zur Verwaltung des Zugriffs auf Cluster und Namespaces verwenden Sie die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC).

Audit-Logging

In Kubernetes werden API-Audit-Logs automatisch aufgezeichnet. In Google Kubernetes Engine werden API-Audit-Logs durch Cloud-Audit-Logging automatisch für Sie aufgezeichnet.

Netzwerk

Erstellen Sie in Google Kubernetes Engine eine Netzwerkrichtlinie, um die Kommunikation zwischen Pods in Ihrem Cluster zu verwalten. Für private IP-Adressen verwenden Sie private Cluster. Google Kubernetes Engine-Ressourcen stellen Sie in einer freigegebenen VPC zur Verfügung.

Compliance

Google Kubernetes Engine bietet zahlreiche Compliance-Zertifizierungen, einschließlich ISO 27001, ISO 27017, ISO 27108, HIPAA und PCI-DSS.

Minimales Hostbetriebssystem

Google Kubernetes Engine nutzt standardmäßig Container-Optimized OS (COS), ein speziell für die Containerausführung erstelltes und optimiertes Betriebssystem. COS wird von Google als Open-Source-Lösung bereitgestellt.

Automatisch aktualisierte Komponenten

In GKE werden Master automatisch mit Patches auf die neueste Kubernetes-Version aktualisiert. Durch automatische Knotenupgrades können Sie die Sicherheit auf dem aktuellen Stand halten. Die neuesten Patches werden dabei automatisch auf Ihre Knoten angewendet.

Vom Kunden verwaltete Verschlüsselungsschlüssel

Nutzer in regulierten Branchen müssen möglicherweise Kontrolle über die Schlüssel haben, mit denen die in GKE gespeicherten Daten verschlüsselt werden. Mit vom Kunden verwalteten Verschlüsselungsschlüsseln können Sie Ihren nichtflüchtigen Speicher in GKE mit einem Schlüssel von Cloud KMS schützen.

Verschlüsselung von Secrets auf Anwendungsebene

Kubernetes-Secrets werden standardmäßig als Klartext gespeichert. GKE verschlüsselt diese Secrets auf dem Laufwerk und überwacht den Zugriff durch Insider auf diese Daten. Dies allein reicht jedoch möglicherweise nicht aus, um die Secrets vor einer schädlichen Verwendung in Ihrer Umgebung zu schützen. Aufgrund der Verschlüsselung auf Anwendungsebene sind die Secrets durch Umschlagverschlüsselung mit einem Schlüssel geschützt, den Sie in Cloud KMS verwalten.

Workload Identity

Ihre Containeranwendung muss sich zur Erledigung ihrer Aufgaben vermutlich mit anderen Diensten wie etwa einer Datenbank verbinden. Hierfür ist zuerst die Authentifizierung der Anwendung erforderlich. Workload Identity verwendet ein von Google verwaltetes Dienstkonto, um Anmeldedaten für die Authentifizierung freizugeben. Dabei gilt das Prinzip der geringsten Berechtigung für die Anwendungsauthentifizierung.

Verwaltete SSL-Zertifikate

In GKE müssen HTTPS-Load-Balancer mit einem SSL-Zertifikat verknüpft sein. Sie können diese Zertifikate selbst beziehen, verwalten und verlängern oder dies automatisch von Google erledigen lassen. In diesem Fall brauchen Sie sich dann keine Gedanken mehr um die Verlängerung zu machen.

Softwarelieferkette

Die Softwarelieferkette gibt Auskunft darüber, was genau in Ihrer Umgebung bereitgestellt wird. Damit steuern Sie Ihre Anwendungen, angefangen vom Code über das Image bis hin zur Bereitstellung. Diese Funktionen sind in der Regel in Ihre CI/CD-Pipeline eingebunden sowie in Ihre Container Registry – z. B. Google Container Registry – und als Zugangsprüfung vor der Containerbereitstellung in der Produktion.

Sichere und verwaltete Basis-Images

Google Container Registry bietet ein Debian-Basis-Image und ein Ubuntu-Basis-Image. Beide werden von Google regelmäßig gepatcht und getestet. Diese von Google verwalteten Images werden mit den neuesten Patches der Hersteller aktualisiert. Dies erleichtert es, die Images auf dem aktuellen Stand zu halten, ohne Patches von einem unbekannten Repository abzurufen oder sie selbst zu verwalten.

Scannen auf Sicherheitslücken

Google Container Registry kann Ihre Images und Pakete auf Sicherheitslücken scannen. Als Referenz werden in der CVE-Datenbank aufgelistete, bekannte Sicherheitslücken verwendet.

Richtlinien für das Deployment

In Google Kubernetes Engine können Sie durch Binärautorisierung auf Basis der Attestierungen eines Images begrenzen, was in Ihrer Umgebung bereitgestellt wird. Sie können festlegen, dass Images vor der Bereitstellung von Ihnen definierte Anforderungen in Form von Attestierungen oder Signaturen erfüllen müssen. Zu den Anforderungen können beispielsweise das Scannen des Images auf Sicherheitslücken oder die Verifizierung durch das QA-Team gehören.

Reguläre Builds

Sie können Container regelmäßig neu erstellen und bereitstellen. So profitieren Sie von den jeweils neuesten Patches, die nach und nach in Ihre Umgebung eingepflegt werden.

Laufzeitsicherheit

Durch die sichere Containerlaufzeit sorgen Sie dafür, dass Ihr Sicherheitsteam Bedrohungen für die Container in Ihrer Umgebung erkennen und darauf reagieren kann. Diese Funktionen sind in der Regel in Ihre Sicherheitstools eingebunden.

Monitoring

Google Kubernetes Engine ist für eine einfache Loganalyse in Cloud Logging eingebunden. Sie können Sicherheitsvorfälle auch im Cloud Security Command Center (Cloud SCC) melden.

Erkennung von ungewöhnlichen Aktivitäten

Sie können Ihre Umgebung mit Lösungen unserer Partner auf Angriffe hin überwachen und die Ergebnisse in Security Command Center abrufen. Unterstützt werden unter anderem: Aqua Security, Capsule8, StackRox, Sysdig Secure und Twistlock.

Sicherheitsrichtlinien durchsetzen

PodSecurityPolicy ist ein Feature von Open-Source-Kubernetes. Sie können damit Sicherheitsvorkehrungen für Ihre Container treffen. Hierfür schränken Sie die Art und Weise ein, wie Ihre Pods ausgeführt werden können. Sie können beispielsweise die Verwendung von AppArmor oder seccomp erzwingen.

Isolation

Verhindern Sie, dass ein bösartiger Container weitere Container beeinträchtigt. GKE Sandbox verwendet einen Userspace-Kernel, um Systemaufrufe abzufangen und zu verarbeiten. Ihre Container werden somit durch gestaffelte Sicherheitsebenen geschützt, ohne dass sich die Interaktion der Entwickler mit ihren Anwendungen ändert. GKE Sandbox basiert auf gVisor, einem von Google erstellten Open-Source-Projekt.

Ressourcen

Hier erhalten Sie weitere Informationen zur Containersicherheit.

Google Cloud

Nächste Schritte

Lernen und entwickeln

Sie verwenden die GCP zum ersten Mal? Sichern Sie sich zum Einstieg in ein beliebiges GCP-Produkt ein Startguthaben von 300 $.

Benötigen Sie weitere Hilfe?

Unsere Experten unterstützen Sie dabei, die passende Lösung oder den richtigen Partner für Ihre Anforderungen zu finden.