Container Escape
Was ist Container Escape?
Container EscapeEin Exploit, der die Isolation zwischen einem Container und seinem Host durchbricht und dem Angreifer Codeausfuehrung auf dem darunterliegenden Knoten oder Kernel ermoeglicht.
Ein Container Escape nutzt Schwaechen in der Container-Runtime, im Kernel oder in fehlkonfigurierten Namespaces, um aus einem isolierten Container auszubrechen und Privilegien auf dem Hostbetriebssystem zu erlangen. Klassische Beispiele sind CVE-2019-5736 in runC, bei dem ein boesartiger Container das runC-Binary ueberschreiben und Root auf dem Host erlangen konnte, sowie Missbrauch privilegierter Container, gemounteter Docker-Sockets oder geteilter PID-Namespaces. Nach dem Ausbruch bewegt sich der Angreifer oft lateral durch das Cluster, stiehlt kubelet-Credentials und greift auf andere Workloads zu. Gegenmassnahmen sind rootless Container, seccomp- und AppArmor-Profile, schreibgeschuetzte Dateisysteme, gVisor- oder Kata-Sandboxes und zuegiges Patchen.
● Beispiele
- 01
Ausnutzung von CVE-2019-5736, um /usr/bin/runc zu ueberschreiben und als Root auf dem Host Code auszufuehren.
- 02
Ein privilegierter Container mountet /var/run/docker.sock und erstellt einen neuen Container mit dem Host-Dateisystem.
● Häufige Fragen
Was ist Container Escape?
Ein Exploit, der die Isolation zwischen einem Container und seinem Host durchbricht und dem Angreifer Codeausfuehrung auf dem darunterliegenden Knoten oder Kernel ermoeglicht. Es gehört zur Kategorie Cloud-Sicherheit der Cybersicherheit.
Was bedeutet Container Escape?
Ein Exploit, der die Isolation zwischen einem Container und seinem Host durchbricht und dem Angreifer Codeausfuehrung auf dem darunterliegenden Knoten oder Kernel ermoeglicht.
Wie funktioniert Container Escape?
Ein Container Escape nutzt Schwaechen in der Container-Runtime, im Kernel oder in fehlkonfigurierten Namespaces, um aus einem isolierten Container auszubrechen und Privilegien auf dem Hostbetriebssystem zu erlangen. Klassische Beispiele sind CVE-2019-5736 in runC, bei dem ein boesartiger Container das runC-Binary ueberschreiben und Root auf dem Host erlangen konnte, sowie Missbrauch privilegierter Container, gemounteter Docker-Sockets oder geteilter PID-Namespaces. Nach dem Ausbruch bewegt sich der Angreifer oft lateral durch das Cluster, stiehlt kubelet-Credentials und greift auf andere Workloads zu. Gegenmassnahmen sind rootless Container, seccomp- und AppArmor-Profile, schreibgeschuetzte Dateisysteme, gVisor- oder Kata-Sandboxes und zuegiges Patchen.
Wie schützt man sich gegen Container Escape?
Schutzmaßnahmen gegen Container Escape kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.
Welche anderen Bezeichnungen gibt es für Container Escape?
Übliche alternative Bezeichnungen: Container-Ausbruch, Docker-Escape.
● Verwandte Begriffe
- cloud-security№ 598
Kubernetes-Cluster-Angriff
Eingriff in einen Kubernetes (K8s)-Cluster, der freigelegte APIs, schwaches RBAC oder verwundbare Workloads ausnutzt, um Kontrolle ueber Control Plane oder Worker Nodes zu erlangen.
- cloud-security№ 505
IAM-Privilege-Escalation
Missbrauch bestehender Cloud-IAM-Berechtigungen, um hoehere Rechte zu erlangen, oft durch Policy-Bearbeitung, Rollenuebernahme oder Selbsterteilung administrativer Rechte.
- cloud-security№ 187
Cloud-Metadata-SSRF
Server-Side-Request-Forgery-Angriff, der eine verwundbare Anwendung dazu bringt, den Instance-Metadata-Service des Cloud-Anbieters abzufragen und temporaere Zugangsdaten zu stehlen.
- cloud-security№ 183
Cloud-Datenexfiltration
Unbefugtes Kopieren oder Verlagern von Daten aus einem Cloud-Konto heraus, oft ueber Object-Storage-APIs, Snapshots, Replikation oder angreifer-eigene Konten.
- vulnerabilities№ 860
Privilegieneskalation
Eine Klasse von Schwachstellen, die einem Angreifer höhere Rechte verschafft als ursprünglich vergeben — etwa vom normalen Benutzer zum Administrator.
● Siehe auch
- № 182Cloud-Cryptojacking
- № 964Sandbox-Escape
- № 346Docker-Socket-Angriff