case cache assisted secure execution on arm processors
play

CaSE: Cache-Assisted Secure Execution on ARM Processors N1 N1NG - PowerPoint PPT Presentation

CaSE: Cache-Assisted Secure Execution on ARM Processors N1 N1NG NG ZHA ZHANG , KUN SUN, WENJING LOU, TOM HOU Talk Outline Motivation and Background Why this work ? Threat Model What are we defending against ? CaSE:


  1. CaSE: Cache-Assisted Secure Execution on ARM Processors N1 N1NG NG ZHA ZHANG , KUN SUN, WENJING LOU, TOM HOU

  2. Talk Outline ü Motivation and Background – Why this work ? ü Threat Model – What are we defending against ? ü CaSE: Cache-Assisted Secure Execution – How does it work? ü CaSE highlight – Challenges ? ü Evaluation – How did we do ? ü Conclusion and future Work

  3. Threat to Mobile devices

  4. ARM TrustZone – Trusted Execution Environment (TEE) System Wide Protection Secure World Normal World ü Divides system resources into two worlds ü Normal World runs the content rich OS ü Secure World runs security critical services ü The protection of resources includes - processor, memory and IO devices

  5. Many Products use ARM TrustZone

  6. Smart Devices Going Mo Mobile

  7. Hardware Attacks - Cold Boot Attack

  8. Previous Works on Coldboot Defense TRESOR Sec 2011 – Register-based RAM-less AES encryption Copker NDSS 2014 – Cache-based RAM-less RSA encryption PixelVault CCS 2014 – GPU based RAM-less encryption Sentry ASPLOS 2015 – Cache-based RAM-less encryption Mimosa S&P 2015 – Transactional-based RAM-less encryption

  9. Multi-vector Adversary

  10. Introducing CaSE - Goals ü Defense against Multi-Vector adversary ü Physical memory disclosure attack – Cold boot ü Compromised rich OS ü Provide confidentiality and integrity to both the code and data of the binaries in TEE ü Confidentiality – Protects IP, secret code, sensitive data ü Integrity – Program behavior

  11. Threat Model System On Chip (SoC) Processor Cache NonSecure Secure Cache Cache NonSecure Normal World Memory Secure Memory DRAM NonSecure Rich OS Secure OS

  12. Case-Assisted Execution in Secure World System On Chip (SoC) Processor Cache 0101010110101101 1001 1101 Context Secure storage Packer 1101 0101 0101010110101101 NonSecure Normal World Memory Secure Memory DRAM Secure OS NonSecure Rich OS

  13. Case-Assisted Execution in Normal World System On Chip (SoC) Processor Cache 0101010110101101 0101010110101101011010100 1001 0101 1101 1101 CaSE Context Secure Manager storage Packer 1101 0101 0101 1101 0101010110101101 0101010110101101011010100 Secure Memory NonSecure Normal World Memory DRAM NonSecure OS Secure Rich OS

  14. Controlling the Cache ü Cache Locking is available through L2 cache lockdown CP15 coprocessor ü The granularity of locking is per cache way ü On Cortex-A8, which has 8 way total 256KB L2 unified cache

  15. SoC-Bound Execution – Cache Locking

  16. Self Modifying Program System On Chip (SoC) L1 Instruction Cache L1 Data Cache L2 Unified Cache

  17. Self Modifying Program System On Chip (SoC) L1 Instruction L1 Data Cache Cache L2 Unified Cache

  18. Feasibility of using Cache as Memory

  19. Performance Impact to the Application

  20. Performance Impact to the System

  21. Conclusion ü A secure cache-assisted SoC-bound execution framework ü Provide confidentiality and integrity to sensitive code and data of applications ü Protect against both software attacks and cold boot attack. ü In the future, we would like to further study efficient method to provide OS support to the TEE.

Recommend


More recommend