受限超大型系统中的灰盒模糊测试:面向软件工程社区的经验教训
软件工程
2025-04-29 v3
摘要
测试基于微服务的超大型金融科技系统 presents significant 挑战,包括对生产环境的有限访问、复杂的依赖关系以及严格的安全约束。我们提出了 SandBoxFuzz,一种可扩展的灰盒模糊测试技术,旨在解决这些限制,方法是利用面向方面编程和运行时反射来实现动态规范矗立,生成受限环境中的定向输入。SandBoxFuzz 还引入一种基于日志的覆盖率机制,无缝集成到构建管道中,无需运行时覆盖代理,这些代理在工业环境中往往不可行。SandBoxFuzz 已成功部署在蚂蚁集团的生产线上。相较于最初基于最先进模糊测试框架构建的解决方案,SandBoxFuzz 在其微服务软件中表现出优势,实现了分支覆盖率提升 7.5%,识别 1,850 个额外异常,并将设置时间从数小时缩短到数分钟,凸显了其在真实工业环境中的有效性和实际实用性。通过开源 SandBoxFuzz,我们为研究人员和实践者提供了一个实用且高效的工具,用于测试大规模微服务系统。
引用
@article{arxiv.2501.10269,
title = {Grey-Box Fuzzing in Constrained Ultra-Large Systems: Lessons for SE Community},
author = {Jiazhao Yu and Yanlun Tu and Zhanlei Zhang and Tiehua Zhang and Cheng Xu and Weigang Wu and Hong Jin Kang and Xi Zheng},
journal= {arXiv preprint arXiv:2501.10269},
year = {2025}
}