2025-11-20T01:55:14.885016

Analysis of Security in OS-Level Virtualization

Ketha, Song, Zhu
Virtualization is a technique that allows multiple instances typically running different guest operating systems on top of single physical hardware. A hypervisor, a layer of software running on top of the host operating system, typically runs and manages these different guest operating systems. Rather than to run different services on different servers for reliability and security reasons, companies started to employ virtualization over their servers to run these services within a single server. This approach proves beneficial to the companies as it provides much better reliability, stronger isolation, improved security and resource utilization compared to running services on multiple servers. Although hypervisor based virtualization offers better resource utilization and stronger isolation, it also suffers from high overhead as the host operating system has to maintain different guest operating systems. To tackle this issue, another form of virtualization known as Operating System-level virtualization has emerged. This virtualization provides light-weight, minimal and efficient virtualization, as the different instances are run on top of the same host operating system, sharing the resources of the host operating system. But due to instances sharing the same host operating system affects the isolation of the instances. In this paper, we will first establish the basic concepts of virtualization and point out the differences between the hyper-visor based virtualization and operating system-level virtualization. Next, we will discuss the container creation life-cycle which helps in forming a container threat model for the container systems, which allows to map different potential attack vectors within these systems. Finally, we will discuss a case study, which further looks at isolation provided by the containers.
academic

Analyse der Sicherheit in OS-Level-Virtualisierung

Grundinformationen

  • Paper-ID: 2501.01334
  • Titel: Analysis of Security in OS-Level Virtualization
  • Autoren: Krishna Sai Ketha, Guanqun Song, Ting Zhu (The Ohio State University)
  • Klassifizierung: cs.CR (Kryptographie und Sicherheit), cs.OS (Betriebssysteme)
  • Veröffentlichungsdatum: 2. Januar 2025 (arXiv-Preprint)
  • Paper-Link: https://arxiv.org/abs/2501.01334

Zusammenfassung

Die Virtualisierungstechnologie ermöglicht die Ausführung mehrerer Instanzen mit typischerweise unterschiedlichen Gast-Betriebssystemen auf einer einzigen physischen Hardware. Während die hypervisor-basierte Virtualisierung eine bessere Ressourcenauslastung und stärkere Isolation bietet, entstehen durch die Notwendigkeit, verschiedene Gast-Betriebssysteme zu verwalten, erhebliche Mehrkosten. Um dieses Problem zu lösen, wurde die OS-Level-Virtualisierung entwickelt, die leichte, minimale und effiziente Virtualisierung bietet. Da die Instanzen jedoch dasselbe Host-Betriebssystem gemeinsam nutzen, beeinträchtigt dies die Isolation zwischen den Instanzen. Diese Arbeit etabliert grundlegende Virtualisierungskonzepte, analysiert die Unterschiede zwischen Hypervisor-Virtualisierung und OS-Level-Virtualisierung, erörtert den Lebenszyklus der Container-Erstellung, konstruiert ein Container-Bedrohungsmodell und analysiert durch Fallstudien die von Containern bereitgestellte Isolation.

Forschungshintergrund und Motivation

Problemdefinition

  1. Ressourcenauslastungseffizienz: Die traditionelle Methode, verschiedene Dienste auf verschiedenen Servern bereitzustellen, erhöht zwar die Zuverlässigkeit und Sicherheit, ist aber kostspielig und ressourcenintensiv
  2. Virtualisierungsmehrkosten: Während die hypervisor-basierte Virtualisierung die Ressourcenauslastung verbessert, führt die Verwaltung mehrerer Gast-Betriebssysteme zu erheblichen Mehrkosten
  3. Container-Sicherheitsisolationsproblem: Obwohl die OS-Level-Virtualisierung das Mehrkosten-Problem löst, könnte die gemeinsame Nutzung des Betriebssystem-Kernels die Sicherheitsisolation beeinträchtigen

Forschungsbedeutung

  • Geschäftliche Anforderungen: Unternehmen benötigen sichere und effiziente Ausführung mehrerer Dienste auf einem einzigen Server
  • Cloud-Computing-Trend: Seit den 1990er Jahren wird die Virtualisierungstechnologie in Cloud-Umgebungen weit verbreitet eingesetzt
  • Sicherheitsbedrohungen: Die weit verbreitete Einführung von Container-Technologie bringt neue Sicherheitsherausforderungen und Angriffsvektoren mit sich

Einschränkungen bestehender Methoden

  • Traditionelle Virtualisierung: Hypervisor-Virtualisierung ist kostspielig, jede virtuelle Maschine benötigt ein vollständiges Gast-Betriebssystem
  • Unzureichende Sicherheitsanalyse: Die Sicherheit und Isolation der OS-Level-Virtualisierung wurde nicht ausreichend analysiert
  • Fehlende Bedrohungsmodelle: Es fehlt ein systematisches Container-Bedrohungsmodell zur Identifizierung potenzieller Angriffsvektoren

Kernbeiträge

  1. Etablierung eines Virtualisierungsvergleichsrahmens: Systematischer Vergleich der Vor- und Nachteile von Hypervisor-Virtualisierung und OS-Level-Virtualisierung
  2. Konstruktion eines detaillierten Container-Erstellungslebenszyklus-Modells: Analyse des vollständigen Prozesses von Docker-Containern vom Aufbau bis zur Ausführung
  3. Entwicklung eines umfassenden Container-Bedrohungsmodells: Identifizierung und Klassifizierung von 9 Hauptangriffsvektoren im Container-System
  4. Bereitstellung von Analysen tatsächlicher Sicherheitslücken: Tiefgehende Analyse von Sicherheitsproblemen anhand von zwei echten Sicherheitslücken (CVE-2024-21626 und CVE-2022-0847)
  5. Empfehlungen zur Container-Sicherheitshärtung: Praktische Sicherheits-Best-Practices basierend auf Analyseergebnissen

Methodische Details

Aufgabendefinition

Diese Forschung zielt darauf ab, die Sicherheit und Isolation der OS-Level-Virtualisierung (insbesondere Docker-Container) systematisch zu analysieren, potenzielle Angriffsvektoren durch die Konstruktion eines Bedrohungsmodells zu identifizieren und Empfehlungen zur Sicherheitshärtung bereitzustellen.

Forschungsarchitektur

1. Analyse des Container-Erstellungslebenszyklus

Die Forschung konzentriert sich auf vier Kernkomponenten des Docker-Container-Systems:

  • Docker Engine: Open-Source-Container-Technologie, die die Fähigkeit bietet, Anwendungen zu erstellen und zu containerisieren
  • Docker Daemon (dockerd): Ein im Hintergrund laufender Prozess, der Docker-Befehle überwacht und als Schnittstelle zwischen CLI und Container-Laufzeit fungiert
  • Containerd: Ein hochrangiges Container-Laufzeitsystem, das Bildtransfer-Management, Container-Lebenszyklusverwaltung, Speicher- und Netzwerkfunktionen bereitstellt
  • Runc: Eine leichte, sichere Low-Level-Container-Laufzeit, die direkt mit dem zugrunde liegenden Betriebssystem interagiert

2. Container-Erstellungsprozess

Dockerfile → Docker Build → Docker Daemon → Containerd → Runc → Container
  1. Der Systemadministrator führt den Befehl "docker build" über die Docker CLI aus
  2. Die Docker CLI ruft Docker Daemon auf, um die Anfrage zu verarbeiten
  3. Docker Daemon leitet die Anfrage an Containerd weiter, um den Container zu erstellen
  4. Containerd ruft das Image ab und übergibt es an Runc
  5. Runc interagiert mit dem zugrunde liegenden Betriebssystem und erstellt und verwaltet den Container basierend auf der Image-Konfiguration

Konstruktion des Bedrohungsmodells

Angriffsklassifizierung

Externe Angriffe: Fernzugriff auf das Container-System über das Netzwerk Interne Angriffe: Der Angreifer befindet sich bereits als Benutzer im Container und startet den Angriff

Neun Hauptangriffsvektoren

  1. Repository-Image-Manipulation: Angreifer manipulieren Container-Images im Repository
  2. Anwendungscode-Sicherheitslücken: Ausnutzung von Sicherheitslücken in Anwendungscode und Drittanbieter-Abhängigkeiten
  3. Unsachgemäße Container-Image-Konfiguration: Gewährung unnötiger Berechtigungen während der Image-Konfiguration
  4. Unsachgemäße Container-Konfiguration: Abrufen von Images mit bösartigem Code aus öffentlichen Verzeichnissen
  5. Host-Sicherheitslücken: Ausnutzung von Sicherheitslücken im Host-Betriebssystem, auf dem Container ausgeführt werden
  6. Informationsübertragung innerhalb des Systems: Angreifer überwachen die Informationsfreigabe zwischen Containern
  7. Container-Escape-Sicherheitslücken: Ausnutzung von Sicherheitslücken in Laufzeitsystemen wie Containerd oder Runc zum Escape auf den Host
  8. Unsichere Netzwerkkommunikation: Angreifer überwachen die Kommunikation zwischen Containern, um Informationen zu erhalten
  9. Unkontrollierte Ressourcenverbrauch: Bösartige Skripte verbrauchen übermäßig Ressourcen, was zu Ressourcenmangel in anderen Containern führt

Experimentelle Einrichtung

Fallstudien-Methodik

Diese Forschung verwendet die Methode der Analyse tatsächlicher Sicherheitslücken und wählt zwei repräsentative Sicherheitslücken für tiefgehende Analyse:

  1. Runc Container Breakout (CVE-2024-21626)
  2. Dirty Pipe Vulnerability (CVE-2022-0847)

Analysisrahmen

  • Sicherheitslücken-Mechanismus-Analyse: Detaillierte Analyse der technischen Prinzipien der Sicherheitslücke
  • Auswirkungsbereichsbewertung: Bestimmung des Bereichs betroffener Softwareversionen
  • Angriffsszenario-Rekonstruktion: Demonstration des Angriffsprozesses durch tatsächliche Befehle
  • Schweregradbewertung: Bewertung der Sicherheitsauswirkungen der Sicherheitslücke

Experimentelle Ergebnisse

Fallstudie 1: Runc Container Breakout (CVE-2024-21626)

Sicherheitslücken-Details

  • Entdeckungsdatum: 31. Januar 2024
  • Betroffene Versionen:
    • runc: v1.0.0-rc93 bis v1.1.11
    • containerd: v1.4.7 bis v1.6.27 und v1.7.0 bis v1.7.12
    • docker: <v25.0.2
  • Schweregrad: Kritisch

Angriffsmechanismus

  1. Ein Container ist aus der Perspektive des Host-Betriebssystems ein Prozess, der durch chroot ein unabhängiges Dateisystem als Root-Dateisystem bereitstellt
  2. Der Angreifer erstellt symbolische Links, die auf die Dateideskriptoren 7 und 8 verweisen
  3. Ausführung des Befehls sudo docker exec -it -w /foo <container-name> sleep 500
  4. Runc bindet das Host-Dateisystem in den Container ein, was dem Angreifer Zugriff auf das Host-Dateisystem ermöglicht

Angriffsmerkmale

  • Niedrige Berechtigungsanforderungen: Der Angreifer benötigt keine bösartigen Codes oder hohe Berechtigungen für einen erfolgreichen Angriff
  • Direkter Dateisystem-Zugriff: Direkter Zugriff auf Dateien im Host-Betriebssystem

Fallstudie 2: Dirty Pipe Vulnerability (CVE-2022-0847)

Sicherheitslücken-Details

  • Entdeckungsdatum: 7. März 2022
  • Betroffene Versionen: Linux-Kernel >v5.8.0
  • Schweregrad: Kritisch

Angriffsmechanismus

  1. Unsachgemäße Initialisierung des "flags"-Members in der neuen Kernel-Pipe-Puffer-Struktur
  2. Mängel in den Funktionen "copy-page-to-iter-pipe" und "push-pipe" können veraltete Werte enthalten
  3. Unprivilegierte lokale Benutzer können Seiten im Page-Cache modifizieren, die mit schreibgeschützten Dateien verknüpft sind
  4. Der Angreifer kann schreibgeschützte Dateien wie /etc/passwd modifizieren und damit Berechtigungen erhöhen

Experimentelle Erkenntnisse

Sicherheitsbedrohungsmerkmale

  1. Anhaltende Bedrohungen: CVE-2024-21626 ist nicht die erste, die vorherige CVE-2019-5736 war eine ähnliche runc-Escape-Sicherheitslücke
  2. Systemische Auswirkungen: Beide Sicherheitslücken können dazu führen, dass Angreifer Host-Betriebssystem-Berechtigungen erhalten
  3. Weit verbreitete Auswirkungen: Sicherheitslücken beeinflussen eine große Anzahl von Container-Systemen, die in Produktionsumgebungen verwendet werden

Isolationsanalyse

Die Sicherheitsisolation von Containern weist folgende Probleme auf:

  • Gemeinsame Kernel-Risiken: Alle Container teilen sich denselben Betriebssystem-Kernel, Kernel-Sicherheitslücken beeinflussen alle Container
  • Laufzeit-Sicherheitslücken: Sicherheitslücken in Container-Laufzeitsystemen (wie runc) können zu Container-Escapes führen
  • Konfigurationsfehlrisiken: Unsachgemäße Berechtigungskonfiguration erhöht Sicherheitsrisiken

Verwandte Arbeiten

Virtualisierungssicherheitsforschung

Diese Arbeit basiert auf der Entwicklung der Virtualisierungstechnologie, wobei Virtualisierungskonzepte seit den 1960er Jahren existieren, aber erst seit den 1990er Jahren zur Mainstream-Technologie wurden.

Container-Sicherheitsbedrohungsanalyse

Verwandte Forschungen konzentrieren sich hauptsächlich auf:

  1. Container-Isolationsmechanismen: Analyse der Isolationsdifferenzen zwischen Containern und traditioneller Virtualisierung
  2. Angriffsvektoridentifizierung: Identifizierung spezifischer Angriffsmethoden in Container-Umgebungen
  3. Sicherheitshärtungsmethoden: Vorschlag von Best-Practices für Container-Sicherheit

Vergleich der Beiträge dieser Arbeit

  • Systematisches Bedrohungsmodell: Im Vergleich zu bestehenden Forschungen bietet diese Arbeit eine umfassendere Container-Bedrohungsklassifizierung
  • Analyse tatsächlicher Fälle: Bereitstellung konkreter Sicherheitsbedrohungsnachweise durch Analyse echter CVE-Sicherheitslücken
  • Lebenszyklus-Perspektive: Analyse von Sicherheitsproblemen aus der Perspektive des Container-Erstellungslebenszyklus

Schlussfolgerungen und Diskussion

Hauptschlussfolgerungen

  1. Doppelschneidiges Schwert der OS-Level-Virtualisierung: Während sie eine leichte und effiziente Virtualisierungslösung bietet, bringt die gemeinsame Nutzung des Betriebssystem-Kernels Herausforderungen bei der Sicherheitsisolation mit sich
  2. Vielfalt der Bedrohungsvektoren: Container-Systeme sind mit Sicherheitsbedrohungen über den gesamten Lebenszyklus konfrontiert, von Image-Repositorys bis zu Laufzeitumgebungen
  3. Tatsächliche Sicherheitsrisiken: Die Analyse von CVE-Fällen bestätigt die reale Existenz schwerwiegender Sicherheitsbedrohungen wie Container-Escapes und Berechtigungserhöhungen
  4. Kontinuierliche Sicherheitsherausforderungen: Container-Sicherheit ist ein sich kontinuierlich entwickelndes Problem, das ständige Aktualisierungen der Schutzmaßnahmen erfordert

Empfehlungen für Sicherheits-Best-Practices

  1. Image-Sicherheit: Überprüfung von Container-Images, die aus öffentlichen Repositorys abgerufen werden, und Scannen auf potenzielle Sicherheitslücken
  2. Minimale Berechtigungen: Vermeidung unnötiger Berechtigungen für Container
  3. Zeitnahe Aktualisierungen: Aufrechterhaltung der neuesten Versionen von Container-Engine, Laufzeit, Tools und Drittanbieter-Komponenten
  4. Abhängigkeitsverwaltung: Sicherstellung, dass Abhängigkeiten keine bekannten Sicherheitslücken enthalten
  5. Sichere Kommunikation: Übertragung von Informationen zwischen Containern über sichere Verbindungen
  6. Sicherheitsscanning: Regelmäßiges Scannen von Container-Sicherheitslücken mit Sicherheitsskripten

Einschränkungen

  1. Forschungsumfang-Einschränkung: Hauptsächlich auf Docker-Container konzentriert, deckt keine anderen Container-Technologien ab (wie FreeBSD Jails, Solaris Zones)
  2. Bedrohungsmodell-Tiefe: Obwohl Hauptangriffsvektoren identifiziert wurden, ist die Diskussion spezifischer Schutzmaßnahmen für jeden Angriff nicht ausreichend tiefgehend
  3. Anzahl der Versuchsfälle: Nur zwei CVE-Fälle wurden analysiert, was möglicherweise nicht ausreicht, um die Komplexität von Container-Sicherheitsbedrohungen vollständig widerzuspiegeln
  4. Unzureichende quantitative Analyse: Fehlende quantitative Bewertung des Risikograds verschiedener Angriffsvektoren

Zukünftige Richtungen

Das Papier schlägt folgende Forschungsrichtungen vor:

  1. KI-gesteuerte Bedrohungserkennung: Integration von künstlicher Intelligenz zur Verbesserung der Widerstandsfähigkeit von containerisierten Systemen gegen neue Sicherheitslücken
  2. Sichere Kommunikationsprotokolle: Entwicklung sichererer Kommunikationsprotokolle zwischen Containern
  3. Optimierung für drahtlose Umgebungen: Optimierung von Container-Netzwerken für drahtlose Umgebungen
  4. Systemische Innovationen: Verbesserung der Ressourcenverteilung durch systemische Innovationen, um Leistung und Sicherheit in dynamischen verteilten Infrastrukturen zu gewährleisten

Tiefgehende Bewertung

Stärken

  1. Systematische Analyse: Bietet einen vollständigen Analysisrahmen von grundlegenden Konzepten bis zu tatsächlichen Bedrohungen
  2. Hoher praktischer Wert: Bedrohungsmodell und Sicherheitsempfehlungen haben Orientierungswert für tatsächliche Bereitstellungen
  3. Tiefgehende Fallanalyse: Bereitstellung konkreter technischer Details durch echte CVE-Sicherheitslücken
  4. Klare Struktur: Vernünftige Papierorganisation mit schrittweisem Fortschritt von Theorie zu Praxis
  5. Starke Aktualität: Analyse der neuesten Sicherheitslücken (CVE-2024-21626)

Mängel

  1. Begrenzte theoretische Beiträge: Hauptsächlich Zusammenfassung und Analyse bestehenden Wissens, fehlende originelle theoretische Beiträge
  2. Unzureichende experimentelle Validierung: Fehlende großflächige experimentelle Validierung der Effektivität des Bedrohungsmodells
  3. Fehlende quantitative Analyse: Keine Risikoquantifizierung verschiedener Angriffsvektoren
  4. Unzureichende Lösungstiefe: Obwohl Sicherheitsempfehlungen vorgeschlagen werden, fehlen konkrete technische Lösungen
  5. Schwache Vergleichsanalyse: Vergleichsanalyse mit anderen Container-Sicherheitsforschungen ist relativ schwach

Auswirkungen

  1. Akademischer Beitrag: Bietet einen systematischen Bedrohungsanalyserahmen für die Container-Sicherheitsforschung
  2. Praktischer Wert: Hat Orientierungswert für Container-Sicherheitspraktiken von Unternehmen und Entwicklern
  3. Pädagogischer Wert: Eignet sich als Referenzmaterial für Container-Sicherheitsunterricht
  4. Forschungsgrundlage: Legt den Grundstein für nachfolgende tiefgehende Container-Sicherheitsforschung

Anwendungsszenarien

  1. Unternehmens-Container-Bereitstellung: Bietet Referenzen für die Formulierung von Container-Sicherheitsrichtlinien durch Unternehmen
  2. Sicherheitsaudit: Dient als Checkliste für die Sicherheitsbewertung von Container-Systemen
  3. Bildung und Schulung: Wird für Container-Sicherheitsbewusstseinstraining und technische Schulung verwendet
  4. Forschungsausgangspunkt: Bietet einen grundlegenden Rahmen für tiefgehende Container-Sicherheitsforschung

Literaturverzeichnis

Das Papier zitiert 38 verwandte Literaturquellen, hauptsächlich einschließlich:

  • Klassische Betriebssystem-Lehrbücher (Tanenbaum & Bos, Modern Operating Systems)
  • Container-Sicherheits-Monographien (Rice, Container Security)
  • Wichtige Sicherheitslückenberichte (CVE-2024-21626, CVE-2022-0847)
  • Verwandte Forschungsarbeiten des Autorenteams in den Bereichen Sicherheit, KI und IoT

Gesamtbewertung: Dieses Papier bietet einen relativ umfassenden Analysisrahmen für die Sicherheit der OS-Level-Virtualisierung. Obwohl die theoretische Innovation begrenzt ist, hat es hohen Wert in Bezug auf Praktikabilität und Systematik und eignet sich als Einführungs- und Referenzmaterial im Bereich der Container-Sicherheit.