谷歌宣布使用“模糊测试”检测错误的 ClusterFuzzLite 开源解决方案

Google LLC 今天宣布发布ClusterFuzzLite  ,旨在使模糊测试(一种使用随机或无效数据在软件中查找错误的技术)轻松集成到软件开发工作流程中。

谷歌宣布使用“模糊测试”检测错误的 ClusterFuzzLite 开源解决方案

模糊测试已成为发现软件错误和漏洞的基本部分。它可以通过在代码中抛出随机和意外数据来捕获可能通过手动测试而漏掉的错误,以产生越界结果和崩溃,这可能会揭示软件中的缺陷。

这种测试对于任何将暴露于外部用户输入的软件尤为重要。这是因为这是黑客试图利用系统的地方,或者用户可能会意外遇到使应用程序崩溃的案例。

ClusterFuzzLite 与OSS-Fuzz一起工作,OSS-Fuzz是一个由谷歌开发的程序,为选定的核心开源软件项目提供持续的模糊测试。自 2016 年 OSS-Fuzz 发布以来,它已在 500 多个关键开源项目中检测和修复了 6,500 多个漏洞和 21,000 个功能错误。

谷歌表示,Linux 操作系统上的用户进程管理服务 systemd 和用于传输数据的命令行工具和库 curl 等大型项目已经在代码审查期间使用 ClusterFuzzLite。

谷歌宣布使用“模糊测试”检测错误的 ClusterFuzzLite 开源解决方案

curl 的作者 Daniel Stenberg 说:“当人类审阅者点头并批准代码并且您的静态代码分析器和 linter 无法检测到更多问题时,模糊测试将带您进入下一个级别的代码成熟度和健壮性。” “OSS-Fuzz 和 ClusterFuzzLite 帮助我们将 curl 作为一个高质量的项目,全天候,每天和每次提交。”

ClusterFuzzLite 可以更轻松地将模糊测试集成到任何项目工作流程中,并使模糊测试成为提交期间的基本标准。GitHub 用户可以轻松地将其添加到他们的工作流程中,并且只需几行代码就可以在代码提交之前对拉取请求进行模糊测试以捕获错误。同样重要的是,它也很容易为闭源项目设置。

通过在集成过程中添加模糊测试,可以在将新代码添加到主代码库之前捕获代码中的错误。该解决方案目前支持GitHub Actions、Google Cloud Build和Prow。它在构建时考虑到了持续集成系统的可扩展性,并且团队做出了这样的设计,以便添加对其他 CI 系统的支持非常简单。

本文为作者 何斌 独立观点,并不代表 我是CIO 立场。

发表评论

登录后才能评论