[发明专利]一种篡改程序流攻击的检测方法和装置有效
| 申请号: | 201710832391.7 | 申请日: | 2017-09-15 |
| 公开(公告)号: | CN109508536B | 公开(公告)日: | 2020-12-15 |
| 发明(设计)人: | 刘恒;程志军;侯承舜;樊辉 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F21/52 | 分类号: | G06F21/52 |
| 代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 冯艳莲 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 篡改 程序 攻击 检测 方法 装置 | ||
一种篡改程序流攻击的检测方法和装置,以有效识别出受到攻击的异常程序流。检测方法为,确定被检测进程发生分支预测失败事件时,获取被检测进程中发生时刻距离当前时刻由近及远的N条跳转指令;从所述N条跳转指令中筛选出符合预设高危条件的M条跳转指令,N和M均为正整数,且N不小于M;获取所述M条跳转指令的目标地址;若所述M条跳转指令的目标地址未全部包含在预设的白名单中时,确定所述被检测进程发生篡改程序流攻击,可以有效并安全的检测出被检测进程是否被篡改程序流攻击,与现有技术相比,无需在跳转指令之前插入检验代码,避免插桩引入的代码开销,可以提高代码的运行效率。
技术领域
本申请涉及计算机技术领域,尤其涉及一种篡改程序流攻击的检测方法和装置。
背景技术
堆栈缓存溢出(Stack Smashing)漏洞,是操作系统和应用程序安全漏洞中比较常见、造成的后果比较严重的漏洞类型之一。攻击者可以利用这种漏洞远程执行恶意代码。恶意篡改程序流攻击,就是利用函数的堆栈缓存溢出漏洞往程序内存中写入超长数据,覆盖程序的返回地址,达到控制程序执行行为的目的。返回导向编程(Return orientedprogramming,ROP)是现阶段恶意篡改程序流攻击中最具威胁的攻击。
返回导向编程(Return oriented programming,ROP)是建立在函数堆栈缓存溢出基础上的一种高级篡改程序流攻击。与传统的代码注入攻击不同,ROP攻击注入到栈上的不是恶意代码,而是系统中已有指令序列的地址,中间夹杂着一些供指令序列使用的数据。攻击者从已有的库或可执行文件中提取指令片段,构建恶意代码,ROP可以借用现有操作系统函数库,实现任何逻辑功能。
控制流完整性(Control Flow Integrity)检查作为一种防御篡改程序流攻击的安全机制,通过监视程序运行过程中的控制流转移过程,使控制流始终处于原有控制流图所限定的合法范围内。
控制流完整性检查是在编译阶段通过编译器静态分析程序的控制流图,重点关注间接转移指令,如间接跳转、间接调用和函数返回等指令,获取相应的白名单。在程序运行过程中在间接转移指令之前插入检验代码,对间接转移指令的目标地址进行检查核对。攻击者对控制流的劫持会导致目标地址不在白名单中,此时利用控制流完整性检查技术可迅速行阻断控制流的劫持,保证系统安全。
由此可知,现有的控制流完整性检查通过编译器控制,在控制流的间接转移指令前插入检验代码,来判断目标地址的合法性。这种插桩方式引入的开销非常大,对代码的正常运行造成很大影响。
发明内容
本申请实施例提供一种篡改程序流攻击的检测方法和装置,以有效的识别出受到攻击的异常程序流。
第一方面,本申请实施例提供一种篡改程序流攻击的检测方法,包括:确定被检测进程发生分支预测失败事件时,获取所述被检测进程中已发生时刻距离当前时刻由近及远的N条跳转指令;从所述N条跳转指令中筛选出符合预设高危条件的M条跳转指令,N和M均为正整数,且N不小于M;获取所述M条跳转指令的目标地址;若所述M条跳转指令的目标地址未全部包含在预设的白名单中时,确定所述被检测进程发生篡改程序流攻击。这样,能够有效并安全的检测出被检测进程是否被篡改程序流攻击,与现有技术相比,无需在跳转指令之前插入检验代码,可以降低插桩引入的代码开销,提高代码运行效率。
在第一方面的一种可能的设计中,从所述N条跳转指令中筛选出符合预设高危条件的M条跳转指令时,将所述N条跳转指令中的静态跳转指令和已经发生过的动态跳转指令筛选出来作为所述M条跳转指令。这样能够快速筛选出M条高危跳转指令进行检测分析,无需针对安全的跳转指令进行检测分析,提高检测效率。
在第一方面的一种可能的设计中,若所述M条跳转指令的目标地址全部包含在预设的白名单中时,确定所述被检测进程运行安全。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710832391.7/2.html,转载请声明来源钻瓜专利网。





