SlideShare uma empresa Scribd logo
1 de 28
Baixar para ler offline
Intro      Network path       Bootloader    Device model   Xen   Conclusion




        Securing your cloud with Xen’s advanced security
                            features

                                  George Dunlap


                          Brussels – February 2-3, 2013
Intro             Network path     Bootloader              Device model                Xen       Conclusion



Intro



              Xen is an enterprise-grade Type I hypervisor
              Built for the Cloud before it was called the Cloud
              A number of advanced security features
                      Driver domains, stub domains, FLASK, &c
              Most of them aren’t or can’t be turned on by default
              Although simple to use, sometimes seem complicated




  Brussels – February 2-3, 2013      Securing your cloud with Xen’s advanced security features       2 / 28
Intro             Network path    Bootloader              Device model                Xen       Conclusion



Goal




              Tools to think about security in Xen
              Know some key security features of Xen
              Equipped with the knowledge to get them working




  Brussels – February 2-3, 2013     Securing your cloud with Xen’s advanced security features       3 / 28
Intro             Network path     Bootloader              Device model                Xen       Conclusion



Outline



              Overview of the Xen architecture
              Brief introduction to principles of security analysis
              Consider some attack surfaces and Xen features we can use to
              mitigate them
                      Driver domains
                      pvgrub
                      stub domains
                      PV vs HVM
                      FLASK example policy




  Brussels – February 2-3, 2013      Securing your cloud with Xen’s advanced security features       4 / 28
Intro             Network path              Bootloader              Device model                Xen       Conclusion



Xen Architecture

        dom 0           device model
                        (qemu)

                        toolstack
                                                  Paravirtualized                Fully
                                                       (PV)
                                                                              Virtualized
                                                     Domain                     (HVM)
           Hardware               netback           netfront                   Domain
           Drivers                blkback           blkfront




                                                                   Xen Hypervisor

           I/O Devices                CPU                 Memory                Hardware


  Brussels – February 2-3, 2013               Securing your cloud with Xen’s advanced security features       5 / 28
Intro             Network path       Bootloader              Device model                Xen       Conclusion



Security Overview



              Threat Model
                      Attacker can access network
                      Attacker controls one guest OS
              Security considerations
                      How much code is accessible?
                      What is the interface like? (e.g., pointers vs scalars)
                      Defense-in-depth




  Brussels – February 2-3, 2013        Securing your cloud with Xen’s advanced security features       6 / 28
Intro             Network path     Bootloader              Device model                Xen       Conclusion



Example System



              Hardware setup
                      Two networks: control network, guest network
                      IOMMU with interrupt remapping (AMD or Intel VT-d v2)
              Default conïŹguration
                      Network drivers in dom0
                      PV guests with pygrub
                      HVM guests with qemu running in domain 0




  Brussels – February 2-3, 2013      Securing your cloud with Xen’s advanced security features       7 / 28
Intro             Network path              Bootloader              Device model                Xen       Conclusion



Attack surface: Network path

                        dom 0        toolstack                  Domain

                                                               netfront

                          iptables       bridge
                                                                Rogue
                                                                Domain
                          NIC            netback               netfront
                          Driver




                                                                      Xen Hypervisor

                           Control NIC   Guest NIC                              Hardware

              How to break in?
                      Bugs in hardware driver
                      Bugs in bridging / ïŹltering
                      Bugs in netback via the ring protocol

  Brussels – February 2-3, 2013               Securing your cloud with Xen’s advanced security features       8 / 28
Intro             Network path              Bootloader              Device model                Xen       Conclusion



Attack surface: Network path

                        dom 0        toolstack                  Domain

                                                               netfront

                          iptables       bridge
                                                                Rogue
                                                                Domain
                          NIC            netback               netfront
                          Driver




                                                                      Xen Hypervisor

                           Control NIC   Guest NIC                              Hardware

              What does it buy you?
                      Control of domain 0 kernel
                      Pretty much control of the whole system


  Brussels – February 2-3, 2013               Securing your cloud with Xen’s advanced security features       9 / 28
Intro             Network path             Bootloader              Device model                Xen       Conclusion



Security feature: Driver Domains

                        dom 0
                                                                                    Domain
                         toolstack
                                                                                   netfront
                                               Driver Domain
                                                iptables         bridge
                                                                                    Rogue
                                                                                    Domain
                          NIC                                                      netfront
                                                NIC              netback
                          Driver                Driver



                                                                     Xen Hypervisor

                           Control NIC   Guest NIC                             Hardware
              What is it?
                      Unprivileged VM which drives hardware, provides access to
                      guests


  Brussels – February 2-3, 2013              Securing your cloud with Xen’s advanced security features      10 / 28
Intro             Network path             Bootloader              Device model                Xen       Conclusion



Security feature: Driver Domains

                        dom 0
                                                                                    Domain
                         toolstack
                                                                                   netfront
                                               Driver Domain
                                                iptables         bridge
                                                                                    Rogue
                                                                                    Domain
                          NIC                                                      netfront
                                                NIC              netback
                          Driver                Driver



                                                                     Xen Hypervisor

                           Control NIC   Guest NIC                             Hardware
              Now an exploit buys you:
                      Control of a PV VM (PV hypercall interface)
                      Guest network traïŹƒc
                      Control of NIC
                      Opportunity to attack netfront of other guests
  Brussels – February 2-3, 2013              Securing your cloud with Xen’s advanced security features      11 / 28
Intro             Network path      Bootloader              Device model                Xen       Conclusion



HowTo: Driver Domains

              Create a VM with appropriate drivers
                      Any distro supporting dom0 should do
              Install the xen-related hotplug scripts
                      Just installing the xen tools in the VM is usually good enough
              Give the VM access to the physical NIC with PCI pass-through
              ConïŹgure the network topology in the driver domain
                      Just like you would for dom0
              ConïŹgure the guest vif to use the new domain ID
                      Add backend=domnet to vif declaration

        vif = [ ’type=pv, bridge=xenbr0, backend=domnet’ ]

              http://wiki.xen.org/wiki/Driver Domain


  Brussels – February 2-3, 2013       Securing your cloud with Xen’s advanced security features      12 / 28
Intro             Network path            Bootloader              Device model                Xen       Conclusion



Attack surface: Pygrub

                                  dom 0   toolstack
                                              domain
                                              builder

                                                                      Paravirtualized
                                              pygrub                       (PV)
                                                                         Domain
                                                                       guest
                                                                       disk



                                                       Xen Hypervisor
              What is it?
                      grub implementation for PV guests
                      Python program running in domain 0
                      Reads guest FS, parses grub.conf, presents menu
                      Passes resulting kernel image to domain builder
  Brussels – February 2-3, 2013             Securing your cloud with Xen’s advanced security features      13 / 28
Intro             Network path            Bootloader              Device model                Xen       Conclusion



Attack surface: Pygrub

                                  dom 0   toolstack
                                              domain
                                              builder

                                                                      Paravirtualized
                                              pygrub                       (PV)
                                                                         Domain
                                                                       guest
                                                                       disk



                                                       Xen Hypervisor
              How to break in?
                      Bugs in ïŹle system parser
                      Bugs in menu parser
                      Bugs in domain builder

  Brussels – February 2-3, 2013             Securing your cloud with Xen’s advanced security features      14 / 28
Intro             Network path             Bootloader              Device model                Xen       Conclusion



Attack surface: Pygrub

                                  dom 0    toolstack
                                               domain
                                               builder

                                                                       Paravirtualized
                                               pygrub                       (PV)
                                                                          Domain
                                  kernel                                guest
                                                                        disk



                                                        Xen Hypervisor
              What does it buy you?
                      Control of domain 0 user space
                      Pretty much control of the whole system


  Brussels – February 2-3, 2013              Securing your cloud with Xen’s advanced security features      15 / 28
Intro             Network path             Bootloader              Device model                Xen       Conclusion



Security practice: Fixed kernels

                                  dom 0      toolstack
                                  kernel       domain
                                  image        builder

                                                                       Paravirtualized
                                                                            (PV)
                                                                          Domain
                                                                        guest
                                                                        disk



                                                        Xen Hypervisor
              What is it?
                      Passing a known-good kernel from domain 0
              Removes attacker avenue to domain builder

  Brussels – February 2-3, 2013              Securing your cloud with Xen’s advanced security features      16 / 28
Intro             Network path             Bootloader              Device model                Xen       Conclusion



Security practice: Fixed kernels

                                  dom 0      toolstack
                                  kernel       domain
                                  image        builder

                                                                       Paravirtualized
                                                                            (PV)
                                                                          Domain
                                                                        guest
                                                                        disk



                                                        Xen Hypervisor
              Disadvantages
                      Host admin must keep up with kernel updates
                      Guest admin can’t pass kernel parameters, custom kernels,


  Brussels – February 2-3, 2013              Securing your cloud with Xen’s advanced security features      17 / 28
Intro             Network path            Bootloader              Device model                Xen       Conclusion



Security feature: pvgrub

                                  dom 0     toolstack
                                              domain
                                              builder
                                                                          pvgrub

                                                                           MiniOS
                                                                        guest
                                                                        disk



                                                       Xen Hypervisor
              What is it?
                      MiniOS + pv port of grub running in a guest context
                      PV equivalent of HVM “BIOS + grub”
              Now an exploit buys you:
                      Control of your own VM
  Brussels – February 2-3, 2013             Securing your cloud with Xen’s advanced security features      18 / 28
Intro             Network path     Bootloader              Device model                Xen       Conclusion



HowTo: pvgrub


              Make sure that you have the pvgrub image
                      pvgrub-$ARCH.gz
                      Normally lives in /usr/lib/xen/boot
                      Included in Fedora Xen packages
                      Debian-based: need to build yourself
              Use appropriate pvgrub as bootloader in guest conïŹg

        kernel="/usr/lib/xen/boot/pvgrub-x86_32.gz"

              http://wiki.xen.org/wiki/Pvgrub




  Brussels – February 2-3, 2013      Securing your cloud with Xen’s advanced security features      19 / 28
Intro             Network path      Bootloader              Device model                Xen       Conclusion



Attack surface: Device model (qemu)




              How to break in?
                      Bugs in NIC emulator parsing packets
                      Bugs in emulation of virtual devices
              What does it buy you?
                      Domain 0 privileged userspace
                      Pretty much control of the whole system




  Brussels – February 2-3, 2013       Securing your cloud with Xen’s advanced security features      20 / 28
Intro             Network path      Bootloader              Device model                Xen       Conclusion



Security feature: qemu stub domains



              What is it?
                      Stub domain: a small “service” domain running just one
                      application
                      qemu stub domain: run each qemu in its own domain
              Now an exploit buys you:
                      Control of the stubom VM
                      ...which we assume you control




  Brussels – February 2-3, 2013       Securing your cloud with Xen’s advanced security features      21 / 28
Intro             Network path     Bootloader              Device model                Xen       Conclusion



HowTo: qemu stub domains


              Make sure that you have the pvgrub image:
                      ioemu-$ARCH.gz
                      Normally lives in /usr/lib/xen/boot
                      Included in Fedora Xen packages
                      Debian-based: need to build yourself
              Specify stub domains in your guest conïŹg

        device_model_stubdomain_override = 1

              http://wiki.xen.org/wiki/Device Model Stub Domains




  Brussels – February 2-3, 2013      Securing your cloud with Xen’s advanced security features      22 / 28
Intro             Network path        Bootloader              Device model                Xen       Conclusion



Attack Surface: Xen



              PV guests
                      PV Hypercalls
              HVM guests
                      HVM hypercalls (Subset of PV hypercalls)
                      Instruction emulation (MMIO, shadow pagetables)
                      Emulated platform devices: APIC, HPET, PIT
                      Nested virtualization
              Security practice: Use PV VMs




  Brussels – February 2-3, 2013         Securing your cloud with Xen’s advanced security features      23 / 28
Intro             Network path       Bootloader              Device model                Xen       Conclusion



Security feature: FLASK example policy

              What is FLASK?
                      Xen Security Module (XSM): Xen equivalent of LSM
                      FLASK: Framework for XSM developed by NSA
                      Xen Equivalent of SELinux
                      Uses same concepts, tools as SELinux
                      Allows a policy to restrict hypercalls
              What can FLASK do?
                      Basic: Restricts hypercalls to those needed by a particular
                      guest
                      Advanced: Allows more ïŹne-grained granting of privileges
              FLASK example policy
                      This contains example roles for dom0, domU, stub domains,
                      driver domains, &c



  Brussels – February 2-3, 2013        Securing your cloud with Xen’s advanced security features      24 / 28
Intro             Network path    Bootloader              Device model                Xen       Conclusion



HowTo: Use the example FLASK policy


              Build Xen with XSM enabled
              Build the example policy
              Add the appropriate label to guest conïŹg ïŹles
                      seclabel=[foo]
                      stubdom label=[foo]
              WARNING: In 4.2, the example policy not extensively tested.
              Use with care!
              http://wiki.xen.org/wiki/Xen Security Modules : XSM-
              FLASK




  Brussels – February 2-3, 2013     Securing your cloud with Xen’s advanced security features      25 / 28
Intro             Network path     Bootloader                Device model                Xen       Conclusion



Outline



              Overview of the Xen architecture
              Brief introduction to principles of security analysis
              Consider some attack surfaces and Xen features we can use to
              mitigate them
                      Driver domains
                      pvgrub
                      stub domains
                      PV vs HVM
              Experimental: Example policy for FLASK




  Brussels – February 2-3, 2013        Securing your cloud with Xen’s advanced security features      26 / 28
Intro             Network path    Bootloader              Device model                Xen       Conclusion



Goal




              Tools to think about security in Xen
              Know some key security features of Xen
              Equipped with the knowledge to get them working




  Brussels – February 2-3, 2013     Securing your cloud with Xen’s advanced security features      27 / 28
Intro             Network path    Bootloader              Device model                Xen       Conclusion



Questions




                                         Questions?

        More info at http://wiki.xen.org/wiki/Securing Xen
        Check out our blog: http://blog.xen.org/




  Brussels – February 2-3, 2013     Securing your cloud with Xen’s advanced security features      28 / 28

Mais conteĂșdo relacionado

Mais procurados

Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)
Wan Leung Wong
 
Embedded Linux from Scratch to Yocto
Embedded Linux from Scratch to YoctoEmbedded Linux from Scratch to Yocto
Embedded Linux from Scratch to Yocto
Sherif Mousa
 

Mais procurados (20)

Virtualization Technology Overview
Virtualization Technology OverviewVirtualization Technology Overview
Virtualization Technology Overview
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
 
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
 
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
 
Kvm virtualization platform
Kvm virtualization platformKvm virtualization platform
Kvm virtualization platform
 
VMware
VMwareVMware
VMware
 
Xen Hypervisor
Xen HypervisorXen Hypervisor
Xen Hypervisor
 
Embedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernelEmbedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernel
 
Embedded Hypervisor for ARM
Embedded Hypervisor for ARMEmbedded Hypervisor for ARM
Embedded Hypervisor for ARM
 
ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)
 
XPDDS17: PVH Dom0: The Road so Far - Roger Pau Monné, Citrix
XPDDS17: PVH Dom0: The Road so Far - Roger Pau Monné, CitrixXPDDS17: PVH Dom0: The Road so Far - Roger Pau Monné, Citrix
XPDDS17: PVH Dom0: The Road so Far - Roger Pau Monné, Citrix
 
Virtualization Architecture & KVM
Virtualization Architecture & KVMVirtualization Architecture & KVM
Virtualization Architecture & KVM
 
The kvm virtualization way
The kvm virtualization wayThe kvm virtualization way
The kvm virtualization way
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022
 
Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)
 
Embedded Linux from Scratch to Yocto
Embedded Linux from Scratch to YoctoEmbedded Linux from Scratch to Yocto
Embedded Linux from Scratch to Yocto
 
2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update
 
Red Bend Software: Separation Using Type-1 Virtualization in Vehicles and Aut...
Red Bend Software: Separation Using Type-1 Virtualization in Vehicles and Aut...Red Bend Software: Separation Using Type-1 Virtualization in Vehicles and Aut...
Red Bend Software: Separation Using Type-1 Virtualization in Vehicles and Aut...
 
BusyBox for Embedded Linux
BusyBox for Embedded LinuxBusyBox for Embedded Linux
BusyBox for Embedded Linux
 
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsXen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
 

Destaque

LinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and BeyondLinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and Beyond
The Linux Foundation
 
Đ§Ń‚ĐŸ таĐșĐŸĐ” OpenStack
Đ§Ń‚ĐŸ таĐșĐŸĐ” OpenStackĐ§Ń‚ĐŸ таĐșĐŸĐ” OpenStack
Đ§Ń‚ĐŸ таĐșĐŸĐ” OpenStack
Ilya Alekseyev
 
Đ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstack
Đ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstackĐ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstack
Đ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstack
Mirantis
 
Windsor: Domain 0 Disaggregation for XenServer and XCP
	Windsor: Domain 0 Disaggregation for XenServer and XCP	Windsor: Domain 0 Disaggregation for XenServer and XCP
Windsor: Domain 0 Disaggregation for XenServer and XCP
The Linux Foundation
 
Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0
The Linux Foundation
 
Network and network security
Network and network securityNetwork and network security
Network and network security
Ruchi Gupta
 
Why is email security important?
Why is email security important?Why is email security important?
Why is email security important?
NeoCertified
 

Destaque (20)

Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP
 
Linaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMLinaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARM
 
LinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and BeyondLinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and Beyond
 
Đ§Ń‚ĐŸ таĐșĐŸĐ” OpenStack
Đ§Ń‚ĐŸ таĐșĐŸĐ” OpenStackĐ§Ń‚ĐŸ таĐșĐŸĐ” OpenStack
Đ§Ń‚ĐŸ таĐșĐŸĐ” OpenStack
 
Đ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstack
Đ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstackĐ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstack
Đ”Đ”ĐŒĐŸ ŃƒŃŃ‚Đ°ĐœĐŸĐČĐșĐž OpenStack с ĐżĐŸĐŒĐŸŃ‰ŃŒŃŽ devstack
 
Windsor: Domain 0 Disaggregation for XenServer and XCP
	Windsor: Domain 0 Disaggregation for XenServer and XCP	Windsor: Domain 0 Disaggregation for XenServer and XCP
Windsor: Domain 0 Disaggregation for XenServer and XCP
 
Performance Tuning Xen
Performance Tuning XenPerformance Tuning Xen
Performance Tuning Xen
 
АрхОтДĐșтура OpenStack
АрхОтДĐșтура OpenStackАрхОтДĐșтура OpenStack
АрхОтДĐșтура OpenStack
 
Xen and Client Virtualization: the case of XenClient XT
Xen and Client Virtualization: the case of XenClient XTXen and Client Virtualization: the case of XenClient XT
Xen and Client Virtualization: the case of XenClient XT
 
Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0
 
Xen Project Contributor Training Part2 : Processes and Conventions v1.1
Xen Project Contributor Training Part2 : Processes and Conventions v1.1Xen Project Contributor Training Part2 : Processes and Conventions v1.1
Xen Project Contributor Training Part2 : Processes and Conventions v1.1
 
Xen 4.3 Roadmap
Xen 4.3 RoadmapXen 4.3 Roadmap
Xen 4.3 Roadmap
 
Network and network security
Network and network securityNetwork and network security
Network and network security
 
Nymble: Blocking System
Nymble: Blocking SystemNymble: Blocking System
Nymble: Blocking System
 
LCEU13: Securing your cloud with Xen's advanced security features - George Du...
LCEU13: Securing your cloud with Xen's advanced security features - George Du...LCEU13: Securing your cloud with Xen's advanced security features - George Du...
LCEU13: Securing your cloud with Xen's advanced security features - George Du...
 
Network Security
Network SecurityNetwork Security
Network Security
 
LF Collaboration Summit: Xen Project 4 4 Features and Futures
LF Collaboration Summit: Xen Project 4 4 Features and FuturesLF Collaboration Summit: Xen Project 4 4 Features and Futures
LF Collaboration Summit: Xen Project 4 4 Features and Futures
 
Xen Project: Windows PV Drivers
Xen Project: Windows PV DriversXen Project: Windows PV Drivers
Xen Project: Windows PV Drivers
 
Why is email security important?
Why is email security important?Why is email security important?
Why is email security important?
 
Email security
Email securityEmail security
Email security
 

Semelhante a Securing your cloud with Xen's advanced security features

ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
The Linux Foundation
 
GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...
GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...
GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...
Yury Chemerkin
 
Fosdem 18: Securing embedded Systems using Virtualization
Fosdem 18: Securing embedded Systems using VirtualizationFosdem 18: Securing embedded Systems using Virtualization
Fosdem 18: Securing embedded Systems using Virtualization
The Linux Foundation
 
Virtualization in the Cloud @ Build a Cloud Day SFO May 2012
Virtualization in the Cloud @ Build a Cloud Day SFO May 2012Virtualization in the Cloud @ Build a Cloud Day SFO May 2012
Virtualization in the Cloud @ Build a Cloud Day SFO May 2012
The Linux Foundation
 

Semelhante a Securing your cloud with Xen's advanced security features (20)

Securing Your Cloud with Xen (CloudOpen NA 2013)
Securing Your Cloud with Xen (CloudOpen NA 2013)Securing Your Cloud with Xen (CloudOpen NA 2013)
Securing Your Cloud with Xen (CloudOpen NA 2013)
 
Xen Community Update 2011
Xen Community Update 2011Xen Community Update 2011
Xen Community Update 2011
 
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
 
GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...
GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...
GaweƂ mikoƂajczyk. holistic identity based networking approach – an irreducib...
 
Fosdem 18: Securing embedded Systems using Virtualization
Fosdem 18: Securing embedded Systems using VirtualizationFosdem 18: Securing embedded Systems using Virtualization
Fosdem 18: Securing embedded Systems using Virtualization
 
Nos Windows
Nos WindowsNos Windows
Nos Windows
 
LCC17 - Securing Embedded Systems with the Hypervisor - Lars Kurth, Citrix
LCC17 - Securing Embedded Systems with the Hypervisor - Lars Kurth, CitrixLCC17 - Securing Embedded Systems with the Hypervisor - Lars Kurth, Citrix
LCC17 - Securing Embedded Systems with the Hypervisor - Lars Kurth, Citrix
 
XS Boston 2008 XenLoop
XS Boston 2008 XenLoopXS Boston 2008 XenLoop
XS Boston 2008 XenLoop
 
Xen & the Art of Virtualization
Xen & the Art of VirtualizationXen & the Art of Virtualization
Xen & the Art of Virtualization
 
Networking in Docker EE 2.0 with Kubernetes and Swarm
Networking in Docker EE 2.0 with Kubernetes and SwarmNetworking in Docker EE 2.0 with Kubernetes and Swarm
Networking in Docker EE 2.0 with Kubernetes and Swarm
 
Networking in docker ee with kubernetes and swarm
Networking in docker ee with kubernetes and swarmNetworking in docker ee with kubernetes and swarm
Networking in docker ee with kubernetes and swarm
 
Automating CloudStack with Puppet - David Nalley
Automating CloudStack with Puppet - David NalleyAutomating CloudStack with Puppet - David Nalley
Automating CloudStack with Puppet - David Nalley
 
Virtualization in the cloud
Virtualization in the cloudVirtualization in the cloud
Virtualization in the cloud
 
Virtualization in the Cloud @ Build a Cloud Day SFO May 2012
Virtualization in the Cloud @ Build a Cloud Day SFO May 2012Virtualization in the Cloud @ Build a Cloud Day SFO May 2012
Virtualization in the Cloud @ Build a Cloud Day SFO May 2012
 
Automating Your CloudStack Cloud with Puppet
Automating Your CloudStack Cloud with PuppetAutomating Your CloudStack Cloud with Puppet
Automating Your CloudStack Cloud with Puppet
 
OSSNA18: Xen Beginners Training
OSSNA18: Xen Beginners Training OSSNA18: Xen Beginners Training
OSSNA18: Xen Beginners Training
 
Ina Pratt Fosdem Feb2008
Ina Pratt Fosdem Feb2008Ina Pratt Fosdem Feb2008
Ina Pratt Fosdem Feb2008
 
Dealing with Hardware Heterogeneity Using EmbeddedXEN, a Virtualization Frame...
Dealing with Hardware Heterogeneity Using EmbeddedXEN, a Virtualization Frame...Dealing with Hardware Heterogeneity Using EmbeddedXEN, a Virtualization Frame...
Dealing with Hardware Heterogeneity Using EmbeddedXEN, a Virtualization Frame...
 
Ian Prattlinuxworld Xen Aug2008
Ian Prattlinuxworld Xen Aug2008Ian Prattlinuxworld Xen Aug2008
Ian Prattlinuxworld Xen Aug2008
 
LOAD BALANCING OF APPLICATIONS USING XEN HYPERVISOR
LOAD BALANCING OF APPLICATIONS  USING XEN HYPERVISORLOAD BALANCING OF APPLICATIONS  USING XEN HYPERVISOR
LOAD BALANCING OF APPLICATIONS USING XEN HYPERVISOR
 

Mais de The Linux Foundation

Mais de The Linux Foundation (20)

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather Report
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
 
XPDDS19: Core Scheduling in Xen - JĂŒrgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - JĂŒrgen Groß, SUSEXPDDS19: Core Scheduling in Xen - JĂŒrgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - JĂŒrgen Groß, SUSE
 
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityXPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
 

Último (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Securing your cloud with Xen's advanced security features

  • 1. Intro Network path Bootloader Device model Xen Conclusion Securing your cloud with Xen’s advanced security features George Dunlap Brussels – February 2-3, 2013
  • 2. Intro Network path Bootloader Device model Xen Conclusion Intro Xen is an enterprise-grade Type I hypervisor Built for the Cloud before it was called the Cloud A number of advanced security features Driver domains, stub domains, FLASK, &c Most of them aren’t or can’t be turned on by default Although simple to use, sometimes seem complicated Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 2 / 28
  • 3. Intro Network path Bootloader Device model Xen Conclusion Goal Tools to think about security in Xen Know some key security features of Xen Equipped with the knowledge to get them working Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 3 / 28
  • 4. Intro Network path Bootloader Device model Xen Conclusion Outline Overview of the Xen architecture Brief introduction to principles of security analysis Consider some attack surfaces and Xen features we can use to mitigate them Driver domains pvgrub stub domains PV vs HVM FLASK example policy Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 4 / 28
  • 5. Intro Network path Bootloader Device model Xen Conclusion Xen Architecture dom 0 device model (qemu) toolstack Paravirtualized Fully (PV) Virtualized Domain (HVM) Hardware netback netfront Domain Drivers blkback blkfront Xen Hypervisor I/O Devices CPU Memory Hardware Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 5 / 28
  • 6. Intro Network path Bootloader Device model Xen Conclusion Security Overview Threat Model Attacker can access network Attacker controls one guest OS Security considerations How much code is accessible? What is the interface like? (e.g., pointers vs scalars) Defense-in-depth Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 6 / 28
  • 7. Intro Network path Bootloader Device model Xen Conclusion Example System Hardware setup Two networks: control network, guest network IOMMU with interrupt remapping (AMD or Intel VT-d v2) Default conïŹguration Network drivers in dom0 PV guests with pygrub HVM guests with qemu running in domain 0 Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 7 / 28
  • 8. Intro Network path Bootloader Device model Xen Conclusion Attack surface: Network path dom 0 toolstack Domain netfront iptables bridge Rogue Domain NIC netback netfront Driver Xen Hypervisor Control NIC Guest NIC Hardware How to break in? Bugs in hardware driver Bugs in bridging / ïŹltering Bugs in netback via the ring protocol Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 8 / 28
  • 9. Intro Network path Bootloader Device model Xen Conclusion Attack surface: Network path dom 0 toolstack Domain netfront iptables bridge Rogue Domain NIC netback netfront Driver Xen Hypervisor Control NIC Guest NIC Hardware What does it buy you? Control of domain 0 kernel Pretty much control of the whole system Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 9 / 28
  • 10. Intro Network path Bootloader Device model Xen Conclusion Security feature: Driver Domains dom 0 Domain toolstack netfront Driver Domain iptables bridge Rogue Domain NIC netfront NIC netback Driver Driver Xen Hypervisor Control NIC Guest NIC Hardware What is it? Unprivileged VM which drives hardware, provides access to guests Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 10 / 28
  • 11. Intro Network path Bootloader Device model Xen Conclusion Security feature: Driver Domains dom 0 Domain toolstack netfront Driver Domain iptables bridge Rogue Domain NIC netfront NIC netback Driver Driver Xen Hypervisor Control NIC Guest NIC Hardware Now an exploit buys you: Control of a PV VM (PV hypercall interface) Guest network traïŹƒc Control of NIC Opportunity to attack netfront of other guests Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 11 / 28
  • 12. Intro Network path Bootloader Device model Xen Conclusion HowTo: Driver Domains Create a VM with appropriate drivers Any distro supporting dom0 should do Install the xen-related hotplug scripts Just installing the xen tools in the VM is usually good enough Give the VM access to the physical NIC with PCI pass-through ConïŹgure the network topology in the driver domain Just like you would for dom0 ConïŹgure the guest vif to use the new domain ID Add backend=domnet to vif declaration vif = [ ’type=pv, bridge=xenbr0, backend=domnet’ ] http://wiki.xen.org/wiki/Driver Domain Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 12 / 28
  • 13. Intro Network path Bootloader Device model Xen Conclusion Attack surface: Pygrub dom 0 toolstack domain builder Paravirtualized pygrub (PV) Domain guest disk Xen Hypervisor What is it? grub implementation for PV guests Python program running in domain 0 Reads guest FS, parses grub.conf, presents menu Passes resulting kernel image to domain builder Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 13 / 28
  • 14. Intro Network path Bootloader Device model Xen Conclusion Attack surface: Pygrub dom 0 toolstack domain builder Paravirtualized pygrub (PV) Domain guest disk Xen Hypervisor How to break in? Bugs in ïŹle system parser Bugs in menu parser Bugs in domain builder Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 14 / 28
  • 15. Intro Network path Bootloader Device model Xen Conclusion Attack surface: Pygrub dom 0 toolstack domain builder Paravirtualized pygrub (PV) Domain kernel guest disk Xen Hypervisor What does it buy you? Control of domain 0 user space Pretty much control of the whole system Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 15 / 28
  • 16. Intro Network path Bootloader Device model Xen Conclusion Security practice: Fixed kernels dom 0 toolstack kernel domain image builder Paravirtualized (PV) Domain guest disk Xen Hypervisor What is it? Passing a known-good kernel from domain 0 Removes attacker avenue to domain builder Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 16 / 28
  • 17. Intro Network path Bootloader Device model Xen Conclusion Security practice: Fixed kernels dom 0 toolstack kernel domain image builder Paravirtualized (PV) Domain guest disk Xen Hypervisor Disadvantages Host admin must keep up with kernel updates Guest admin can’t pass kernel parameters, custom kernels, Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 17 / 28
  • 18. Intro Network path Bootloader Device model Xen Conclusion Security feature: pvgrub dom 0 toolstack domain builder pvgrub MiniOS guest disk Xen Hypervisor What is it? MiniOS + pv port of grub running in a guest context PV equivalent of HVM “BIOS + grub” Now an exploit buys you: Control of your own VM Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 18 / 28
  • 19. Intro Network path Bootloader Device model Xen Conclusion HowTo: pvgrub Make sure that you have the pvgrub image pvgrub-$ARCH.gz Normally lives in /usr/lib/xen/boot Included in Fedora Xen packages Debian-based: need to build yourself Use appropriate pvgrub as bootloader in guest conïŹg kernel="/usr/lib/xen/boot/pvgrub-x86_32.gz" http://wiki.xen.org/wiki/Pvgrub Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 19 / 28
  • 20. Intro Network path Bootloader Device model Xen Conclusion Attack surface: Device model (qemu) How to break in? Bugs in NIC emulator parsing packets Bugs in emulation of virtual devices What does it buy you? Domain 0 privileged userspace Pretty much control of the whole system Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 20 / 28
  • 21. Intro Network path Bootloader Device model Xen Conclusion Security feature: qemu stub domains What is it? Stub domain: a small “service” domain running just one application qemu stub domain: run each qemu in its own domain Now an exploit buys you: Control of the stubom VM ...which we assume you control Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 21 / 28
  • 22. Intro Network path Bootloader Device model Xen Conclusion HowTo: qemu stub domains Make sure that you have the pvgrub image: ioemu-$ARCH.gz Normally lives in /usr/lib/xen/boot Included in Fedora Xen packages Debian-based: need to build yourself Specify stub domains in your guest conïŹg device_model_stubdomain_override = 1 http://wiki.xen.org/wiki/Device Model Stub Domains Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 22 / 28
  • 23. Intro Network path Bootloader Device model Xen Conclusion Attack Surface: Xen PV guests PV Hypercalls HVM guests HVM hypercalls (Subset of PV hypercalls) Instruction emulation (MMIO, shadow pagetables) Emulated platform devices: APIC, HPET, PIT Nested virtualization Security practice: Use PV VMs Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 23 / 28
  • 24. Intro Network path Bootloader Device model Xen Conclusion Security feature: FLASK example policy What is FLASK? Xen Security Module (XSM): Xen equivalent of LSM FLASK: Framework for XSM developed by NSA Xen Equivalent of SELinux Uses same concepts, tools as SELinux Allows a policy to restrict hypercalls What can FLASK do? Basic: Restricts hypercalls to those needed by a particular guest Advanced: Allows more ïŹne-grained granting of privileges FLASK example policy This contains example roles for dom0, domU, stub domains, driver domains, &c Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 24 / 28
  • 25. Intro Network path Bootloader Device model Xen Conclusion HowTo: Use the example FLASK policy Build Xen with XSM enabled Build the example policy Add the appropriate label to guest conïŹg ïŹles seclabel=[foo] stubdom label=[foo] WARNING: In 4.2, the example policy not extensively tested. Use with care! http://wiki.xen.org/wiki/Xen Security Modules : XSM- FLASK Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 25 / 28
  • 26. Intro Network path Bootloader Device model Xen Conclusion Outline Overview of the Xen architecture Brief introduction to principles of security analysis Consider some attack surfaces and Xen features we can use to mitigate them Driver domains pvgrub stub domains PV vs HVM Experimental: Example policy for FLASK Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 26 / 28
  • 27. Intro Network path Bootloader Device model Xen Conclusion Goal Tools to think about security in Xen Know some key security features of Xen Equipped with the knowledge to get them working Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 27 / 28
  • 28. Intro Network path Bootloader Device model Xen Conclusion Questions Questions? More info at http://wiki.xen.org/wiki/Securing Xen Check out our blog: http://blog.xen.org/ Brussels – February 2-3, 2013 Securing your cloud with Xen’s advanced security features 28 / 28