工程開發
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 查看