Container Security
Container Security
Umfassende Sicherheit für Container-Umgebungen – von Image-Scanning über Runtime Protection bis zu Kubernetes Pod Security. Schützen Sie Ihre Container von Build bis Runtime.
Inhaltsverzeichnis
Schnellübersicht
Auf dieser Seite lernen Sie alles über Container Security:
- Definition: Was ist Container Security?
- Container Lifecycle Security: Build, Deploy, Runtime
- OWASP Container Security Top 10: Die häufigsten Risiken
- Image Security: Scanning, Signing, Base Images
- Runtime Security: Monitoring, Falco, Threat Detection
- Kubernetes Pod Security: Pod Security Standards
- Tools & Lösungen: Trivy, Falco, Clair, Aqua
- Best Practices: Enterprise-Empfehlungen
- FAQ: Häufige Fragen & Antworten
1. Was ist Container Security?
Definition
Container Security umfasst alle Sicherheitsmaßnahmen zum Schutz von Container-Umgebungen (Docker, containerd, Kubernetes) während des gesamten Lebenszyklus – von der Erstellung des Images über das Deployment bis zur Laufzeit.
Container bieten zwar durch Isolation gewisse Sicherheitsvorteile gegenüber VMs, bringen aber auch neue Angriffsvektoren mit sich: unsichere Base Images, übermäßige Privilegien, unsichere Konfigurationen, kompromittierte Supply Chains und fehlende Runtime-Überwachung.
Die drei Säulen der Container Security: Image Security (sichere Images), Configuration Security (sichere Konfiguration) und Runtime Security (Überwachung zur Laufzeit).
Warum ist Container Security wichtig?
- Supply-Chain-Angriffe: Kompromittierte Base Images oder Dependencies (z.B. SolarWinds, Log4Shell)
- Container-Escape: Ausbruch aus dem Container auf den Host
- Privilegien-Missbrauch: Container mit Root-Rechten oder CAP_SYS_ADMIN
- Secret-Leaks: Passwörter und API-Keys in Images oder Umgebungsvariablen
- Netzwerk-Angriffe: Lateral Movement zwischen Containern
- Compliance: Einhaltung von Sicherheitsstandards (ISO 27001, SOC 2, PCI-DSS)
2. Container Lifecycle Security
Container Security muss während des gesamten Lebenszyklus berücksichtigt werden – von der Entwicklung bis zur Runtime.
Build Phase
Sicherstellung, dass das Container-Image sicher ist, bevor es deployed wird.
- Minimale Base Images (Alpine, Distroless)
- Image-Scanning (CVE-Detection)
- Multi-Stage Builds
- Keine Secrets im Image
- Image-Signing (Cosign, Notary)
- SBOM (Software Bill of Materials)
Deploy Phase
Sichere Konfiguration und Deployment des Containers in der Zielumgebung.
- Pod Security Standards (Kubernetes)
- Network Policies
- Secrets Management (Vault, Sealed Secrets)
- Resource Limits (CPU, RAM)
- Read-Only Filesystem
- Non-Root User
Runtime Phase
Kontinuierliche Überwachung und Schutz der laufenden Container.
- Runtime Threat Detection (Falco)
- Anomaly Detection
- Audit Logging
- Container Firewall
- Compliance Monitoring
- Incident Response
3. OWASP Container Security Top 10
Die OWASP Foundation hat die 10 häufigsten Sicherheitsrisiken in Container-Umgebungen identifiziert.
Insufficient Image Scan
Fehlendes oder unzureichendes Image-Scanning auf bekannte CVEs (Common Vulnerabilities and Exposures).
KritischEmbedded Secrets
Passwörter, API-Keys und Zertifikate direkt im Image oder in Umgebungsvariablen gespeichert.
KritischVulnerable Base Images
Veraltete oder unsichere Base Images mit bekannten Sicherheitslücken werden verwendet.
HochUnnecessary Privileges
Container laufen mit Root-Rechten oder übermäßigen Capabilities (CAP_SYS_ADMIN).
KritischInsecure Host Config
Unsichere Konfiguration des Container-Hosts (Docker Daemon, Kernel-Parameter).
HochMissing Network Segmentation
Keine Network Policies – Container können ungehindert miteinander kommunizieren.
HochRuntime Vulnerabilities
Fehlende Runtime-Überwachung ermöglicht unbemerkte Angriffe und Lateral Movement.
HochSupply Chain Attacks
Kompromittierte Dependencies, Base Images oder CI/CD-Pipelines (z.B. SolarWinds).
KritischMissing Image Signing
Images werden ohne Signatur deployed – Manipulation bleibt unerkannt.
MittelInsufficient Monitoring
Fehlende Audit-Logs und Monitoring erschweren Incident Detection und Response.
Mittel4. Image Security – Sichere Container-Images
Das Image ist die Grundlage jedes Containers. Unsichere Images führen zu unsicheren Containern.
Image Security Best Practices
- Minimale Base Images: Alpine Linux (~5 MB), Google Distroless, Scratch
- Multi-Stage Builds: Build-Tools nur in der Build-Phase, nicht im finalen Image
- Regelmäßige Updates: Base Images und Dependencies aktuell halten
- Keine Secrets: Passwörter und Keys nie im Image speichern
- Image Scanning: Automatisches Scannen auf CVEs (Trivy, Clair)
- Image Signing: Digitale Signatur für Integrität (Cosign, Notary)
- SBOM erstellen: Software Bill of Materials für Transparenz
- Non-Root User: Container nicht als Root laufen lassen
- Read-Only Filesystem: Wo möglich, das Filesystem read-only machen
- Trusted Registries: Nur Images aus vertrauenswürdigen Quellen verwenden
Beispiel: Sicheres Dockerfile
Image Scanning mit Trivy
5. Runtime Security – Schutz zur Laufzeit
Runtime Security überwacht und schützt Container während sie laufen. Selbst sichere Images können zur Laufzeit kompromittiert werden.
Runtime Security Maßnahmen
- Threat Detection: Erkennung von anomalem Verhalten (z.B. Shell-Spawns, Datei-Manipulation)
- Container Firewall: Netzwerk-Traffic zwischen Containern filtern
- File Integrity Monitoring: Überwachung kritischer Dateien
- Process Monitoring: Unerwartete Prozesse erkennen
- Privilege Escalation Detection: Erkennung von Root-Eskalation
- Container Escape Detection: Ausbruchsversuche erkennen
- Compliance Monitoring: Einhaltung von Sicherheitsrichtlinien
- Audit Logging: Alle Container-Aktivitäten protokollieren
Falco – Runtime Threat Detection
Falco ist der De-facto-Standard für Runtime Security in Kubernetes. Es überwacht System-Calls und erkennt anomales Verhalten.
6. Kubernetes Pod Security Standards
Kubernetes definiert drei Pod Security Levels, die unterschiedliche Sicherheitsanforderungen haben.
Privileged
Keine Einschränkungen – für System-Container und privilegierte Workloads.
- Keine Security-Beschränkungen
- Root-User erlaubt
- Alle Capabilities erlaubt
- Host-Network erlaubt
- Nur für trusted Workloads
Baseline
Minimale Sicherheitsanforderungen – verhindert die häufigsten Risiken.
- Keine privilegierten Container
- Keine Host-Network/PID/IPC
- Keine Host-Path Volumes
- Keine CAP_SYS_ADMIN
- Empfohlen für die meisten Workloads
Restricted
Strengste Sicherheit – für kritische Workloads und Compliance.
- Non-Root User Pflicht
- Read-Only Root Filesystem
- Keine neuen Capabilities
- Seccomp Profile Pflicht
- Für Compliance (PCI-DSS, HIPAA)
Pod Security Standards aktivieren
7. Tools & Lösungen für Container Security
Es gibt zahlreiche Open-Source und kommerzielle Tools für Container Security.
Trivy
Umfassender Security Scanner für Container Images, Dateisysteme und Git-Repositories.
- CVE-Detection (OS & Libraries)
- Misconfiguration Detection
- Secret Detection
- SBOM Generation
- CI/CD Integration
Falco
Runtime Threat Detection für Container und Kubernetes durch System-Call-Überwachung.
- System-Call Monitoring
- Anomaly Detection
- Custom Rules (YAML)
- Alert Integration
- Kubernetes Native
Clair
Statischer Analyse-Scanner für Schwachstellen in Container Images (von CoreOS/Red Hat).
- Vulnerability Detection
- API-basiert
- Registry Integration
- Multi-Layer Analysis
- Enterprise Ready
Aqua Security
Umfassende Container Security Platform für Enterprise-Umgebungen.
- Full Lifecycle Security
- Runtime Protection
- Compliance Reporting
- Image Assurance
- Enterprise Support
Kube-Hunter
Penetration Testing Tool für Kubernetes-Cluster (von Aqua Security).
- Vulnerability Assessment
- Attack Simulation
- Reporting
- Active & Passive Modes
- CI/CD Integration
OPA (Open Policy Agent)
Generische Policy-Engine für Kubernetes und Cloud-Umgebungen (Rego Language).
- Policy as Code (Rego)
- Admission Control
- Audit Logging
- Multi-Cloud Support
- CNCF Graduated
8. Enterprise Best Practices
Bewährte Praktiken für sichere Container-Umgebungen im Enterprise-Einsatz.
Image Security
- Minimale Base Images verwenden (Alpine, Distroless)
- Regelmäßige Image-Scans automatisieren
- Image-Signing implementieren (Cosign)
- SBOM für alle Images erstellen
- Trusted Registries nutzen
- Multi-Stage Builds für schlanke Images
Runtime Protection
- Falco oder ähnliches Tool deployen
- Container Firewall aktivieren
- File Integrity Monitoring einrichten
- Process Monitoring implementieren
- Alerts bei anomalem Verhalten
- Incident Response Plan erstellen
Network Security
- Network Policies für alle Namespaces
- Default-Deny Policy implementieren
- Service Mesh (Istio, Linkerd) nutzen
- mTLS für Service-zu-Service
- Ingress Controller mit WAF
- Netzwerk-Segmentierung
Secrets Management
- HashiCorp Vault oder Sealed Secrets
- Keine Secrets in Images oder Env-Vars
- External Secrets Operator nutzen
- Regelmäßige Secret-Rotation
- Encryption at Rest aktivieren
- Audit Logging für Secret-Zugriffe
Monitoring & Logging
- Zentrales Logging (ELK, Loki)
- Metrics mit Prometheus/Grafana
- Audit Logs für alle Aktionen
- Alerting bei Sicherheits-Events
- SIEM-Integration (Splunk, QRadar)
- Retention Policies definieren
Compliance & Governance
- Pod Security Standards enforce
- OPA Policies für Compliance
- Regelmäßige Security Audits
- CIS Benchmark Checks
- Compliance Reporting automatisieren
- Security Training für Entwickler
Enterprise-Empfehlung
Für Enterprise-Umgebungen empfehlen wir einen Defense-in-Depth-Ansatz: Kombinieren Sie Image Scanning (Trivy), Runtime Protection (Falco), Network Policies, Secrets Management (Vault) und Compliance Monitoring (OPA). Kein einzelnes Tool bietet vollständigen Schutz – erst die Kombination mehrerer Sicherheitsebenen macht Container-Umgebungen wirklich sicher.
9. FAQ – Häufige Fragen & Antworten
Häufige Fragen zu Container Security
Jein – es kommt auf den Use Case an.
- Container: Teilen sich den Host-Kernel, bieten Prozess-Isolation, aber keine Hardware-Virtualisierung. Schneller, ressourceneffizienter, aber geringere Isolation.
- VMs: Vollständige Hardware-Virtualisierung, eigene Kernel, stärkere Isolation. Langsamer, ressourcenintensiver, aber sicherer für Multi-Tenant-Umgebungen.
Fazit: Container sind sicher genug für die meisten Workloads, aber für hochsensible Daten oder Multi-Tenant-Umgebungen sind VMs oder Sandbox-Container (gVisor, Kata Containers) besser geeignet.
Container-Escape: Ein Angriff, bei dem ein Angreifer aus dem Container ausbricht und Zugriff auf den Host oder andere Container erhält.
Schutzmaßnahmen:
- Non-Root User: Container nie als Root laufen lassen
- Capabilities reduzieren: Nur notwendige Capabilities erlauben
- Read-Only Filesystem: Wo möglich aktivieren
- Seccomp Profile: System-Calls einschränken
- AppArmor/SELinux: Mandatory Access Control nutzen
- Runtime Monitoring: Falco für Anomalie-Erkennung
- Regelmäßige Updates: Container Runtime und Kernel aktuell halten
Empfehlung: So oft wie möglich – idealerweise bei jedem Build.
- CI/CD Pipeline: Bei jedem Image-Build automatisch scannen
- Registry: Beim Push in die Registry scannen
- Runtime: Regelmäßige Scans laufender Images (täglich/wöchentlich)
- Base Images: Bei Updates der Base Images neu scannen
Best Practice: Implementieren Sie einen Shift-Left-Ansatz – Security so früh wie möglich im Entwicklungsprozess. Blockieren Sie den Build bei CRITICAL/HIGH CVEs.
SBOM (Software Bill of Materials): Eine detaillierte Liste aller Komponenten, Libraries und Dependencies in einem Container-Image.
Warum wichtig?
- Transparenz: Wissen, was im Image enthalten ist
- Vulnerability Management: Schnelle Identifikation betroffener Images bei neuen CVEs (z.B. Log4Shell)
- Compliance: Nachweis der Software-Zusammensetzung
- Supply Chain Security: Erkennung kompromittierter Dependencies
Tools: Trivy, Syft, Grype können SBOMs erstellen (Formate: SPDX, CycloneDX).
Zero Trust für Container bedeutet: "Never trust, always verify" – keine implizite Vertrauensstellung.
Implementierung:
- Identity-based Access: Service Accounts mit minimalen Rechten
- mTLS: Verschlüsselte Service-zu-Service-Kommunikation (Istio, Linkerd)
- Network Policies: Default-Deny, explizite Allow-Regeln
- Continuous Verification: Runtime Monitoring und Anomalie-Erkennung
- Least Privilege: Pod Security Standards enforce
- Secrets Management: Dynamische, kurzlebige Credentials (Vault)
Relevante Standards:
- CIS Docker Benchmark: Security Configuration Guide für Docker
- CIS Kubernetes Benchmark: Security Configuration für Kubernetes
- ISO 27001: Information Security Management
- SOC 2: Security, Availability, Processing Integrity
- PCI-DSS: Payment Card Industry (für Kreditkartendaten)
- HIPAA: Healthcare (für Patientendaten)
- GDPR/DSGVO: Datenschutz (für personenbezogene Daten)
Tools: Trivy, Kube-Bench, OPA können Compliance-Checks automatisieren.
Image Signing: Digitale Signatur für Container-Images, um Integrität und Authentizität zu gewährleisten.
Warum wichtig?
- Manipulationsschutz: Verhindert, dass Images unbemerkt verändert werden
- Supply Chain Security: Nur signierte Images werden deployed
- Vertrauenskette: Nachweis, dass Image von vertrauenswürdiger Quelle stammt
- Compliance: Viele Standards erfordern Image Signing
Tools: Cosign (Sigstore), Notary, Docker Content Trust.
Best Practices für Secrets in Kubernetes:
- Keine Secrets in Images: Niemals Passwörter/Keys im Dockerfile oder Image
- Keine Env-Vars: Umgebungsvariablen sind in Logs sichtbar
- External Secrets Operator: Secrets aus Vault, AWS Secrets Manager, etc.
- Sealed Secrets: Verschlüsselte Secrets, die nur im Cluster entschlüsselt werden
- Encryption at Rest: etcd-Verschlüsselung aktivieren
- RBAC: Minimale Rechte für Secret-Zugriffe
- Audit Logging: Alle Secret-Zugriffe protokollieren
Empfehlung: HashiCorp Vault mit Kubernetes Integration für dynamische, kurzlebige Secrets.
Zusammenfassung
Die wichtigsten Punkte
- Container Security: Umfassender Schutz während des gesamten Lifecycle (Build, Deploy, Runtime)
- OWASP Top 10: Die 10 häufigsten Risiken – von Image Scanning bis Runtime Monitoring
- Image Security: Minimale Base Images, Multi-Stage Builds, Scanning, Signing, SBOM
- Runtime Security: Falco für Threat Detection, Container Firewall, File Integrity Monitoring
- Pod Security Standards: Privileged, Baseline, Restricted – je nach Sicherheitsanforderung
- Tools: Trivy (Scanning), Falco (Runtime), Clair (Vulnerability), Aqua (Enterprise), OPA (Policies)
- Best Practices: Defense-in-Depth, Zero Trust, Least Privilege, Shift-Left Security
- Compliance: CIS Benchmarks, ISO 27001, SOC 2, PCI-DSS, HIPAA, GDPR
Enterprise-Empfehlung
Implementieren Sie einen umfassenden Security-Ansatz mit mehreren Ebenen: Image Scanning in der CI/CD-Pipeline, Runtime Protection mit Falco, Network Policies für Netzwerk-Segmentierung, Secrets Management mit Vault und Compliance Monitoring mit OPA. Container Security ist kein einmaliges Projekt, sondern ein kontinuierlicher Prozess.
Weiterführende Themen
Firewalls, IDS/IPS und grundlegende Sicherheitskonzepte für Netzwerke.
Zur NetzwerksicherheitZero Trust im Detail – "Never trust, always verify" für moderne IT-Umgebungen.
Zu Zero TrustSecurity in CI/CD-Pipelines – Shift-Left Security und automatisierte Security-Checks.
Zu DevSecOpsDSGVO, ISO 27001, SOC 2, PCI-DSS – Compliance-Anforderungen verstehen und umsetzen.
Zu Compliance