
软件学报 ISSN 1000-9825, CODEN RUXUEW E-mail: jos@iscas.ac.cn
Journal of Software,2019,30(11):3518−3534 [doi: 10.13328/j.cnki.jos.005539] http://www.jos.org.cn
©中国科学院软件研究所版权所有. Tel: +86-10-62562563
基于运行特征监控的代码复用攻击防御
∗
张贵民
1,2,3
,
李清宝
1,2
,
张
平
1,2
,
程三军
4
1
(解放军信息工程大学,河南 郑州 450001)
2
(数学工程与先进计算国家重点实验室,河南 郑州 450001)
3
(信息保障技术重点实验室,北京 100072)
4
(河南省人民检察院,河南 郑州 450000)
通讯作者: 张贵民, E-mail: zh.guimin@163.com
摘 要: 针对代码复用的攻击与防御已成为网络安全领域研究的热点,但当前的防御方法普遍存在防御类型单
一、易被绕过等问题.为此,提出一种基于运行特征监控的代码复用攻击防御方法 RCMon.该方法在分析代码复用攻
击实现原理的基础上定义了描述程序正常运行过程的运行特征模型 RCMod,并提出了验证程序当前运行状态是否
满足 RCMod 约束规则的安全验证自动机模型.实现中,通过直接向目标程序中植入监控代码,使程序运行到监控节
点时自动陷入,并由 Hypervisor 实现运行特征库的构建和安全验证.实验结果表明,RCMon 能够有效地防御已知的
绝大部分代码复用攻击,平均性能开销约为 22%.
关键词: 代码复用攻击;运行特征;系统调用;插桩
中图法分类号: TP309
中文引用格式: 张贵民,李清宝,张平,程三军.基于运行特征监控的代码复用攻击防御.软件学报,2019,30(11):3518−3534.
http://www.jos.org.cn/1000-9825/5539.htm
英文引用格式: Zhang GM, Li QB, Zhang P, Cheng SJ. Defending code reuse attacks based on running characteristics monitoring.
Ruan Jian Xue Bao/Journal of Software, 2019,30(11):3518−3534 (in Chinese). http://www.jos.org.cn/1000-9825/5539.htm
Defending Code Reuse Attacks Based on Running Characteristics Mo nitori ng
ZHANG Gui-Min
1,2,3
, LI Qing-Bao
1,2
, ZHANG Ping
1,2
, CHENG San-Jun
4
1
(PLA Information Engineering University, Zhengzhou 450001, China)
2
(State Key Laboratory of Mathematical Engineering and Advanced Computing, Zhengzhou 450001, China)
3
(Science and Technology on Information Assurance Laboratory, Beijing 100072, China)
4
(People’s Procuratorate of Henan Province, Zhengzhou 450000, China)
Abstra ct : Code reuse attacks (CRAs) and their defense technologies have been the hot topic in network security field. However, current
defense technologies usually focus on a single type of attacks and can be easily bypassed by other attacks. This paper presents a method
called RCMon to defend CRAs based on running characteristics monitoring to overcome this problem. RCMon defines the running
characteristics model (RCMod) according to the realize theory of CRAs and designs a safety verification automaton to verify whether
current status meets the constraints in the RCMod. When RCMon is implemented, monitor code is instrumented into the target executable
directly so that target program will trap in the Hypervisor when it runs to monitoring nodes, then the construction of running
characteristics databse and safety verifications will be both performed by the Hypervisor. The experiment results show that RCMon can
effectively detect and defense mostly CRAs, and induces average 22% performance penalty.
∗ 基金项目: 国家社会科学基金(15AJG012); 核高基国家科技重大专项(2013JH00103); 信息保障技术重点实验室开放基金
(KJ-15-107)
Foundation item: National Social Science Foundation of China (15AJG012); CHB National Science and Technology Major Project
of China (2013JH00103); Foundation of Science and Technology on Information Assurance Laboratory (KJ-15-107)
收稿时间: 2016-12-15; 修改时间: 2017-04-05, 2017-11-26; 采用时间: 2017-12-26
评论