[发明专利]一种针对堆可控分配漏洞的检测方法及系统有效
申请号: | 201310277696.8 | 申请日: | 2013-07-03 |
公开(公告)号: | CN103389939A | 公开(公告)日: | 2013-11-13 |
发明(设计)人: | 陈渝;肖奇学;郭世泽;史元春;徐永健;茅俊杰;赵静;陈韬 | 申请(专利权)人: | 清华大学;中国人民解放军总参谋部第五十四研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F21/57 |
代理公司: | 北京理工大学专利中心 11120 | 代理人: | 高燕燕 |
地址: | 10008*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明为一种针对堆可控分配漏洞的检测方法,覆盖率比Fuzzing等动态测试技术高,并且同时具备动态检测的准确性,误报率低。第一步:对目标分析文件进行逆向获取需要分析的函数和参数信息;第二步:对需要分析的函数的参数进行符号化,第三步:利用符号执行引擎对目标程序进行具体执行和符号执行相结合的分析;第四步:利用二进制翻译方法对堆分配函数进行监控分析;第五步:通过堆栈获取堆分配函数需要分配的大小,并判断是否为符号值;第六步:对符号值进行分析求解;第七步:对符号值size进行整数溢出分析。 | ||
搜索关键词: | 一种 针对 可控 分配 漏洞 检测 方法 系统 | ||
【主权项】:
针对堆可控分配漏洞的检测方法,其特征在于,包括以下步骤:第一步:对目标分析文件进行逆向分析,通过反汇编、反编译、调试分析手段,对目标分析文件进行信息的获取和还原,获取的信息包括文件的执行流程信息、函数名称、参数信息、资源信息;第二步:对需要分析的文件的函数参数进行符号化;第三步:利用符号执行引擎对目标分析文件进行具体执行和符号执行相结合的分析,从而遍历所有路径;第四步:利用二进制翻译方法对堆分配函数进行监控分析;第五步:在目标分析文件执行到被监控的堆分配函数处时,对堆分配函数进行分析,通过堆栈获取堆分配函数需要分配的大小,并判断是否为符号值,如果是具体值,则继续运行,跳转至第八步;如果是符号值,则报告该路径所达的堆分配函数是存在可控堆分配漏洞,返回第三步;第六步:对符号值进行分析求解,如果size可以等于0,则表示通过设置相关参数,可以使得堆分配函数分配大小为0的内存,则报告中等危险漏洞;第七步:对符号值size进行整数溢出分析,并结合该路径上对size的约束,检测是否存在通过设定相应的变量,使得该符号值size存在整数溢出的可能,如果存在,则报告高等危险漏洞,并结束该路径。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学;中国人民解放军总参谋部第五十四研究所,未经清华大学;中国人民解放军总参谋部第五十四研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310277696.8/,转载请声明来源钻瓜专利网。
- 上一篇:一种纳米机器人控制设备
- 下一篇:一种加强结构的三维测量划线机水平臂