[发明专利]基于模拟栈和线程注入的一种ROP攻击栈溢出防护方法有效
申请号: | 201710417305.6 | 申请日: | 2017-06-06 |
公开(公告)号: | CN107229862B | 公开(公告)日: | 2019-11-12 |
发明(设计)人: | 刘小垒;张小松;牛伟纳;周旷;户宇宙 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F21/52 | 分类号: | G06F21/52 |
代理公司: | 成都弘毅天承知识产权代理有限公司 51230 | 代理人: | 李春芳 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 溢出 线程 攻击 目标进程 防护 指令 程序加载 恶意代码 防护机制 防护技术 攻击防护 监控目标 模拟目标 有效代码 远程线程 指令流程 进程 传统的 再使用 栈空间 串连 绕过 监控 检测 | ||
本发明公开基于模拟栈和线程注入的一种ROP攻击栈溢出防护方法,涉及ROP攻击防护技术领域,解决了现有技术由于程序加载位置固定导致不具有指令的ROP恶意代码能够绕过栈溢出防护技术问题,以及解决了在利用模拟栈监控目标进程时所使用的远程线程注入造成目标进程中出现栈溢出的技术问题。本发明包括利用线程注入到目标进程(要保护的进程),开辟一个模拟栈空间,监控模拟目标进程的指令流程,通过获取ROP攻击的call和ret指令间的有效代码串连,在模拟栈上执行,再使用传统的溢出防护机制,从而达到检测ROP攻击的目的。
技术领域
本发明涉及ROP攻击防护技术领域,具体涉及基于模拟栈和线程注入的一种ROP攻击栈溢出防护方法。
背景技术
ROP(Return-oriented programming)是一种基于代码复用技术的新型攻击,攻击者供已有的库或可执行文件中提取指令片段、构建恶意代码。
SEH(Structured Exception Handling)SEH(Structured Exception Ha-ndling),即结构化异常处理是(windows)操作系统提供给程序设计者的强有力的处理程序错误或异常的武器。
SEHOP(SEH Overwrite Protection)SEHOP的全称是Structured Except-ionHandler Overwrite Protection(结构化异常处理覆盖保护),SEH攻击是指通过栈溢出或者其他漏洞,使用精心构造的数据覆盖结构化异常处理链表上面的某个节点或者多个节点,从而控制EIP(控制程序执行流程)。而SEHOP则是是微软针对这种攻击提出的一种安全防护方案。
在操作系统和编译器的保护下,程序的栈是不可运行的、栈的位置是随机的,增大了栈溢出攻击的难度。但如果程序的加载位置是固定的或者程序中存在加载到固定位置的可执行代码,攻击者就可以利用这些固定位置上的代码来实施他的攻击,ROP恶意代码不包含任何指令,将自己的恶意代码隐藏在正常代码中。因而,它可以绕过传统的栈溢出防御技术。
发明内容
针对上述现有技术,本发明目的在于提供基于模拟栈和线程注入的一种ROP攻击栈溢出防护方法,解决了现有技术由于程序加载位置固定导致不具有指令的ROP恶意代码能够绕过栈溢出防护技术问题,以及解决了在利用模拟栈监控目标进程时所使用的远程线程注入造成目标进程中出现栈溢出的技术问题。
为达到上述目的,本发明采用的技术方案如下:
本方案主要利用线程注入到目标进程(所保护的进程),开辟一个模拟栈空间,监控模拟目标进程的指令流程,通过获取ROP攻击的call和ret指令间的有效代码串连,在模拟栈上执行,再使用传统的溢出防护机制(如Windows的缓冲区安全监测机制,GS)检测模拟栈上是否存在栈溢出,从而对ROP攻击栈溢出漏洞的防护。
基于模拟栈和线程注入的一种ROP攻击栈溢出防护方法,包括以下步骤:
步骤1、对目标进程注入远程线程,通过远程线程获得目标进程的指令流;
步骤2、通过目标进程函数的调用特征提取算法将指令流与受信的特征数据库进行比对,获得存在异常调用的指令序列;
步骤3、构建模拟栈并完成指令序列的拼接,然后在模拟栈中压入拼接的指令序列和金丝雀值,再利用函数进行模拟栈的指令调用,在函数进行返回前检测指令调用过程中金丝雀值,获得检测结果;
步骤4、根据检测结果通过远程线程回调控制目标进程的启停,并由检测结果选择地输出模拟栈上ROP攻击代码和溢出点。
上述方法中,所述的步骤1,还包括以下步骤:
步骤1.1、获得目标进程的句柄,用远程进程根据句柄索引出目标进程;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710417305.6/2.html,转载请声明来源钻瓜专利网。