您的位置:首页 >科技 >

谷歌开源ClusterFuzzLite以保护软件供应链

来源:时间:2021-11-23

谷歌宣布了一个名为ClusterFuzzLite的新开源“模糊测试”项目,作为互联网巨头现有ClusterFuzz工具的轻量级版本,该工具在近三年前开源。

模糊测试,或通常称为“模糊测试”,是一种自动化软件测试技术,涉及在部署计算机程序之前向其抛出无效或随机数据(“模糊测试”)以查看其反应。这可以帮助开发人员找到可能被不良行为者利用的错误和缺陷。

随着软件供应链攻击的增加,这揭示了开源软件在关键业务应用程序中的作用——以及此类软件包含的固有漏洞。过去一年中,从政府机构到医院和公司的无数组织都遭受了有针对性的软件供应链攻击,导致美国总统拜登发布了一项行政命令,概述了应对这些威胁的措施。作为回应,美国国家标准与技术研究院 (NIST)发布了软件验证指南,将模糊测试作为其推荐的软件测试“最低标准”的一部分。

被绒毛抓住

早在 2016 年,谷歌就推出了OSS-Fuzz,它结合了各种模糊测试引擎,为流行的开源软件项目提供持续模糊测试作为其质量保证 (QA) 流程的一部分。不久之后,谷歌开始提供 OSS-Fuzz 的 ClusterFuzz 后端作为免费服务,然后在 2019 年继续开源 ClusterFuzz 本身。

快进到今天,谷歌表示已经有 500 多个“关键”开源项目与 OSS-Fuzz 程序集成,进而确定了大约 6,500 个漏洞并修复了 21,000 个功能错误。

虽然 ClusterFuzzLite 提供了许多与 ClusterFuzz 相同的功能,例如连续模糊测试,但它本质上是一个精简的替代方案,更容易设置为开发人员的持续集成 (CI) 工作流的一部分,只需要几行代码。具体来说,ClusterFuzzLite 可用于对 GitHub 上的拉取请求进行模糊测试,这是 ClusterFuzz 无法使用的,有助于在将错误提交到主代码库之前捕获错误。

“只需几行代码,GitHub 用户就可以将 ClusterFuzzLite 集成到他们的工作流程中,并在提交之前对拉取请求进行模糊测试,从而提高软件供应链的整体安全性,”谷歌的一篇博客文章称。

在发布时,ClusterFuzzLite 正式支持少数 CI 系统,包括GitHub Actions和Google Cloud Build,尽管它也支持Prow作为早期测试版的一部分。谷歌表示,鉴于 ClusterFuzzLite 在构建时考虑了可扩展性,因此很容易添加对其他 CI 系统的进一步支持。

图说财富