设计应用

基于参数约束的分支覆盖符号执行优化算法

作者:於家伟,李世明,毕雪洁,李秋月,高胜花
发布日期:2020-12-14
来源:2020年信息技术与网络安全第1期

0     引言

  软件漏洞是软件中潜藏的代码缺陷,通过提高检测代码的覆盖率可以提高漏洞的发现概率,而生成高覆盖率的测试用例进行检测漏洞时,若代码执行通过率高时,可认为该程序在一定程度上是可靠的。

  作为一种程序测试技术,符号执行软件测试、程序缺陷挖掘和测试用例生成中得到广泛的研究和应用,其程序变量是以抽象符号形式来通过符号模拟程序运行并搜集路径上的约束条件。此外,根据程序的语义、遍历程序的路径空间也可用来检测程序是否满足一定的安全特性。

       输入约束作为符号执行优化的方法之一,近年来业界已取得了一定成果。TRABISH D等人 结合静态分析和符号切片技术使符号执行能够搜索到更重要的路径;GODEFROID P等人提出以调用该执行函数生成的摘要作为约束条件来减少代码的重复执行;RAMOS D A等人将约束条件引入到KLEE中,通过检查被测程序的单个功能而不是整个程序,提高了效率;WONG E等人提出了基于文档辅助的建模方法,通过自然语言处理和试探法生成文档并提取约束条件;郭曦等人通过分析路径逻辑表达式和提取共享表达式来提高状态合并的效率;安靖等人通过生成外部调用函数摘要来避免因多次测试外部调用而引起的路径爆炸问题。



本文详细内容请下载:http://www.chinaaet.com/resource/share/2000003092



作者信息:

於家伟,李世明,毕雪洁,李秋月,高胜花

(1.哈尔滨师范大学 计算机科学与信息工程学院,黑龙江 哈尔滨 150025;2.上海市信息安全综合管理技术研究重点实验室,上海 200240)


此内容为AET网站原创,未经授权禁止转载。
符号执行 参数约束 测试用例 软件测试