t ag i solated m emory b ringing fine grained e nclaves
play

T ag- I solated M emory B ringing Fine-grained E nclaves to R ISC- V - PowerPoint PPT Presentation

S C I E N C E T E C H N O L O G Y P A S S I O N T ag- I solated M emory B ringing Fine-grained E nclaves to R ISC- V Samuel Weiser Mario Werner Ferdinand Brasser Maja Malenko Stefan Mangard Ahmad Sadeghi


  1. S C I E N C E T E C H N O L O G Y P A S S I O N T ag- I solated M emory B ringing Fine-grained E nclaves to R ISC- V Samuel Weiser ∗ Mario Werner ∗ Ferdinand Brasser † Maja Malenko ∗ Stefan Mangard ∗ Ahmad Sadeghi † ∗ Graz University of Technology † TU Darmstadt NDSS’19, San Diego www.iaik.tugraz.at

  2. TIMBER-V 2 Motivation Goal: Protect sensitive code and data Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  3. TIMBER-V 2 Motivation App Goal: Protect sensitive code and data OS Hypervisor Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  4. TIMBER-V 2 Motivation Enclave App Goal: Protect sensitive code and data OS Hypervisor Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  5. TIMBER-V 2 Motivation Enclave App App Goal: Protect sensitive code and data OS OS Hypervisor Hypervisor from malicious software Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  6. TIMBER-V 2 Motivation Enclave App App Goal: Protect sensitive code and data OS OS Hypervisor Hypervisor from malicious software Intel SGX is cool, but Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  7. TIMBER-V 2 Motivation Enclave App App Goal: Protect sensitive code and data OS OS Hypervisor Hypervisor from malicious software Intel SGX is cool, but Closed ISA, microarchitecture Hardware backdoors? [8] Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  8. TIMBER-V 2 Motivation Enclave App App Goal: Protect sensitive code and data OS OS Hypervisor Hypervisor from malicious software Intel SGX is cool, but Closed ISA, microarchitecture Hardware backdoors? [8] RISC-V is completely open Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  9. TIMBER-V 2 Motivation Enclave App App Goal: Protect sensitive code and data OS OS Hypervisor Hypervisor from malicious software Intel SGX is cool, but Closed ISA, microarchitecture Hardware backdoors? [8] RISC-V is completely open Bring SGX features to embedded RISC-V Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  10. TIMBER-V 2 Motivation Enclave App App Goal: Protect sensitive code and data OS OS Hypervisor Hypervisor from malicious software Intel SGX is cool, but Closed ISA, microarchitecture Hardware backdoors? [8] RISC-V is completely open Bring SGX features to embedded RISC-V (embedded = ARM Cortex-M) Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  11. TIMBER-V 3 Background: Enclaves Secure execution Enclave Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  12. TIMBER-V 3 Background: Enclaves Secure execution Protect against all other software Malicious app Enclave App Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  13. TIMBER-V 3 Background: Enclaves Secure execution Protect against all other software Malicious app Malicious OS Enclave App OS Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  14. TIMBER-V 3 Background: Enclaves Secure execution Protect against all other software Malicious app Malicious OS Malicious hypervisor Enclave App OS Hypervisor Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  15. TIMBER-V 3 Background: Enclaves Secure execution Protect against all other software Malicious app Malicious OS Malicious hypervisor Malicious enclaves Enclave Enclave App App OS Hypervisor Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  16. TIMBER-V 3 Background: Enclaves Secure execution Protect against all other software Malicious app Malicious OS Malicious hypervisor Malicious enclaves Enclave Enclave App App Minimal trust (enclave + HW) OS Hypervisor Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  17. TIMBER-V 4 Related Work - Secure Execution ”Large”: Sanctum (RISC-V) [2] ”Embedded”: [3, 4, 7, 1, 9] RISC-V: MultiZone [5], Keystone [6] Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  18. TIMBER-V 4 Related Work - Secure Execution ”Large”: Sanctum (RISC-V) [2] ”Embedded”: [3, 4, 7, 1, 9] RISC-V: MultiZone [5], Keystone [6] Problems Inflexible isolation boundaries Memory fragmentation Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  19. TIMBER-V 5 Problem: Memory Fragmentation Physical memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  20. TIMBER-V 5 Problem: Memory Fragmentation Process A App Enclave Data Stack Physical memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  21. TIMBER-V 5 Problem: Memory Fragmentation Process A App Enclave Data Stack Data Stack Physical memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  22. TIMBER-V 5 Problem: Memory Fragmentation Process A Process B App App Enclave Enclave Data Stack Data Stack Data Stack Physical memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  23. TIMBER-V 5 Problem: Memory Fragmentation Process A Process B App App Enclave Enclave Data Stack Data Stack Data Stack Data Stack Physical memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  24. TIMBER-V 5 Problem: Memory Fragmentation X Process A Process B Process C App App App Enclave Enclave Enclave Data Stack Data Stack Data Stack Data Stack Physical memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  25. TIMBER-V 5 Problem: Memory Fragmentation X Process A Process B Process C App App App Enclave Enclave Enclave Data Stack Data Stack Data Stack Data Stack Physical memory Bad memory utilization Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  26. TIMBER-V 5 Problem: Memory Fragmentation Process A Process B Process C App App App Enclave Enclave Enclave Data Stack Bad memory utilization We want to interleave memory → Stack sharing Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  27. TIMBER-V 5 Problem: Memory Fragmentation Process A Process B Process C App App App Enclave Enclave Enclave Data Stack Data Stack Bad memory utilization We want to interleave memory → Stack sharing Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  28. TIMBER-V 5 Problem: Memory Fragmentation Process A Process B Process C App App App Enclave Enclave Enclave Data Stack Data Stack Data Stack Bad memory utilization We want to interleave memory → Stack sharing Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  29. TIMBER-V 6 Contributions : Enclaves from tagged memory for embedded RISC-V Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  30. TIMBER-V 6 Contributions : Enclaves from tagged memory for embedded RISC-V Novel stack sharing App Enclave Shared stack Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  31. TIMBER-V 6 Contributions : Enclaves from tagged memory for embedded RISC-V Novel stack sharing Fast shared enclave memory App Enclave ... Shared stack Proof-of-concept Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  32. TIMBER-V 7 TIMBER-V Overview Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  33. TIMBER-V 7 TIMBER-V Overview Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  34. TIMBER-V 7 TIMBER-V Overview Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  35. TIMBER-V 8 Enclave building blocks: Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  36. TIMBER-V 8 Enclave building blocks: Memory isolation Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  37. TIMBER-V 8 Enclave building blocks: Memory isolation Entry points Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  38. TIMBER-V 8 Enclave building blocks: Memory isolation Entry points Attestation, sealing Inter-enclave communication Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  39. TIMBER-V 8 Enclave building blocks: Memory isolation Entry points Attestation, sealing Inter-enclave communication Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  40. TIMBER-V 9 Traditional Memory Protection Unit (MPU) Physical Memory MPU regions define application Problem: inflexible Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  41. TIMBER-V 10 Tagged Memory Memory tags → Physical Memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  42. TIMBER-V 10 Tagged Memory Memory tags → Physical Memory Memory tags define applications Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  43. TIMBER-V 10 Tagged Memory Memory tags → Physical Memory Memory tags define applications Problem: high memory overhead Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  44. TIMBER-V 11 TIMBER-V: MPU + Tagged Memory MPU region defines application Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  45. TIMBER-V 11 TIMBER-V: MPU + Tagged Memory MPU region defines application Application cannot escape Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  46. TIMBER-V 11 TIMBER-V: MPU + Tagged Memory Memory tag defines enclave Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  47. TIMBER-V 11 TIMBER-V: MPU + Tagged Memory Memory tag defines enclave Memory tag defines TagRoot Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

  48. TIMBER-V 12 TIMBER-V Tag Isolation Normal Normal memory Samuel Weiser www.iaik.tugraz.at NDSS’19, San Diego

Recommend


More recommend