
基于程序功能标签切片的制导符号执行分析方法研究.pdf
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
本文探讨了一种新颖的方法,即利用程序功能标签切片技术来分析和指导符号执行过程,旨在提升软件测试与验证的有效性和效率。通过这种方法,可以更精确地定位并解决代码中的潜在问题,从而提高系统的整体质量。
本段落提出了一种创新的程序分析技术——OPT-SSE(Optimized Symbolic Execution guided by Program Function Label Slice),旨在优化符号执行效率并扩大其覆盖范围。符号执行是一种强大的动态程序分析方法,主要用于测试与验证,但由于庞大的执行路径和复杂的控制流限制了它的应用效果。
在OPT-SSE中,首先从功能文档提取出反映不同功能或行为的功能标签,并通过程序的控制流图来建立这些标签与其基本块(如函数、循环及条件语句)之间的关联。这使得每个功能标签都与特定执行路径相关联;接下来依据它们在运行过程中的顺序关系构建起功能标签执行流,以便更好地理解和追踪程序的行为。
随后,在针对具体代码点的目标分析阶段,OPT-SSE提取出相关的功能执行流片段,并通过预定义的规则来指导符号执行。这种方式能够有效排除无关的功能分支路径,从而提升效率和覆盖范围。
实验结果表明,与KLEE等主流搜索策略相比,OPT-SSE在目标导向速度上平均提升了4.238倍,在成功率方面提高了31%,同时程序指令覆盖率和分支覆盖率分别增加了8.95% 和 8.28%。这些改进对于软件测试和验证具有重大意义,有助于更快地识别潜在错误与安全漏洞。
通过在包括binutils、gzip及coreutils在内的十个不同软件的二十个应用工具上进行实验,证明了OPT-SSE的有效性和实用性。这种结合静态分析与动态符号执行的方法为提升程序质量和安全性评估提供了更高效且精准的技术手段,尤其适用于大型和复杂的项目。
全部评论 (0)


