ClusterFuzzLite,一個用於組織代碼模糊測試的系統

最近 谷歌揭幕 通過博客文章 ClusterFuzzLite 項目,它允許組織模糊測試 用於在持續集成系統運行階段早期檢測潛在漏洞的代碼。

目前,ClusterFuzz 可用於自動化 GitHub Actions 中拉取請求的模糊測試, Google Cloud Build 和 Prow,但預計未來會兼容其他IC系統。 該項目基於 ClusterFuzz 平台,旨在協調模糊測試集群的工作,並在 Apache 2.0 許可下分發。

需要說明的是,自2016年谷歌推出OSS-Fuzz服務後,已有超過500個主要開源項目被納入持續模糊測試計劃。 從進行的檢查中,已經消除了 6.500 多個已確認的漏洞,並糾正了 21.000 多個錯誤。

關於 ClusterFuzzLite

ClusterFuzzLite 繼續開發模糊測試機制 能夠在擬議變更的同行評審階段更早地發現問題. ClusterFuzzLite 已經在 systemd 和 curl 項目的變更審查過程中引入,並且可以識別在新代碼驗證的初始階段使用的靜態分析器和 linter 中未檢測到的錯誤。

今天,我們很高興地宣布 ClusterFuzzLite,這是一種連續模糊測試解決方案,作為 CI/CD 工作流程的一部分運行,可以比以往更快地發現漏洞。 只需幾行代碼,GitHub 用戶就可以將 ClusterFuzzLite 集成到他們的工作流程中,並對拉取請求進行模糊測試,以在錯誤發生之前捕獲錯誤,從而提高軟件供應鏈的整體安全性。
自 2016 年推出以來,已有 500 多個關鍵開源項目被集成到 Google 的 OSS-Fuzz 計劃中,從而糾正了 6.500 多個漏洞和 21.000 個功能錯誤。 ClusterFuzzLite 與 OSS-Fuzz 攜手並進,在開發過程中更早地檢測回歸錯誤。

ClusterFuzzLite 支持 C、C++、Java 中的項目驗證 (和其他基於 JVM 的語言)、Go、Python、Rust 和 Swift。 模糊測試是使用 LibFuzzer 引擎進行的。 還可以調用 AddressSanitizer、MemorySanitizer 和 UBSan(UndefinedBehaviorSanitizer)工具來檢測內存錯誤和異常。

關鍵特徵 ClusterFuzzLite 突出顯示例如 快速驗證提議的更改 在接受代碼之前的階段發現錯誤,以及 下載有關崩潰發生條件的報告, 移動到的能力 更高級的模糊測試 識別在驗證代碼更改後未出現的更深層次的錯誤,以及生成覆蓋率報告以評估測試期間代碼的覆蓋率以及允許您選擇所需功能的模塊化架構。

包括 systemd 和 curlya 在內的大型項目在代碼審查期間使用 ClusterFuzzLite,並取得了積極的成果。 根據 curl 的作者 Daniel Stenberg 的說法,“當人類審閱者同意並批准代碼並且他們的靜態代碼分析器和 linter 無法檢測到更多問題時,模糊測試將帶您進入下一個級別的代碼成熟度和健壯性。 OSS-Fuzz 和 ClusterFuzzLite 幫助我們將 curl 保持為一個高質量的項目,全天、每天和每次參與。

我們必須記住,模糊測試會生成接近實際數據(例如帶有隨機標籤參數的 html 頁面、帶有異常標頭的文件或圖像等)的輸入數據的各種隨機組合的流,並糾正過程中可能出現的故障。

如果任何序列失敗或與預期響應不匹配,則此行為很可能表明存在錯誤或漏洞。

終於 如果您有興趣了解更多信息,您可以查看詳細信息 在下面的鏈接中。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。