BSI Sicherheitskongress 2005 shype: Hypervisor Security Architecture Reiner Sailer Secure Systems Department IBM T. J. Watson Research Center, NY IBM May 2005 2002 IBM Corporation 2005 IBM Corporation
Gliederung Sicherheitsproblem Wie hilft Virtualisierungs-Infrastruktur? Neues (einfacher lösbares) Sicherheitsproblem Eine Lösung: shype Sicherheitsarchitektur 2
Sicherheitsproblem Benutzerfreundlichkeit, Komfort, Funktionsvielfalt, viele Einstellungen Hohe Software-Komplexität Hoch-dynamisch (neue Features ) Sicherheitsgarantien Niedrige Software-Komplexität (Inspektion, Fehler = x/1000 LOC) Langlebig (einfach nachführbar) Lösung: Unterschiedlich sensitive Workloads laufen auf demselben sicher isoliert voneinander ab. Problem: Erfordert sicheres funktionsreiches (ungelöstes Problem). 3
Virtualisierung: Der Virtual Machine Monitor (VMM) Virtuelle Maschine Virtuelle Maschine Virtuelle Maschine Virtuelle Maschine (VM) Dünne Schicht Zuverlässig Isolierte Ressourcen VM Management Hypervisor (Hardware Virtualisierung, Isolation) System Hardware (Reale Maschine) 4
Warum Virtualisierung? Virtualisierung spart Geld Server-Bereich: Consolidation: bessere Auslastung von Systemen, 20% >80% Provisioning/Workload Balancing: automatisiert Management und Verteilung von Nutzlasten Client-Bereich: Consolidation: erlaubt Ablaufen mehrerer e auf einer einzigen System-Hardware unterschiedlich sensitive Workloads laufen isoliert in unterschiedlichen en ab 5
Neues (einfacher lösbares) Sicherheitsproblem Einfacher lösbares Sicherheitsproblem (und (und Kern Kern dieses dieses Vortrags): Wie Wie verhindern wir wir Auswirkungen von von Einbrüchen und und Missverhalten in in einem einem auf auf andere andere lokal lokal ablaufende e? Gegeben: Isolation von virtuellen Ressourcen gegeneinander: lokale e können sich nur beeinflussen, wenn sie Ressourcen gemeinsam Nutzen (Informationsfluss) shype kontrolliert das gemeinsame Nutzen von Ressourcen zwischen en (VMs) auf Hypervisor-Ebene 6
shype Ein Geschichteter Sicherheitsansatz Policy - Durchsetzung Sichere Dienste Sichere Dienste Middleware / z.b. Web Services Policy : Intra-VM Policy z.b. SELinux, Type Enforcement, Role-Based Access Control Sicherer Hypervisor shype: Inter-VM Policy z.b., Chinese Wall, TE, (MLS) Hardware 7
Gliederung Sicherheitsproblem Wie hilft Virtualisierungs-Infrastruktur? Neues (einfacher lösbares) Sicherheitsproblem Eine Lösung: shype Sicherheitsarchitektur schafft nachhaltig abgrenzbare Laufzeit-Umgebungen 8
Sichere Hypervisor Funktionen I Policy-Mgmt, Audit, Monitoring, Sicherheits- Dienste Sicherheits- Policy Manager Dienste Sichere (isolierte) Dienste Ressourcen Kontrolle Zugriffskontrolle zwischen VMs Sicherer Hypervisor ACM Isolation zwischen VMs Hardware TPM-basierte Attestierung 10
Sichere Hypervisor Funktionen II Flexible Architektur Unterstützt unterschiedliche Policy-Mgmt, Sicherheits-Policies Audit, Monitoring, Sicherer Hypervisor Hardware Hypervisor Sicherheits Hooks Sicherheits- Dienste Callbacks Sicherheits- Policy Manager Dienste ACM Access Sichere Control (isolierte) Module Dienste (ACM) Fällt Entscheidungen Ressourcen Kontrolle Hypervisor Instrumentierung mit Callbacks Zugriffskontrolle in das ACM zwischen VMs Kontrolliert inter-vm Ressourcen Setzt Entscheidungen des ACM Isolation durch zwischen VMs Unterstützte TPM-basierte Plattformen Attestierung Xen/OpenHype, PHYP 11
shype Architektur-Bausteine Sicherheits-Policies angepasst an den Bedarf auf VM-Ebene Chinese Wall Policy: Autorisierung des Startens von en (Workloads) Type Enforcement Policy: Autorisierung der Ressourcen-Teilung zwischen en Sicherheits-Management Sicherheits-Durchsetzung 12
13 TypeEnforcement Kontrolliert Nutzung gemeinsamer Ressourcen Virtuelle Maschine Festplattenspeicher Policy- Management Bid@ebay Online-Banking Textverarbeitung VBD ActiveX&Freunde ACM Hypervisor / shype System Hardware
shype Architektur-Bausteine Sicherheits-Policies Sicherheits-Management Nahtlose Integration in existierende Virtualisierungsinfrastruktur Sicherheits-Durchsetzung 14
Etablierung einer Sicherheits-Policy Source Policy Definitions-File Hypervisor Sichere Dienste VM 1. Policy- Manager 2. Binary Sicherheits-Policy Zugriffskontrollmodul (ACM) Vertraut (TCB) 1. Policy-Management außerhalb des Hypervisors minimiert Sicherheits-Code im Hypervisor (P-Mgmt nicht notwendig zum Betrieb) 2. Binäre Policy im Hypervisor vereinfacht Zugriffskontrolle im Hypervisor 15
shype Architektur-Bausteine Sicherheits-Policies Sicherheits-Management Sicherheits-Durchsetzung Autorisierung während des ersten Zugriffs auf Ressourcen ( Bind-time Authorization ) 16
Autorisierung während des Bindens von Ressourcen (TE) Gemeinsame Ressourcen Entziehung Policy von Ressourcen Änderung VM A VM B VM A VM B SSID SSID SSID SSID Zugriff auf Virtuelle Festplatte (event_channel shared_memory) Entziehung X Callback shype Kontrolle 17
shype: Bind-time Authorization Vorteile + grob-granulare, einfache, Maschinen-unabhängige Policies + minimale Code-Schnittstelle (in nicht-optimierten Code-Teilen) + vernachlässigbare Leistungsverminderung (<1%) Nachteile - Entzug von Ressourcen kann komplex sein (Shared Memory) 18
Implementierung shype ist integraler Bestandteil der Virtualisierung, nicht optional Größe: 3K Lines Of Code Policies: Null (Default), Chinese Wall, und Type Enforcement Policy Verfügbarkeit: Xen Mailing Liste (xen-devel@lists.xensource.com) 19
Zusammenfassung shype integriert sich nahtlos in die Hardware-Virtualisierung Ideal für die Abgrenzung von lokalen en (inter-vm) Safety-Net für Sicherheitsprobleme in en Gegenwärtige Arbeit im Zugriffskontroll-Bereich shype-unterstützung mehrerer realer Systeme (Cluster, Server Farm) Erhaltung der Sicherheitsgarantien während der Migration von VMs Weitere Informationen http://www.research.ibm.com/secure_systems_department sailer@us.ibm.com 20