[发明专利]基于全局超级块支配图的动态符号执行方法及其装置有效

专利信息
申请号: 201310024675.5 申请日: 2013-01-23
公开(公告)号: CN103116540A 公开(公告)日: 2013-05-22
发明(设计)人: 张小松;陈厅;吉小丽;牛伟纳;陈瑞东;王东 申请(专利权)人: 电子科技大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 成都华典专利事务所(普通合伙) 51223 代理人: 徐丰;杨保刚
地址: 610000 四川省成*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提供了一种基于全局超级块支配图的动态符号执行方法及其装置,属于计算机软件测试和软件安全领域。方法如下:获取被测可执行程序的控制流图,按支配关系相关理论转化为超级块支配图。对图中每个节点标“权”,并在每次符号执行前更新,“权”表示执行该节点最少能覆盖的基本块个数。在一次动态符号执行结束后,从超级块支配图中选择“权”值最大的节点,并生成对应的预测路径约束条件,然后用求解器求解生成新测试用例,驱动下次执行。本方案与已有技术相比,能够以最少的测试用例尽可能覆盖更多的代码块,有效提高代码覆盖率增长速度,缓解路径爆炸问题。本发明对提高动态符号执行测试大型应用软件的性能有重大的意义。
搜索关键词: 基于 全局 超级 支配 动态 符号 执行 方法 及其 装置
【主权项】:
一种基于全局超级块支配图的动态符号执行方法,其特征在于包括以下步骤:1)、获得程序的控制流图和函数调用关系图; 2)、利用Boost图形库提供的支配树算法获得被测程序的立即前、立即后支配树;3)、合并立即前、立即后支配树形成函数基本块支配图;4)、合并函数基本块支配图中的强连通分量形成函数超级块支配图;5)、利用函数调用关系图将所有函数超级块支配图合并,形成全局超级块支配图,并为全局超级块支配图中的各节点设置初始权值,并标记为“未执行”状态;6)、为被测程序提供初始输入,并对被测程序插装,将被测试程序运行起来;7)、检测程序执行路径上是否有潜在的漏洞,并自动搜集路径约束条件;8)、利用执行过程中的基本块覆盖信息更新超级块支配图各节点的权值和执行状态;9)、根据超级块支配图的权值,从已执行路径上的所有分支中选择权值最大的分支节点;10)、从路径约束条件中找出第(9)步选择出的分支节点对应的条件表达式,将该表达式取反,保留该表达式之前的约束条件,删除之后的,形成预测路径约束条件;11)、利用求解器求解预测路径约束条件,生成新测试用例,如果无解,则回到第(9)步,重新选择分支;12)、如果还有新的测试用例生成,则代替初始测试用例回到第(6)步续执行。否则表示所有的可执行路径分支都已被执行,则测试结束。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201310024675.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top