PENG Guo-Jun
Key Laboratory of Aerospace Information Security and Trust Computing(Wuhan University), Ministry of Education, Wuhan 430072, China;School of Computer, Wuhan University, Wuhan 430072, ChinaLIANG Yu
Key Laboratory of Aerospace Information Security and Trust Computing(Wuhan University), Ministry of Education, Wuhan 430072, China;School of Computer, Wuhan University, Wuhan 430072, China;Sangfor Technologies Inc., Shenzhen 518055, ChinaZHANG Huan-Guo
Key Laboratory of Aerospace Information Security and Trust Computing(Wuhan University), Ministry of Education, Wuhan 430072, China;School of Computer, Wuhan University, Wuhan 430072, ChinaFU Jian-Ming
Key Laboratory of Aerospace Information Security and Trust Computing(Wuhan University), Ministry of Education, Wuhan 430072, China;School of Computer, Wuhan University, Wuhan 430072, ChinaUnited Basic Research Foundation of NSFC-General Technology (U1636107); National Natural Science Foundation of China (61332019, 61202387, 61373168); National Basic Research Program of China (973) (2014CB340600)
Within the current commercial system achitecture and software ecosystem, code reuse techniques, such as ROP (return-oriented programming), are widely adopted to exploit memory vulnerabilities. Driven by the serve situation of cyberspace security, academical and industrial communities have carried out a great amount of research on binary code reuse from both defensive and offsensive perspevtives. This paper discusses the essence and basics of binary code reuse, along with an analysis of its technique roadmap and typical attack vectors. Corresponding defences and mitigations based on control flow integrity and memory randomization are analyzed as well. Dissections on CET (control flow enforcement technology) and CFG (control flow guard), two latest industrial techniques for binary code reuse mitigation, are presented. The future of binary code reuse, including protential attack vectors and possible mitigation strategies, is also discussed at the end of this paper.
彭国军,梁玉,张焕国,傅建明.软件二进制代码重用技术综述.软件学报,2017,28(8):2026-2045
Copy