Binary Code Retrofitting and Hardening Using SGX
Title | Binary Code Retrofitting and Hardening Using SGX |
Publication Type | Conference Paper |
Year of Publication | 2017 |
Authors | Wang, Shuai, Wang, Wenhao, Bao, Qinkun, Wang, Pei, Wang, XiaoFeng, Wu, Dinghao |
Conference Name | Proceedings of the 2017 Workshop on Forming an Ecosystem Around Software Transformation |
Publisher | ACM |
Conference Location | New York, NY, USA |
ISBN Number | 978-1-4503-5395-3 |
Keywords | binary instrumentation, composability, Metrics, Operating Systems Security, pubcrawl, Resiliency, Safe Coding, SGX, software security |
Abstract | Trusted Execution Environment (TEE) is designed to deliver a safe execution environment for software systems. Intel Software Guard Extensions (SGX) provides isolated memory regions (i.e., SGX enclaves) to protect code and data from adversaries in the untrusted world. While existing research has proposed techniques to execute entire executable files inside enclave instances by providing rich sets of OS facilities, one notable limitation of these techniques is the unavoidably large size of Trusted Computing Base (TCB), which can potentially break the principle of least privilege. In this work, we describe techniques that provide practical and efficient protection of security sensitive code components in legacy binary code. Our technique dissects input binaries into multiple components which are further built into SGX enclave instances. We also leverage deliberately-designed binary editing techniques to retrofit the input binary code and preserve the original program semantics. Our tentative evaluations on hardening AES encryption and decryption procedures demonstrate the practicability and efficiency of the proposed technique. |
URL | http://doi.acm.org/10.1145/3141235.3141244 |
DOI | 10.1145/3141235.3141244 |
Citation Key | wang_binary_2017 |