虚拟机安全机制sVirt ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Host Userspace
Host Userspace
Web Server
DNS Server
Host Kernel
Host Kernel
Host Hardware
Attack
Host Hardware
Local Network
ห้องสมุดไป่ตู้
After virtualization: Guest systems running on same server, possibly as same UID
Subjects can modify own security policy
Mandatory Access Control (MAC):
Subjects cannot bypass security policy
Virtualization Threat Model
(work in progress)
Guest Guest Kernel Kernel
virt_image_t:2
Future enhancements:
Different types of isolated guests virtd_isolated_webserver_t
Future enhancements:
Virtual network security Controlled flow between guests Distributed guest security Multilevel security
Related work:
Labeled NFS Labeled Networking XACE
Similar work:
XSM (port of Flask to Xen) Several proprietary schemes
Current status:
Low-level libvirt integration done Can launch labeled guest Basic label support in virsh
Improve security for Linux virtualization
Linux Virtualization:
Where the “hypervisor” is a normal Linux process
KVM Lguest UML
Host Userspace
Guest Userspace
sVirt v1.0:
Provide simple isolation of guests Zero configuration Debuggable
SELinux Policy:
Guests and resources uniquely labeled virtd_isolated_t:<UUID>
SELinux etc.
virsh
sVirt design:
Reuse of proven code and security models Coherent and complete system policy Reduced complexity and cost
sVirt design: Must be usable and useful with demonstrable value
Guest Userspace
Guest Userspace
Guest Kernel
Guest Kernel
Guest Kernel
Host Kernel
Host Hardware
Utilize existing process-based security mechanisms
DAC is not enough:
sVirt project page:
http://selinuxproject.org/page/SVirt
Questions...
Host Userspace virtd_isolated_t:1 virtd_isolated_t:2
Guest Web Server Userspace
Guest DNS Server Userspace
Guest Guest Kernel Kernel Host Kernel SELinux Host Hardware virt_image_t:1
SELinux Policy:
Coarse rules for all isolated guests applied to virtd_isolated_t
SELinux Policy:
For simple isolation: all accesses between different UUIDs are denied
Virtualization introduces new security risks
Flawed hypervisor: Malicious guest breaks out, attacks other guests or host
Before virtualization:
Systems were physically separated, damage limited to network attacks
Not theoretical Evolving field Potentially huge payoffs
sVirt in a nutshell:
Isolate guests using MAC security policy Contain hypervisor breaches
libvirt:
sVirt: Hardening Linux Virtualization with Mandatory Access Control
James Morris Red Hat Security Engineering
Linux.conf.au 2009 Hobart, Australia
Goal:
drivers
hypervisors storage security
host node hypervisor * guest guest guest * API * * storage virt-manager
* security labels
Xen KVM OpenVZ LXC UML
iSCSI NFS logical fs disk
Virtualization API by Daniel Veillard Abstraction layer for managing different virt schemes Xen, KVM, LXC, OpenVZ
Simplified libvirt architecture
drivers
hypervisors storage
host node hypervisor
Xen KVM OpenVZ LXC UML
iSCSI NFS logical fs disk guest guest guest
API
storage virsh virt-manager
sVirt design: Pluggable security framework for libvirt Supports MAC security schemes (SELinux, SMACK)
Host Kernel
Host Hardware
memory, storage, etc.
Malicious or compromised guests can now attack other guests via local mechanisms
Hypervisor vulnerabilities:
Host Userspace Guest Userspace Guest Userspace
Guest Web Server Userspace
Guest DNS Server Userspace
Guest Guest Kernel Kernel
local exploits
Guest Guest Kernel Kernel
sVirt design:
Security “driver” manages MAC labeling of guests and resources MAC policy enforced by host kernel
Simplified libvirt architecture w/ SVirt