SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
How TrenchBoot is enabling Measured Launch
for Open-Source Platform Security
Daniel Smith, Chief Technologist, Apertus Solutions, LLC
Agenda
● Why TrenchBoot
● Relevance of Dynamic Launch and Xen
● Background and security of Dynamic Launch
● Background and goals of TrenchBoot
● Initial Capability under development
● What is next that TrenchBoot is building for Xen
● Wrap up
Why
● Launch integrity is the foundation for platform security
● If the hypervisor was corrupt from boot, how could you trust any VM integrity/introspection capabilities
that it may be running?
● Was the correct hypervisor and VMs with the necessary security and safety features loaded at launch?
● It deserves the attention needed to get it right and well integrated
● Dynamic Launch has been under utilized
● Can be initiated many times between power-on and power-off
● Each Dynamic Launch is an opportunity to establish the current integrity of the platform
● Evolving hardware categories for Launch Integrity
● Root of Trust (discrete TPM, ME PTT, PSP fTPM)
● Secure Coprocessors (ME, PSP, T2, Nitro)
● Boot SPI interposers (OpenTitan, Cerberus, SureStart)
● Hybrid (AzureSphere MCU, Arm Corstone-700 M-class Secure Enclave)
Dynamic Launch and Xen
● TrenchBoot was born out of limitations of using tboot to launch Xen for OpenXT
project
● Access to the TXT TPM event log is blocked
● Conflict over access to UEFI Boot Services
● Can only measure Multiboot modules that were loaded into memory by bootloader
● Only one attestation action: predetermined PCR manifest verification
● Only supports Intel TXT, no love for AMD’s Secure Startup
● Upstream Xen needs a good Dynamic Launch story for hardware-rooted integrity
● Google has Shielded VMs
● Microsoft has System Guard Runtime Attestation
● VMWare has ESXi Host Attestation Status
● Xen has tboot (sort of … see above)
Terminology
Description TCG Intel TXT AMD-V
A component that must always behave in the
expected manner because its misbehavior
cannot be detected.
Root of Trust (RoT)
Process of starting a software environment at
an arbitrary time in the runtime of a system
Dynamic Launch (DL) Late Launch Secure Startup
Platform dependent event that triggers the DL DL Event GETSEC[SENTER] SKINIT
Performs initial configuration actions that
are platform specific before invoking the D-
RTM CPU instruction
D-RTM Configuration
Environment (DCE)
Preamble
Software/firmware that executes from the
instantiation of the DL Event to the transfer of
control to the DLME
D-RTM Configuration
Environment (DCE)
Authenticated Code
Module (ACM)
Secure Loader (SL)
Software executed after the DCE instantiated
TCB is established
Dynamically Launched
Measured Environment
(DLME)
Measured Launch
Environment (MLE)
Security Kernel (SK)
Mapping concepts to specification and vendor terms
Setup of a Dynamic Launch
● The system must be in a very specific, quiescent state to launch
● Intel
● TPM with all localities closed
● Protected mode without paging and SMX enabled
● ACM loaded and TXT Heap configured
● MLE loaded below 4GB and compliant page table setup
● Machine check clear
● APs are rendezvous and necessary state preserved
● AMD
● Protected mode without paging
● Secure Loader loaded
● Machine check clear
● APs are rendezvous
● Qualcomm
● TBD: Rumored upcoming DRTM IP core
● This enables getting to a known good state without breaking everything
Result of a Dynamic Launch
● Provides a very controlled and protected startup
● The CPU obtains Locality 4 on the TPM and clears DRTM PCRs (17-22)
● All CPU interrupts (NMI, SMI, INIT, etc) are disabled
● The CPU protects the DCE from DMA access
● Intel uses Cache as RAM (CRAM)
● AMD uses Device Exclusion Vector (DEV)
● The DCE is measured by the CPU and stored in PCR 17 of the TPM before execution
● On Intel the ACM is authenticated before measurement
● On AMD the Secure Loader is owner provided
● The DCE ensures the DLME is DMA protected, measures, and then executes
● The results is a very high integrity assertion of the DLME
● Removes boot firmware from the TCB
TrenchBoot
● TrenchBoot is a cross-community integration project focused on launch integrity
● There is no “one thing” that is TrenchBoot
● The purpose is to develop a common, unified approach to building trust in the platform through launch
integrity
● And to work with existing Open Source ecosystem to integrate the approach into their respective projects
● This means there can now be a unified Dynamic Launch approach between Xen, KVM, other Open Source
hypervisors, and potentially proprietary hypervisors.
● The TrenchBoot approach provides for different strategies to build trust in the platform
● First Launch inspection – Establishing hardware rooted integrity during platform boot
● Runtime inspection – Establishing hardware rooted integrity during platform runtime
● SecureLaunch kexec for Linux
● Runtime Xen verification
● Re-establishing platform state after sleep or hibernate
● Update/Shutdown inspection – Reviewing platform state before platform reboot/shutdown
● Useful for checking integrity before persisting state to disk
Who is contribung to TrenchBoot
First Launch Inspecon
● The initial implementation being worked to demonstrate a common use case
● This is the traditional approach that uses Dynamic Launch to root the target
kernel in hardware
● TrenchBoot approach expands the traditional approach
● Leverages Linux existing UEFI support to handle EBS hand-off
● Provides a more flexibility means for measuring the environment
● Leverages Linux kexec interface for launching subsequent kernel
● On Intel platforms, SEXIT is called to close access to DRTM PCRs
● Implications for Xen
● Will require Xen kexec entry to function with post EBS on UEFI
● Will enable removal of tboot code
Basic Flow of First Launch
TPM
GRUB
SL
ACM
DLME
Setup Piggy Initrd
Xen
Header Kernel
vmlinux
And then comes runme inspecon
● That’s right, I want to relaunch a running Xen without rebooting!
● Why would I want to do something this crazy?
● It is actually quite logical
● A lot of work was done to make sure the right kernel is launched but that guarantee really ended after
communication with the outside world began
● Consider how often a system reboot occurs to establish the integrity of your system?
● Servers -- rarely
● Desktop -- occasionally
● Laptops -- regularly
● There are actually a few use cases of interest
● A System Owner/Administrator may want to check a system
● An OpenXT-like platform may want to check integrity before launching a critical VM
● Xen could be the first hypervisor that can at any point securely re-establish the integrity
of itself!
How will this work
● Conceptually the approach will be to,
● Bring the system to a quiescent state either by pausing or sleeping (S3) all domains
● Xen will DL into an integrity kernel
● This may be setup at boot time or as a special type of domain
● A protocol will be defined to pass necessary information such as the return address
● Integrity kernel will inspect/verify in-memory Xen
● Integrity kernel will record measurements taken and optionally create a signed quote
● Integrity kernel will then jump back to address passed to Xen
● Xen will bring the system back to a running state
● The result will be a hardware rooted runtime inspection of Xen
Timeline
● Announced at PSEC’18
● Provided an initial briefing of the work on September 2018 Xen Community Call
● First working demonstration on Intel desktop system in February 2019
● In March began engaging Linux Kernel Mailing List on boot protocol changes
● Resulted in the setup_header2 RFC submitted in June
● Remainder of 19Q3 is the completion of First Launch inspection for Intel/AMD and
upstreaming to respective projects
● Will be engaging Xen mailing list on the launching Xen via kexec post EBS
● Upon completion, will begin work on Runtime inspection
● Ideate on how to enable Xen to function as a DCE Preamble
● Architect the hand-over protocol from host to inspection kernel
● Architect the structure for quote signed evidence
● Ideally will have a Xen Design Document in 20Q1
Opportunity
● Improvements that hardware and system manufacturers might want to take to heart
● Would like to see AMD added an SKEXIT instruction
● Intent would be to close access to DRTM PCRs
● Would like to see AMD provide support for STMs or an STM-like capability
● The intent is to obtain hardware rooted measurements of SMM
● This is likely not easy ask and open to alternatives that achieve the intent
● Would like to see improvements in IOMMUs
● The intent is to have true and complete device isolation
● Would like to see OEMs incorporate an STM or an equivalent that enables a hardware rooted
measurement of SMM as part of DL
● Would like to see Device manufactures adopt Intel’s PCIe Device Security Enhancements
● Would like to see ARM and RISC-V provide a late launch instruction
● Would like to see TPMs become common an ARM boards
● And leveraging them in the BootROM
References
● Trust Computing Group Architecture Overview
● https://trustedcomputinggroup.org/wp-content/uploads/TCG_1_4_Architecture_Overview.pdf
● Trusted Computing Groub D-RTM Architecture
● https://trustedcomputinggroup.org/wp-content/uploads/TCG_D-RTM_Architecture_v1-0_Published_06172013.pdf
● Intel TXT Software Developers Guide
● https://www.intel.com/content/www/us/en/software-developers/intel-txt-software-development-guide.html
● AMD64 Architecture Programmer’s Manual Volume 2: System Programming
● https://www.amd.com/system/files/TechDocs/24593.pdf
● Inside the Octagon
● http://alex-ionescu.com/Publications/OPCDE/octagon.pdf
● PSEC 2018: TrenchBoot: Unified Approach to Harness Boot Integrity Technologies
● https://www.platformsecuritysummit.com/2018/speaker/smith/
● PCI Express Device Security Enhancements
● https://www.intel.com/content/dam/www/public/us/en/documents/reference-guides/pcie-device-security-enhancements.p
● Arm® Platform Security Architecture Firmware Framework
● https://pages.arm.com/rs/312-SAX-488/images/DEN0063-PSA_Firmware_Framework-1.0.0.pdf
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform Security - Daniel Smith, Apertus Solutions

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

OSSNA18: Xen Beginners Training
OSSNA18: Xen Beginners Training OSSNA18: Xen Beginners Training
OSSNA18: Xen Beginners Training
 
Rootlinux17: An introduction to Xen Project Virtualisation
Rootlinux17:  An introduction to Xen Project VirtualisationRootlinux17:  An introduction to Xen Project Virtualisation
Rootlinux17: An introduction to Xen Project Virtualisation
 
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
 
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization  - George Dunlap, CitrixOSSEU18: NVDIMM and Virtualization  - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
 
XPDS16: A Paravirtualized Interface for Socket Syscalls - Dimitri Stiliadis, ...
XPDS16: A Paravirtualized Interface for Socket Syscalls - Dimitri Stiliadis, ...XPDS16: A Paravirtualized Interface for Socket Syscalls - Dimitri Stiliadis, ...
XPDS16: A Paravirtualized Interface for Socket Syscalls - Dimitri Stiliadis, ...
 
XPDS14 - Zero-Footprint Guest Memory Introspection from Xen - Mihai Dontu, Bi...
XPDS14 - Zero-Footprint Guest Memory Introspection from Xen - Mihai Dontu, Bi...XPDS14 - Zero-Footprint Guest Memory Introspection from Xen - Mihai Dontu, Bi...
XPDS14 - Zero-Footprint Guest Memory Introspection from Xen - Mihai Dontu, Bi...
 
ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS18: Xen Project Weather Report 2018
XPDDS18: Xen Project Weather Report 2018XPDDS18: Xen Project Weather Report 2018
XPDDS18: Xen Project Weather Report 2018
 
LFNW2014 Advanced Security Features of Xen Project Hypervisor
LFNW2014 Advanced Security Features of Xen Project HypervisorLFNW2014 Advanced Security Features of Xen Project Hypervisor
LFNW2014 Advanced Security Features of Xen Project Hypervisor
 
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
XPDS14 - Xen in EFI World - Daniel Kiper, OracleXPDS14 - Xen in EFI World - Daniel Kiper, Oracle
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
 
Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)
 
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...
 
Ian Pratt Nsdi Keynote Apr2008
Ian Pratt Nsdi Keynote Apr2008Ian Pratt Nsdi Keynote Apr2008
Ian Pratt Nsdi Keynote Apr2008
 
Unikraft Landing Page Master Slides
Unikraft Landing Page Master SlidesUnikraft Landing Page Master Slides
Unikraft Landing Page Master Slides
 
Xen io
Xen ioXen io
Xen io
 
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsXPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
 
ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for Embedded
 
XPDS13: In-Guest Mechanism to Strengthen Guest Separation - Philip Tricca, Ci...
XPDS13: In-Guest Mechanism to Strengthen Guest Separation - Philip Tricca, Ci...XPDS13: In-Guest Mechanism to Strengthen Guest Separation - Philip Tricca, Ci...
XPDS13: In-Guest Mechanism to Strengthen Guest Separation - Philip Tricca, Ci...
 
OSSA17 - Live patch, VMI, Security Mgmt (50 mins, no embedded demos)
OSSA17 - Live patch, VMI, Security Mgmt (50 mins, no embedded demos)OSSA17 - Live patch, VMI, Security Mgmt (50 mins, no embedded demos)
OSSA17 - Live patch, VMI, Security Mgmt (50 mins, no embedded demos)
 
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
 

Similar a XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform Security - Daniel Smith, Apertus Solutions

Breaking hardware enforced security with hypervisors
Breaking hardware enforced security with hypervisorsBreaking hardware enforced security with hypervisors
Breaking hardware enforced security with hypervisors
Priyanka Aash
 
Lcu14 101- coresight overview
Lcu14 101- coresight overviewLcu14 101- coresight overview
Lcu14 101- coresight overview
Linaro
 
Hypervisor and VDI security
Hypervisor and VDI securityHypervisor and VDI security
Hypervisor and VDI security
Denis Gundarev
 
OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka
OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph GaluschkaOpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka
OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka
OpenNebula Project
 
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph GaluschkaOpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
NETWAYS
 
Windows 7 professional Vs Windows 7 enterprise
Windows 7 professional Vs Windows 7 enterpriseWindows 7 professional Vs Windows 7 enterprise
Windows 7 professional Vs Windows 7 enterprise
247infotech
 

Similar a XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform Security - Daniel Smith, Apertus Solutions (20)

Breaking hardware enforced security with hypervisors
Breaking hardware enforced security with hypervisorsBreaking hardware enforced security with hypervisors
Breaking hardware enforced security with hypervisors
 
Hardware_root_trust_x86.pptx
Hardware_root_trust_x86.pptxHardware_root_trust_x86.pptx
Hardware_root_trust_x86.pptx
 
Chromium os architecture report
Chromium os  architecture reportChromium os  architecture report
Chromium os architecture report
 
OffensiveCon2022: Case Studies of Fuzzing with Xen
OffensiveCon2022: Case Studies of Fuzzing with XenOffensiveCon2022: Case Studies of Fuzzing with Xen
OffensiveCon2022: Case Studies of Fuzzing with Xen
 
Fuzzing_with_Xen.pdf
Fuzzing_with_Xen.pdfFuzzing_with_Xen.pdf
Fuzzing_with_Xen.pdf
 
Lcu14 101- coresight overview
Lcu14 101- coresight overviewLcu14 101- coresight overview
Lcu14 101- coresight overview
 
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEE
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEEBKK16-110 A Gentle Introduction to Trusted Execution and OP-TEE
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEE
 
Early Software Development through Palladium Emulation
Early Software Development through Palladium EmulationEarly Software Development through Palladium Emulation
Early Software Development through Palladium Emulation
 
DEF CON 27 - ALI ISLAM and DAN REGALADO WEAPONIZING HYPERVISORS
DEF CON 27 - ALI ISLAM and DAN REGALADO WEAPONIZING HYPERVISORSDEF CON 27 - ALI ISLAM and DAN REGALADO WEAPONIZING HYPERVISORS
DEF CON 27 - ALI ISLAM and DAN REGALADO WEAPONIZING HYPERVISORS
 
Linux Internals - Part II
Linux Internals - Part IILinux Internals - Part II
Linux Internals - Part II
 
Hypervisor and VDI security
Hypervisor and VDI securityHypervisor and VDI security
Hypervisor and VDI security
 
OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka
OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph GaluschkaOpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka
OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka
 
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph GaluschkaOpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
 
Trusted Computing security _platform.ppt
Trusted Computing security _platform.pptTrusted Computing security _platform.ppt
Trusted Computing security _platform.ppt
 
OpenShift_Installation_Deep_Dive_Robert_Bohne.pdf
OpenShift_Installation_Deep_Dive_Robert_Bohne.pdfOpenShift_Installation_Deep_Dive_Robert_Bohne.pdf
OpenShift_Installation_Deep_Dive_Robert_Bohne.pdf
 
Adopting agile in an embedded platform Suryakiran Kasturi & Akhil Kumar
Adopting agile in an embedded platform  Suryakiran Kasturi & Akhil KumarAdopting agile in an embedded platform  Suryakiran Kasturi & Akhil Kumar
Adopting agile in an embedded platform Suryakiran Kasturi & Akhil Kumar
 
EC8791-U5-PPT.pptx
EC8791-U5-PPT.pptxEC8791-U5-PPT.pptx
EC8791-U5-PPT.pptx
 
XPDDS17: EFI Secure Boot, Shim and Xen: Current Status and Developments - Da...
XPDDS17:  EFI Secure Boot, Shim and Xen: Current Status and Developments - Da...XPDDS17:  EFI Secure Boot, Shim and Xen: Current Status and Developments - Da...
XPDDS17: EFI Secure Boot, Shim and Xen: Current Status and Developments - Da...
 
Windows 7 professional Vs Windows 7 enterprise
Windows 7 professional Vs Windows 7 enterpriseWindows 7 professional Vs Windows 7 enterprise
Windows 7 professional Vs Windows 7 enterprise
 
The trusted computing architecture
The trusted computing architectureThe trusted computing architecture
The trusted computing architecture
 

Más de The Linux Foundation

Más de The Linux Foundation (20)

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: 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
 
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSEXPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
 
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
 
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, AmazonXPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
 
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
 

Último

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 

Último (20)

Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 

XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform Security - Daniel Smith, Apertus Solutions

  • 1. How TrenchBoot is enabling Measured Launch for Open-Source Platform Security Daniel Smith, Chief Technologist, Apertus Solutions, LLC
  • 2. Agenda ● Why TrenchBoot ● Relevance of Dynamic Launch and Xen ● Background and security of Dynamic Launch ● Background and goals of TrenchBoot ● Initial Capability under development ● What is next that TrenchBoot is building for Xen ● Wrap up
  • 3. Why ● Launch integrity is the foundation for platform security ● If the hypervisor was corrupt from boot, how could you trust any VM integrity/introspection capabilities that it may be running? ● Was the correct hypervisor and VMs with the necessary security and safety features loaded at launch? ● It deserves the attention needed to get it right and well integrated ● Dynamic Launch has been under utilized ● Can be initiated many times between power-on and power-off ● Each Dynamic Launch is an opportunity to establish the current integrity of the platform ● Evolving hardware categories for Launch Integrity ● Root of Trust (discrete TPM, ME PTT, PSP fTPM) ● Secure Coprocessors (ME, PSP, T2, Nitro) ● Boot SPI interposers (OpenTitan, Cerberus, SureStart) ● Hybrid (AzureSphere MCU, Arm Corstone-700 M-class Secure Enclave)
  • 4. Dynamic Launch and Xen ● TrenchBoot was born out of limitations of using tboot to launch Xen for OpenXT project ● Access to the TXT TPM event log is blocked ● Conflict over access to UEFI Boot Services ● Can only measure Multiboot modules that were loaded into memory by bootloader ● Only one attestation action: predetermined PCR manifest verification ● Only supports Intel TXT, no love for AMD’s Secure Startup ● Upstream Xen needs a good Dynamic Launch story for hardware-rooted integrity ● Google has Shielded VMs ● Microsoft has System Guard Runtime Attestation ● VMWare has ESXi Host Attestation Status ● Xen has tboot (sort of … see above)
  • 5. Terminology Description TCG Intel TXT AMD-V A component that must always behave in the expected manner because its misbehavior cannot be detected. Root of Trust (RoT) Process of starting a software environment at an arbitrary time in the runtime of a system Dynamic Launch (DL) Late Launch Secure Startup Platform dependent event that triggers the DL DL Event GETSEC[SENTER] SKINIT Performs initial configuration actions that are platform specific before invoking the D- RTM CPU instruction D-RTM Configuration Environment (DCE) Preamble Software/firmware that executes from the instantiation of the DL Event to the transfer of control to the DLME D-RTM Configuration Environment (DCE) Authenticated Code Module (ACM) Secure Loader (SL) Software executed after the DCE instantiated TCB is established Dynamically Launched Measured Environment (DLME) Measured Launch Environment (MLE) Security Kernel (SK) Mapping concepts to specification and vendor terms
  • 6. Setup of a Dynamic Launch ● The system must be in a very specific, quiescent state to launch ● Intel ● TPM with all localities closed ● Protected mode without paging and SMX enabled ● ACM loaded and TXT Heap configured ● MLE loaded below 4GB and compliant page table setup ● Machine check clear ● APs are rendezvous and necessary state preserved ● AMD ● Protected mode without paging ● Secure Loader loaded ● Machine check clear ● APs are rendezvous ● Qualcomm ● TBD: Rumored upcoming DRTM IP core ● This enables getting to a known good state without breaking everything
  • 7. Result of a Dynamic Launch ● Provides a very controlled and protected startup ● The CPU obtains Locality 4 on the TPM and clears DRTM PCRs (17-22) ● All CPU interrupts (NMI, SMI, INIT, etc) are disabled ● The CPU protects the DCE from DMA access ● Intel uses Cache as RAM (CRAM) ● AMD uses Device Exclusion Vector (DEV) ● The DCE is measured by the CPU and stored in PCR 17 of the TPM before execution ● On Intel the ACM is authenticated before measurement ● On AMD the Secure Loader is owner provided ● The DCE ensures the DLME is DMA protected, measures, and then executes ● The results is a very high integrity assertion of the DLME ● Removes boot firmware from the TCB
  • 8. TrenchBoot ● TrenchBoot is a cross-community integration project focused on launch integrity ● There is no “one thing” that is TrenchBoot ● The purpose is to develop a common, unified approach to building trust in the platform through launch integrity ● And to work with existing Open Source ecosystem to integrate the approach into their respective projects ● This means there can now be a unified Dynamic Launch approach between Xen, KVM, other Open Source hypervisors, and potentially proprietary hypervisors. ● The TrenchBoot approach provides for different strategies to build trust in the platform ● First Launch inspection – Establishing hardware rooted integrity during platform boot ● Runtime inspection – Establishing hardware rooted integrity during platform runtime ● SecureLaunch kexec for Linux ● Runtime Xen verification ● Re-establishing platform state after sleep or hibernate ● Update/Shutdown inspection – Reviewing platform state before platform reboot/shutdown ● Useful for checking integrity before persisting state to disk
  • 9. Who is contribung to TrenchBoot
  • 10. First Launch Inspecon ● The initial implementation being worked to demonstrate a common use case ● This is the traditional approach that uses Dynamic Launch to root the target kernel in hardware ● TrenchBoot approach expands the traditional approach ● Leverages Linux existing UEFI support to handle EBS hand-off ● Provides a more flexibility means for measuring the environment ● Leverages Linux kexec interface for launching subsequent kernel ● On Intel platforms, SEXIT is called to close access to DRTM PCRs ● Implications for Xen ● Will require Xen kexec entry to function with post EBS on UEFI ● Will enable removal of tboot code
  • 11. Basic Flow of First Launch TPM GRUB SL ACM DLME Setup Piggy Initrd Xen Header Kernel vmlinux
  • 12. And then comes runme inspecon ● That’s right, I want to relaunch a running Xen without rebooting! ● Why would I want to do something this crazy? ● It is actually quite logical ● A lot of work was done to make sure the right kernel is launched but that guarantee really ended after communication with the outside world began ● Consider how often a system reboot occurs to establish the integrity of your system? ● Servers -- rarely ● Desktop -- occasionally ● Laptops -- regularly ● There are actually a few use cases of interest ● A System Owner/Administrator may want to check a system ● An OpenXT-like platform may want to check integrity before launching a critical VM ● Xen could be the first hypervisor that can at any point securely re-establish the integrity of itself!
  • 13. How will this work ● Conceptually the approach will be to, ● Bring the system to a quiescent state either by pausing or sleeping (S3) all domains ● Xen will DL into an integrity kernel ● This may be setup at boot time or as a special type of domain ● A protocol will be defined to pass necessary information such as the return address ● Integrity kernel will inspect/verify in-memory Xen ● Integrity kernel will record measurements taken and optionally create a signed quote ● Integrity kernel will then jump back to address passed to Xen ● Xen will bring the system back to a running state ● The result will be a hardware rooted runtime inspection of Xen
  • 14. Timeline ● Announced at PSEC’18 ● Provided an initial briefing of the work on September 2018 Xen Community Call ● First working demonstration on Intel desktop system in February 2019 ● In March began engaging Linux Kernel Mailing List on boot protocol changes ● Resulted in the setup_header2 RFC submitted in June ● Remainder of 19Q3 is the completion of First Launch inspection for Intel/AMD and upstreaming to respective projects ● Will be engaging Xen mailing list on the launching Xen via kexec post EBS ● Upon completion, will begin work on Runtime inspection ● Ideate on how to enable Xen to function as a DCE Preamble ● Architect the hand-over protocol from host to inspection kernel ● Architect the structure for quote signed evidence ● Ideally will have a Xen Design Document in 20Q1
  • 15. Opportunity ● Improvements that hardware and system manufacturers might want to take to heart ● Would like to see AMD added an SKEXIT instruction ● Intent would be to close access to DRTM PCRs ● Would like to see AMD provide support for STMs or an STM-like capability ● The intent is to obtain hardware rooted measurements of SMM ● This is likely not easy ask and open to alternatives that achieve the intent ● Would like to see improvements in IOMMUs ● The intent is to have true and complete device isolation ● Would like to see OEMs incorporate an STM or an equivalent that enables a hardware rooted measurement of SMM as part of DL ● Would like to see Device manufactures adopt Intel’s PCIe Device Security Enhancements ● Would like to see ARM and RISC-V provide a late launch instruction ● Would like to see TPMs become common an ARM boards ● And leveraging them in the BootROM
  • 16. References ● Trust Computing Group Architecture Overview ● https://trustedcomputinggroup.org/wp-content/uploads/TCG_1_4_Architecture_Overview.pdf ● Trusted Computing Groub D-RTM Architecture ● https://trustedcomputinggroup.org/wp-content/uploads/TCG_D-RTM_Architecture_v1-0_Published_06172013.pdf ● Intel TXT Software Developers Guide ● https://www.intel.com/content/www/us/en/software-developers/intel-txt-software-development-guide.html ● AMD64 Architecture Programmer’s Manual Volume 2: System Programming ● https://www.amd.com/system/files/TechDocs/24593.pdf ● Inside the Octagon ● http://alex-ionescu.com/Publications/OPCDE/octagon.pdf ● PSEC 2018: TrenchBoot: Unified Approach to Harness Boot Integrity Technologies ● https://www.platformsecuritysummit.com/2018/speaker/smith/ ● PCI Express Device Security Enhancements ● https://www.intel.com/content/dam/www/public/us/en/documents/reference-guides/pcie-device-security-enhancements.p ● Arm® Platform Security Architecture Firmware Framework ● https://pages.arm.com/rs/312-SAX-488/images/DEN0063-PSA_Firmware_Framework-1.0.0.pdf