gVisor
Was ist gVisor?
gVisorgVisor ist ein Open-Source-Application-Kernel von Google, der Container-Syscalls im User-Space abfaengt und damit die Host-Kernel-Angriffsflaeche fuer untrusted Workloads drastisch verkleinert.
Der Sentry-Prozess von gVisor implementiert einen Grossteil der Linux-Syscall-Schnittstelle in Go im User-Space; nur ein kleines Set Host-Syscalls ist via seccomp-bpf erlaubt und Filesystem-I/O laeuft ueber einen Gofer. Container reden mit Sentry statt direkt mit dem Host-Kernel, sodass Kernel-Exploits in der Workload zuerst aus dem User-Space-Sandbox ausbrechen muessten. gVisor laeuft als Docker- oder CRI-Runtime (runsc) und treibt Google Cloud Run, App Engine standard und GKE Sandbox. Der Preis sind unvollstaendige Syscall-Kompatibilitaet und Overhead pro Aufruf, weshalb gVisor besonders fuer kurzlebige, multi-tenant oder untrusted Workloads geeignet ist.
● Beispiele
- 01
Google Cloud Run fuehrt Kundenfunktionen standardmaessig in gVisor-Sandboxes aus.
- 02
GKE Sandbox annotiert untrusted Pods mit runtimeClassName: gvisor.
● Häufige Fragen
Was ist gVisor?
gVisor ist ein Open-Source-Application-Kernel von Google, der Container-Syscalls im User-Space abfaengt und damit die Host-Kernel-Angriffsflaeche fuer untrusted Workloads drastisch verkleinert. Es gehört zur Kategorie Cloud-Sicherheit der Cybersicherheit.
Was bedeutet gVisor?
gVisor ist ein Open-Source-Application-Kernel von Google, der Container-Syscalls im User-Space abfaengt und damit die Host-Kernel-Angriffsflaeche fuer untrusted Workloads drastisch verkleinert.
Wie funktioniert gVisor?
Der Sentry-Prozess von gVisor implementiert einen Grossteil der Linux-Syscall-Schnittstelle in Go im User-Space; nur ein kleines Set Host-Syscalls ist via seccomp-bpf erlaubt und Filesystem-I/O laeuft ueber einen Gofer. Container reden mit Sentry statt direkt mit dem Host-Kernel, sodass Kernel-Exploits in der Workload zuerst aus dem User-Space-Sandbox ausbrechen muessten. gVisor laeuft als Docker- oder CRI-Runtime (runsc) und treibt Google Cloud Run, App Engine standard und GKE Sandbox. Der Preis sind unvollstaendige Syscall-Kompatibilitaet und Overhead pro Aufruf, weshalb gVisor besonders fuer kurzlebige, multi-tenant oder untrusted Workloads geeignet ist.
Wie schützt man sich gegen gVisor?
Schutzmaßnahmen gegen gVisor kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.
Welche anderen Bezeichnungen gibt es für gVisor?
Übliche alternative Bezeichnungen: runsc, gVisor Sentry.
● Verwandte Begriffe
- cloud-security№ 582
Kata Containers
Kata Containers ist eine Open-Source-Runtime, die jeden Container oder Kubernetes-Pod in eine leichtgewichtige virtuelle Maschine kapselt und damit Isolation auf Hardware-Ebene bietet.
- cloud-security№ 838
Pod Security Standards
Pod Security Standards (PSS) sind von Kubernetes definierte Sicherheitsprofile — Privileged, Baseline und Restricted — die sichere Pod-Konfiguration kodifizieren und das veraltete PodSecurityPolicy ersetzen.
- cloud-security№ 597
Kubernetes Admission Controller
Ein Admission Controller ist ein Plugin des Kubernetes-API-Servers, das authentifizierte Anfragen vor der Persistenz abfaengt und Objekte gemaess Policy validiert, mutiert oder ablehnt.
- cloud-security№ 757
OPA Gatekeeper
OPA Gatekeeper ist ein CNCF-Policy-Controller, der Open Policy Agent und die Sprache Rego nutzt, um Admission- und Audit-Policies fuer Kubernetes-Ressourcen durchzusetzen.
- cloud-security№ 602
Kyverno
Kyverno ist eine CNCF-Kubernetes-Policy-Engine, die Ressourcen ueber in nativem YAML formulierte Policies validiert, mutiert und erzeugt, statt eine neue DSL einzufuehren.
- cloud-security№ 599
Kubernetes NetworkPolicy
Eine Kubernetes-NetworkPolicy ist eine namespaced Ressource, die anhand von IP, Port und Protokoll regelt, welche Pods sich mit welchen Pods oder externen Zielen verbinden duerfen.