[发明专利]一种多层次混合的漏洞自动挖掘方法有效
| 申请号: | 202010616136.0 | 申请日: | 2020-06-30 |
| 公开(公告)号: | CN111859388B | 公开(公告)日: | 2022-11-01 |
| 发明(设计)人: | 田志宏;杨佳庚;郭润生;鲁辉;张鑫国;金成杰;何陆潇涵;孙起;曹靖靖;孙彦斌;苏申 | 申请(专利权)人: | 广州大学 |
| 主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/56;G06F11/36 |
| 代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;邱明惠 |
| 地址: | 510006 广东省广*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 多层次 混合 漏洞 自动 挖掘 方法 | ||
1.一种多层次混合的漏洞自动挖掘方法,其特征在于:包括以下步骤:
S1:通过静态分析技术利用指针分析获取程序中的指针分配与赋值过程,记录所有指针指向的内存地址位置;利用别名分析技术获取CMP指令的目的操作数而明确目标程序的跳转地址;
S2:通过中间代码静态插桩技术实现向目标程序的关键位置插桩监测代码;
S3:通过动态语义信息提取技术在插桩后的目标程序中,执行到监控函数时,将当前的栈帧信息保存在全局数据结构中,所述栈帧信息包括从esp寄存器中保存的内存地址到ebp寄存器中保存的内存地址中的内存信息、各个寄存器的状态及执行路径和关键变量的当前取值;
S4:通过以动态符号执行为主导的覆盖导向型模糊测试技术将插桩监测代码的目标应用程序输入到覆盖导向型模糊测试中,通过覆盖导向型模糊测试技术将模糊测试进程生成的测试用例输入到目标应用程序中执行,在目标程序执行的过程中,插桩到目标程序中的监测代码会将目标程序执行过程中的运行时动态语义信息收集到相应的测试用例;
所述S2中,插桩位置包括每个基本块的起始位置、CMP指令的跳转位置和危险路径,所述CMP指令的跳转位置和危险路径分别为CMP指令的目的操作数和指针指向的内存地址所在的路径;
所述S2中,中间代码静态插桩技术作用于程序在编译过程中的中间状态,用于目标应用程序的执行,利用所获取到的语义信息,精准定位插桩位置,所述中间状态为编译器所使用的中间代码;
所述S2中,中间代码静态插桩在编译器的中间表示层实现,针对的是LLVM IR语言,通过在目标程序的中间表示层插桩目标应用程序,借助指针分析和别名分析识别到的CMP指令与它们的目的操作数和指针类变量的分配、赋值、指向内存位置和内存释放位置,在CMP指令的目的操作数以及指针指向内存位置和内存释放位置插桩监控代码;
所述S4中,以动态符号执行为主导的覆盖导向型模糊测试技术包括以下步骤:
C1:将插桩加工后的目标二进制程序输入给模糊测试;
C2:如果模糊测试触发了未知漏洞,则输出漏洞信息及相关语义信息,以便于测试和调试;
C3:如果未触发漏洞,则调用动态符号执行对复杂校验分支进行约束求解;
C4:如果动态符号执行求解后产生了新的覆盖,则将求解后的种子输入给模糊测试进程,否则需要调用运行时动态语义信息;
C5:根据运行时动态语义信息变异测试用例,生成包含语义信息的测试用例,并将其输入给模糊测试进程。
2.根据权利要求1所述的一种多层次混合的漏洞自动挖掘方法,其特征在于:所述S1中,静态分析技术包括以下步骤:
A1:使用控制流分析在目标二进制程序上划分出控制流图:
A2:在目标二进制程序的控制流图上使用指针分析以及别名分析提取出指针与指向内存地址和CMP指令及其目的操作数,这些静态语义信息将帮助中间代码静态插桩模块识别敏感位置;
A3:寻找到A2所述的敏感位置,并向这些位置插桩。
3.根据权利要求1所述的一种多层次混合的漏洞自动挖掘方法,其特征在于:所述S1中,CMP指令的目的操作数将在符号执行对复杂分支求解失败后指导模糊测试进程跳转到正确地控制流中执行,帮助模糊测试进程探索目标程序更深层的逻辑,解决目标程序无法触发目标程序深层逻辑漏洞的问题,目标程序包含的有关指针的操作是产生漏洞的危险行为,指针指向的内存位置是可能触发漏洞的危险路径,记录指针指向的内存地址的目的是实现在危险路径的精确插桩。
4.根据权利要求1所述的一种多层次混合的漏洞自动挖掘方法,其特征在于:所述S3中,动态语义信息提取技术包括以下步骤:
B1:将测试用例输入到目标程序后,目标程序根据程序内部逻辑正常执行;如果执行到插桩的监控函数后,将调用程序状态监控函数;否则,目标程序继续执行;
B2:当调用程序状态监控函数后,监控函数将打印目标程序的运行时动态语义信息,并将其存储到相关的数据结构中;
B3:当测试用例的一次执行结束后,将存储的语义信息反馈给覆盖导向型模糊测试框架。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州大学,未经广州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010616136.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种妇产科助产钳
- 下一篇:拉布门楣灯箱的框架以及拉布门楣灯箱





