工程开发
ossfuzz avatar

ossfuzz

利用 OSS-Fuzz CLI 框架简化开源项目的持续模糊测试,包含构建测试脚本、管理配置及生成覆盖率报告。

简介

ossfuzz 技能为与 Google 的 OSS-Fuzz 基础设施互动提供了全面的接口,该基础设施专为开源软件提供免费的分布式模糊测试服务。此工具旨在协助安全工程师、开发人员和维护者实施持续模糊测试、管理漏洞发现或评估关键项目的代码覆盖率。通过利用 helper.py 脚本,用户可以在隔离的环境中执行复杂的构建操作,确保在不同开发设置间的一致性。

  • 编排整个模糊测试生命周期:构建项目镜像、编译模糊测试脚本,并使用 AddressSanitizer (ASan) 和 LeakSanitizer 等消毒器执行测试。

  • 协助在本地重现上游 OSS-Fuzz 服务中发现的崩溃问题,使用与原始环境一致的构建配置。

  • 提供生成详细代码覆盖率报告的指令,协助开发人员识别未测试的代码路径并优化模糊测试器的性能。

  • 通过 project.yaml 支持项目元数据配置,并为专业测试创建基于 Docker 的构建环境。

  • 与 Fuzz Introspector 集成,提供有关性能分析、阻碍识别以及覆盖代码命中频率的深入见解。

  • 通过管理基础镜像、构建脚本和本地执行路径,简化与 OSS-Fuzz 平台的互动。

  • 最适合用于为开源项目设置持续模糊测试,或调试来自 OSS-Fuzz 错误追踪系统的特定崩溃报告。

  • 需要具备 Docker 知识,因为它依赖容器化构建来确保测试执行的隔离性与可重现性。

  • 对于需要基础设施且不想负担自行托管专用模糊测试服务器成本的项目来说至关重要。

  • 请注意,此技能主要适用于开源软件;闭源项目除非符合公用 OSS-Fuzz 托管条件,否则需要自行建立本地实例。

  • 实用的工作流程包括:克隆 OSS-Fuzz 仓库、构建项目专用的测试脚本、使用消毒器执行模糊测试器,以及使用 gsutil 获取覆盖率产物。

仓库统计

Star 数
4,873
Fork 数
424
Open Issue 数
21
主要语言
Python
默认分支
main
同步状态
空闲
最近同步时间
2026年4月29日 06:04
在 GitHub 查看