[发明专利]一种自动化堆利用原语采集方法在审
申请号: | 202011555098.9 | 申请日: | 2020-12-25 |
公开(公告)号: | CN112507345A | 公开(公告)日: | 2021-03-16 |
发明(设计)人: | 刘元;王庆贺 | 申请(专利权)人: | 中科信息安全共性技术国家工程研究中心有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动化 利用 采集 方法 | ||
一种自动化堆利用原语采集方法包括如下步骤:生成测试用例,随机生成五种类型的堆相关操作,具体包括分配、回收、缓冲区写、堆写和bug调用;崩溃检测:确认被执行的测试用例是否会导致利用的影响;测试缩减:使用delta‑debugging算法对测试用例进行细化;POC生成:将触发漏洞的测试缩减之后,使用每个堆操作和C代码之间的一对一映射,将编码的测试用例转换为一个可读的PoC代码。有益效果是:与现有的技术相比,本技术不仅可以验证已知利用技术,还可以发现未知的技术。在没有特定于开发的指南的情况下,本技术可以自由地探索寻找堆利用技术的搜索空间,从而增加满足某些利用技术前提条件的概率。
技术领域
本发明涉及信息安全技术领域,具体涉及一种自动化堆利用原语采集方法。
背景技术
计算机进程的控制通常由原语完成。所谓原语,一般是指由若干条指令组成的程序段,用来实现某个特定功能,在执行过程中不可被中断。在操作系统中,某些被进程调用的操作,如队列操作、对信号量的操作、检查启动外设操作等,一旦开始执行,就不能被中断,否则就会出现操作错误,造成系统混乱。所以,这些操作都要用原语来实现,原语是操作系统核心(不是由进程,而是由一组程序模块组成)的一个组成部分,并且常驻内存,通常在管态下执行。
与堆相关的漏洞一直是系统软件中最常见但也是最关键的安全问题来源。根据微软的数据,2017年,堆漏洞占其产品安全问题的53%。利用这些漏洞的一种方法是使用堆利用技术,这会滥用系统底层的堆分配器。有两个特性使这些技术更适合于攻击。首先,堆利用技术往往与应用程序无关,因此可以在不深入理解应用程序内部的情况下编写利用。其次,堆漏洞通常非常强大,攻击者可以通过滥用它们绕过安全解决方案。经典模糊测试技术和符号执行提供了发现新的堆利用原语的方法。其中,模糊测试技术通过随机改变程序输入从而执行不同的程序路径,最终可能会发现新的堆漏洞;而符号执行技术通过分析程序得到让特定代码区域执行的输入,从而有针对性地构造可能触发堆漏洞的输入。
然而,应用经典模糊测试技术来发现新的堆利用原语存在较多技术难点。其主要原因在于:首先,要成功触发堆漏洞,它必须生成具有精确数据的特定步骤序列,并使用模糊测试快速发现难以处理的问题;研究人员试图使用符号执行来解决这个问题,但却遇到了众所周知的状态爆炸问题,因此将其范围限制在验证已知的利用技术上。其次,需要设计一种快速的方法来估计堆利用的可能性,因为模糊测试需要清晰的信号,如分割错误,以识别有趣的测试用例。第三,由模糊测试生成的测试用例通常是冗余和模糊的,因此用户需要花费不可忽略的时间和精力来分析最终结果。
发明内容
本发明的目的针对现有技术存在的缺陷,提出了一种自动化堆利用原语采集技术,实现一个自动寻找堆原语的工具,并且通过广泛的分析多种不同的堆分配器和总结其共性实现了应用程序独立性。
所述一种自动化堆利用原语采集方法包括如下步骤:
步骤一:生成测试用例,随机生成五种类型的堆相关操作,具体包括分配、回收、缓冲区写、堆写和bug调用;
步骤二:崩溃检测:确认被执行的测试用例是否会导致利用的影响;
步骤三:测试缩减:使用delta-debugging算法对测试用例进行细化;
步骤四:POC生成:将触发漏洞的测试缩减之后,使用每个堆操作和C代码之间的一对一映射,将编码的测试用例转换为一个可读的PoC代码。
与现有技术相比,本发明的有益效果是:与现有的技术相比,本技术不仅可以验证已知利用技术,还可以发现未知的技术。在没有特定于开发的指南的情况下,本技术可以自由地探索寻找堆利用技术的搜索空间,从而增加满足某些利用技术前提条件的概率。
具体实施方式
下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科信息安全共性技术国家工程研究中心有限公司,未经中科信息安全共性技术国家工程研究中心有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011555098.9/2.html,转载请声明来源钻瓜专利网。