[发明专利]一种软件漏洞挖掘方法有效
申请号: | 201010171979.0 | 申请日: | 2010-05-07 |
公开(公告)号: | CN101847121A | 公开(公告)日: | 2010-09-29 |
发明(设计)人: | 王铁磊;韦韬;邹维;张超;戴帅夫;丁羽;李义春 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 冯艺东 |
地址: | 100871 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种软件漏洞挖掘方法,属于软件工程和信息安全领域。本方法为:1)将多个正常数据输入目标程序,收集该目标程序的运行时信息;2)生成畸形数据,并将其输入该目标程序,收集该目标程序的运行时信息;3)根据1)、2)收集的运行时信息,识别该目标程序中校验和的检测代码;4)修改校验和的检测代码,使得目标程序处理畸形数据时的执行行为与处理正常数据时一致;5)生成若干畸形数据并输入修改后的目标程序,将使其崩溃的畸形数据作为样本数据;6)修改每个样本数据中校验和的域值并将其输入原目标程序,如果原目标程序崩溃或发生异常则报告一个潜在的安全漏洞。与现有技术相比,本发明可以大大提高漏洞挖掘的效率。 | ||
搜索关键词: | 一种 软件 漏洞 挖掘 方法 | ||
【主权项】:
一种软件漏洞挖掘方法,其步骤为:1)将多个正常数据分别输入目标程序,收集该目标程序处理每个正常数据的运行时信息;2)根据步骤1)所得的运行时信息,修改正常数据,生成畸形数据;3)将生成的多个畸形数据分别输入该目标程序,收集该目标程序处理每个畸形数据的运行时信息;4)根据步骤1)、3)收集的运行时信息,识别该目标程序中校验和的检测代码;5)修改识别出的校验和的检测代码,使得修改后的目标程序处理畸形数据时的执行行为与处理正常数据时一致;6)生成若干畸形数据并输入步骤5)所修改后的目标程序;7)将使修改后的目标程序崩溃的畸形数据作为样本数据,修改每个样本数据中校验和的域值,使修改后的样本数据能够通过原始目标程序的校验和检测;8)将步骤7)修改后的样本数据输入原目标程序,如果原目标程序崩溃或发生异常则收集原目标程序执行的调用栈以及执行上下文信息,并报告一个潜在的安全漏洞;其中,所述运行时信息包括:条件跳转指令、条件跳转指令是否发生跳转、影响条件跳转指令中所用到的标志寄存器指令的第一个操作数所依赖的输入字节信息和第二个操作数所依赖的输入字节信息。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201010171979.0/,转载请声明来源钻瓜专利网。
- 上一篇:一种PC硬盘信息防盗的逻辑绑定方法
- 下一篇:一种触摸板获取输入信息的方法