混合符号执行增强的Fuzzing测试:提升效率与覆盖率
需积分: 33 27 浏览量
更新于2024-09-07
2
收藏 977KB PDF 举报
本文探讨了"基于混合符号执行的Fuzzing测试技术"的研究论文,针对Fuzzing测试和符号执行在漏洞挖掘中的局限性,提出了一个创新的方法。Fuzzing测试是一种通过随机输入数据来查找软件漏洞的自动化测试技术,而符号执行则是一种利用程序符号信息进行分析的技术,能够更深入地理解程序行为。
作者们结合了Fuzzing测试的灵活性和符号执行的精确性,通过二进制代码插桩技术对程序进行动态监控。这种插桩技术允许他们在程序运行时记录关键指令的执行过程和环境变量,从而获取更为详尽的上下文信息。在Fuzzing测试过程中,他们采用了离线混合符号执行策略,即在指令重放时收集路径约束条件,这些条件可能涉及到程序状态的特定限制或依赖关系。
为了处理这些约束条件,他们运用了形式化方法,如STP(Satisfiability modulo theories),这是一个求解约束满足问题的工具。STP能够解决在符号执行过程中产生的逻辑推理问题,帮助生成新的测试数据集,这些数据集的设计目的是引发程序未预期的行为,从而可能暴露潜在的漏洞。
在测试过程中,他们不仅关注程序的正常执行,还会监测任何异常行为,这是通过计算代码覆盖率来实现的。代码覆盖率反映了测试用例覆盖了源代码的多少,高的覆盖率意味着测试的全面性和深度。实验结果显示,这种混合符号执行的Fuzzing测试工具在Word 2003等大型应用软件的测试中表现出色,成功发现了七个异常,并显著提高了代码覆盖率,相较于传统的Fuzzing测试工具具有明显优势。
这篇论文的贡献在于提出了一种融合了Fuzzing测试和符号执行优点的新型漏洞挖掘方法,通过动态插桩和离线混合执行,有效地提高了测试效率和漏洞检测能力,对于提高软件质量、保障网络安全具有重要意义。
240 浏览量
1125 浏览量
111 浏览量
173 浏览量
229 浏览量
2019-08-16 上传
2023-11-17 上传
123 浏览量
weixin_39841848
- 粉丝: 512
- 资源: 1万+