谷歌开源自动查找并修复bug的开源工具

电子说

1.3w人已加入

描述

近日,谷歌宣布开源ClusterFuzz,这是一个可扩展的模糊测试工具,可以运行在 25000 多个核心上的模糊测试基础设施。

该工具已经在谷歌内部使用很久了,如果你有关注谷歌的模糊测试,对它应该不陌生,因为Google 几年前推出了OSS-Fuzz服务,该服务实际上通过ClusterFuzz为大规模可分布式执行提供了测试环境。,如今ClusterFuzz已开源,任何人都可以使用。

谷歌

目前,ClusterFuzz在GitHub上已经获得2384个Star和127个Fork。(GitHub地址:https://github.com/google/clusterfuzz)

模糊测试背后的整体概念非常简单:你可以向你的应用程序抛出大量数据(包括随机输入),并看看它是如何反应。通常,它会崩溃,有时候你还会发现内存泄漏和安全漏洞。但是,你想要规模化解决问题,它就会变得更加复杂,这时候,你就需要ClusterFuzz这样的工具来管理这种复杂性。

ClusterFuzz将模糊化过程自动化,从错误检测到报告,然后重新测试到修复程序。该工具本身也使用了一些开源库,如libFuzzer 和 AFL等

ClusterFuzz还提供了许多功能特性:

高度可扩展。谷歌的内部实例运行在超过25,000台机器上。

准确的重复数据删除(Accurate deduplication)

问题跟踪器的全自动错误归档和关闭。

测试用例最小化。

通过二分法回归查找。

用于分析fuzzer性能和崩溃率的统计信息。

易于使用的Web界面,用于管理和查看崩溃。

支持引导模糊(例如libFuzzer和AFL)和blackbox模糊测试。

ClusterFuzz 已经在 Chrome 中发现了超过 16000 个 bug,在与 OSS-Fuzz 集成的 160 多个开源项目中发现了超过 11000 个 bug。现在大部分软件测试和部署工具链都是自动化的,所以现在模糊测试成为一个热门话题也就不足为奇了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分