practical implications of intel sgx with graphene
play

Practical implications of Intel SGX with Graphene July 4th, 2019 - PowerPoint PPT Presentation

Practical implications of Intel SGX with Graphene July 4th, 2019 Derk Barten Robin Klusman Software Guard Untrusted system Trusted enclave Extensions Attestation (SGX) Encrypted & isolated memory Integrity,


  1. Practical implications of Intel SGX with Graphene July 4th, 2019 Derk Barten Robin Klusman

  2. Software Guard ● Untrusted system Trusted enclave ● Extensions Attestation ● (SGX) ● Encrypted & isolated memory ● Integrity, confidentiality, isolation 2

  3. Graphene-SGX ● Library OS Standard C library ● Unmodified applications ● ● Multi-process support ● Dynamic shared libraries Manifest ● 3

  4. Related work ● SGX DRM, Anti-cheat ○ Use-cases Compilers ○ ○ TLS termination ○ Databases System logs ○ Middleboxes ○ ● Graphene ○ No modifications required Reduced development effort ○ Facilitate SGX research ○ 4

  5. Related work ● Cache side channel attacks Foreshadow ○ Existing attacks SgxPectre ○ on SGX ○ BranchScope ○ CacheZoom Asyncshock ● Controlled channel ● 5

  6. What are the practical implications of running arbitrary applications in Intel SGX using Graphene-SGX? Research Question 6

  7. Security implications

  8. Misaligned ● Intel SGX Operating system = untrusted ○ threat model ● Most applications ○ Operating system = trusted 8

  9. Arbitrary applications are often not designed to guard against a malicious operating system. 9

  10. Iago attacks ● Attacks by malicious kernel System calls ● ● Mitigation ○ Verification 10

  11. Date / time ● gettimeofday() Reliant on OS supplied vDSO ● manipulation Not verified by Graphene ● ● Implications Transaction order ○ Kerberos ○ ○ 2FA token validity ○ Rate limiting 11

  12. Date / time manipulation demo 12

  13. Environment ● Arbitrary environment vars Not present in manifest ● variable Not checked by Graphene ● manipulation ● Easily overlooked Implications ● Influence execution ○ ○ GCC Epoch 13

  14. Framework maturity

  15. Running ● OS version support Framework bugs ● applications Disk writes ● in Graphene ● Non trivial to port complex applications 15

  16. Discussion & conclusions

  17. Discussion ● Security may be compromised Can be mitigated ● Graphene as research project ● ● Not ready for production 17

  18. Developers should take care when running arbitrary applications in SGX using Graphene, as there may be non-trivial security implications and framework bugs. Conclusion 18

  19. Future work ● Explore additional system calls Environment variable dependent ● applications ● Investigate SCONE/Panoply 19

  20. Sources Victor Costan and Srinivas Devadas. “Intel SGX Explained.” Nico Weichbrodt et al. “AsyncShock: Exploiting ● ● In: IACR Cryptology ePrint Archive 2016.086 (2016), pp. synchronisation bugs in Intel SGX enclaves”. In: European 1–118. Symposium on Research in Computer Security. Springer. Chia-Che Tsai, Donald E Porter, and Mona Vij. 2016, pp. 440–457. ● “Graphene-SGX: A Practical Library {OS} for Unmodified Ahmad Moghimi, Gorka Irazoqui, and Thomas Eisenbarth. ● Applications on {SGX}”. In: 2017 {USENIX} Annual “Cachezoom: How SGX amplifies the power of cache Technical Conference ({USENIX} {ATC} 17). 2017, pp. attacks”. In: International Conference on Cryptographic 645–658. Hardware and Embedded Systems. Springer. 2017, pp. Stephen Checkoway and Hovav Shacham. “Iago attacks: 69–90. ● Why the system call api is a bad untrusted rpc interface”. Yuanzhong Xu, Weidong Cui, and Marcus Peinado. ● In: ASPLOS. Vol. 13. 2013, pp. 253–264. “Controlled-channel attacks: Deterministic side channels Ofir Weisse et al. Foreshadow-NG: Breaking the virtual for untrusted operating systems”. In: 2015 IEEE ● memory abstraction with transient out-of-order execution. Symposium on Security and Privacy. IEEE. 2015, pp. Tech. rep. Technical report, 2018. 640–656. Guoxing Chen et al. “Sgxpectre attacks: Stealing intel Dmitry Evtyushkin et al. “BranchScope: A new side-channel ● ● secrets from sgx enclaves via speculative execution”. In: attack on directional branch predictor”. In: ACM SIGPLAN arXiv preprint arXiv:1802.09085 (2018). Notices. Vol. 53. 2. ACM. 2018, pp. 693–707. 20

  21. Software ● Attestation data Attestation key ● Attestation Attestation signature ● 21

  22. Software ● MRENCLAVE - Enclave Identity MRSIGNER - Sealing Authority ● Attestation Public key hash SGX ● Attestation Key in μcode Source: Intel documentation 22

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend