2026 年每日通報的 CVE 數量比前一年多 131%。

替代方案

Syft 與 Grype 替代方案

Syft 與 Grype 是產生 SBOM 並比對漏洞的免費標準工具。當團隊需要不同的格式或生態系、需要反映建置實際使用內容的 SBOM,或想要不必自行維運的監控時,就會開始尋找替代方案。

更新日期

CRACI 是我們打造的產品,請您將這點納入考量;我們依據每個選項自己的文件來描述它們,並在其他工具更合適時明確說明。

團隊為何尋找 Syft 與 Grype 以外的選擇

Syft and Grype 官網首頁
anchore.com

Syft 是 Anchore 推出的免費 Apache-2.0 產生工具,適用於容器映像檔與檔案系統。它能辨識數十種套件類型,可輸出 CycloneDX、SPDX 與 Syft JSON,並能建立經簽章的 in-toto SBOM 證明。它的搭檔 Grype 則將 SBOM 與漏洞進行比對。

當團隊的情況改變時,就會尋找其他選擇:

  • 設定。catalogers 依掃描類型選擇,因此在已安裝的 express 專案上,單一旗標就決定了 npm 套件是否會出現在結果中。
  • 格式與生態系。有些團隊想要來自 CycloneDX 社群的產生工具、從建置輸出產生的 SPDX,或專為單一套件管理工具打造的工具。
  • 佐證資料。SBOM 描述的是被掃描的檔案,而不是建置實際下載的內容。
  • 監控。要持續監看已出貨的內容,就必須自行儲存 SBOM 並重新執行 Grype。

評估重點

  • SBOM 來自磁碟上的檔案,還是來自建置實際下載的內容。
  • 遞移相依套件,以及工具是否會在紀錄不完整時明確告知。
  • 版本發布後的監控,而不只是您手動執行時的一次掃描。
  • 格式:CycloneDX、SPDX 與 VEX。
  • 您還需要掃描哪些內容:並非您自行建置的映像檔、IaC、機密、叢集。

可選方案

前六項是 SBOM 產生工具。其餘項目則在 SBOM 之外,加上漏洞比對、監控或更完整的平台。

1. CRACI(我們的產品)

CRACI 官網首頁
craci.com

CRACI 在您的 GitHub Actions 建置執行時記錄 SBOM,而不是事後掃描檔案。具套件感知能力的代理伺服器會記錄作業取得的每個套件,包括從 CI 快取還原的套件,每份 CycloneDX 或 SPDX 格式的 SBOM 都會標示每個作業與每個快取的完整度。CRACI 會在新漏洞出現時持續重新評估受監控的 SBOM,政策關卡可依發現結果阻擋建置,API 則會傳回 SBOM、網路追蹤與來源證明。

最適合: 您在 GitHub Actions 上建置之軟體的 SBOM 與相依套件漏洞。

適合考慮的情況: 您不需要基礎架構即程式碼、機密、叢集或 VM 映像檔掃描(CRACI 不提供這些),且您的建置在 Linux 上的 GitHub Actions 執行。

建置時 SBOM 產生

2. cdxgen(開源)

cdxgen 官網首頁
github.com

cdxgen 是 OWASP CycloneDX 專案,採 Apache-2.0 授權,可從原始碼與容器映像檔建立 CycloneDX BOM。對於 Node.js,它會先解析鎖定檔(包括開發相依套件),也會分析程式碼中的 import。您可以用 -t 設定專案類型,限制它要尋找的內容。

最適合: 以 CycloneDX 為標準、希望使用該格式社群自家產生工具的團隊。

適合考慮的情況: 您能接受以檔案宣告的內容為準:和其他掃描工具一樣,它只能回報眼前的內容。

Syft、Trivy 與 cdxgen 的 SBOM

3. Microsoft SBOM Tool(開源)

Microsoft SBOM Tool 官網首頁
github.com

Microsoft SBOM Tool 是採 MIT 授權的 SBOM 產生工具,輸出 SPDX 2.2,或依需求輸出 SPDX 3.0,並可依據 SPDX 規格驗證 SBOM。它需要在命令列提供建置輸出資料夾、套件名稱、版本與供應商,因此屬於建置後步驟,可在 GitHub Actions 與 Azure Pipelines 中執行。

最適合: 希望為已封裝之建置輸出產生 SPDX 的團隊。

適合考慮的情況: 您會將它指向建置輸出資料夾:若指向剛提交的儲存庫,它幾乎沒有東西可描述。

CRACI 與自建 SBOM 工具組比較

4. CycloneDX 工具與建置外掛(開源)

CycloneDX 專案維護了針對單一生態系的產生工具,列在其 Tool Center 中:Maven、Gradle 與 Apache Ant 外掛,以及 npm、Yarn、Python、.NET、Go modules、Rust Cargo、PHP Composer、Ruby Gems、Erlang 與 Elixir、Conan 的工具。另外的 CycloneDX CLI 採 Apache 2.0 授權,不會產生 SBOM,而是用於轉換、合併、比對差異、驗證與簽章。

最適合: 單一生態系的專案,希望使用為該生態系打造的產生工具。

適合考慮的情況: 您能在混用多種語言的程式碼庫中,為每個生態系各執行一個工具。

CycloneDX 與 SPDX 比較

5. Tern(開源)

Tern 是軟體組成分析工具與 Python 函式庫,採 BSD-2-Clause 授權,可為容器映像檔與 Dockerfile 產生 SBOM。它根據每一層的套件中繼資料,逐層呈現容器內的內容,並輸出 SPDX tag-value、SPDX JSON 與 CycloneDX JSON 等格式。

最適合: 了解哪個映像檔層引入了哪個套件。

適合考慮的情況: 您的 SBOM 需求是針對容器映像檔,而非原始碼儲存庫。

Docker 映像檔 SBOM

6. Amazon Inspector SBOM Generator

Sbomgen 是 Amazon Inspector 本身用於映像檔、Lambda 與 EC2 掃描的 SBOM 產生工具,以獨立的 Linux 二進位檔提供。它從容器映像檔、目錄、封存檔、掛載的磁碟區,以及編譯後的 Go 與 Rust 二進位檔讀取套件中繼資料,並輸出 CycloneDX。它可將 SBOM 傳送到 Amazon Inspector Scan API 以取得漏洞發現,這需要 AWS 帳戶。

最適合: 工作負載已在 AWS 上執行的團隊。

適合考慮的情況: 您在 Linux 上執行它,這是它唯一支援的平台。

SBOM 工具比較

7. Trivy(開源)

Trivy 官網首頁
trivy.dev

Aqua Security 推出、採 Apache-2.0 授權的免費掃描工具。它可掃描容器映像檔、檔案系統、儲存庫、VM 映像檔與 Kubernetes 中的漏洞、IaC 設定錯誤、機密與授權,並輸出 CycloneDX 或 SPDX 格式的 SBOM。對儲存庫,它讀取鎖定檔;對映像檔,則讀取已安裝套件的中繼資料。

最適合: 預算有限,或希望在任何 CI 中使用單一掃描工具的團隊。

適合考慮的情況: 您能自行建置其餘部分:監控代表您要依自己的排程重新掃描。

CRACI 與 Trivy 比較

8. Anchore Enterprise

Anchore 官網首頁
anchore.com

Anchore Enterprise 建立在 Anchore 的開源工具 Syft 與 Grype 之上。它可從容器映像檔、原始碼與檔案系統產生 SBOM,匯入在其他地方建立的 SBOM,在沒有原始建置產物的情況下重新掃描已儲存的 SBOM,並強制執行 FedRAMP、NIST、CIS、PCI DSS 與 CMMC 政策套件。它可部署在 Kubernetes、Docker Compose 或離線隔離環境中。價格依報價而定。

最適合: 橫跨多種 CI 系統的容器群,以及政府或離線隔離環境。

CRACI 與 Anchore 比較

9. Dependency-Track(開源)

Dependency-Track 官網首頁
dependencytrack.org

OWASP Dependency-Track 是採 Apache 2.0 授權的免費平台,可追蹤您產品組合中每個應用程式每個版本的元件。它從 NVD 與 GitHub Advisories 等來源取得漏洞資料,具備針對安全、授權與營運規則的政策引擎,並能讀取與產生 CycloneDX VEX。

最適合: 希望使用透明、自架且無授權費之 SBOM 平台的團隊。

適合考慮的情況: 您已準備好維運它並為它提供資料;它分析您上傳的 SBOM,但不會產生 SBOM。

給 Dependency-Track 使用者的 CRACI

10. Aikido

Aikido 官網首頁
aikido.dev

涵蓋廣泛的 AppSec 套件。每個方案都列出 SCA、SAST、機密、IaC、雲端安全態勢、容器掃描、DAST、授權掃描與 SBOM 產生。其 SCA 使用函式層級的可達性分析,AutoFix 會開啟 pull request,並可阻擋含有嚴重發現的 pull request。它提供免費的 Developer 方案,付費方案每月 $350 起(截至 2026 年 9 月)。

最適合: 希望以單一工具與單一儀表板滿足大部分掃描需求的小型團隊。

CRACI 與 Aikido 比較

11. GitHub Advanced Security

GitHub Advanced Security 官網首頁
github.com

建立在 GitHub 平台功能之上的兩項付費產品。Secret Protection 涵蓋機密掃描與推送保護;Code Security 涵蓋 CodeQL 程式碼掃描、Copilot Autofix 與相依性審查。它們建立在所有 GitHub 方案都包含的相依關係圖與 Dependabot 之上,相依關係圖可匯出為 SPDX SBOM。在 Team 或 Enterprise 方案上,Secret Protection 每位活躍提交者每月 $19,Code Security $30(截至 2026 年 9 月)。

最適合: 程式碼與工作流程已在 GitHub 上、並希望減少廠商數量的團隊。

CRACI 與 GitHub Advanced Security 比較

並列比較

SBOM 產生工具,截至 2026 年 9 月。
功能 CRACI Syft Trivy cdxgen Microsoft SBOM Tool GitHub export Amazon Inspector Sbomgen
元件清單的來源 記錄的建置流量 Cataloger 讀取檔案與映像檔 Lock file 或已安裝的套件 原始碼與容器映像檔 建置輸出(drop)資料夾 Manifest 與 lock file 映像檔、目錄、封存檔與二進位檔中的檔案
格式 CycloneDX、SPDX CycloneDX、SPDX、Syft JSON CycloneDX、SPDX CycloneDX SPDX SPDX CycloneDX
記錄建置取得的內容 包括 CI 快取 Dependency submission
無需執行建置即可運作
簽章證明或來源證明 無簽章來源證明 in-toto SBOM 證明 搭配 Cosign 未說明 未說明 Artifact attestations 未說明
漏洞比對 受監控的 SBOM 搭配 Grype 使用 未說明 未說明 Dependabot 警示 Inspector Scan API
建置的對外連線政策 失效即封鎖
可在任何 CI 中執行 目前支援 GitHub Actions;GitLab CI 與 Jenkins 已列入產品藍圖 GitHub 儲存庫 僅限 Linux
價格 每 vCPU 分鐘 $0.002(2 vCPU 為 $0.004),按秒計量;無月費,也不按 SBOM 收費 免費,Apache-2.0 免費,Apache-2.0 免費,Apache-2.0 免費,MIT 包含在 GitHub 中 免費下載
  • 支援
  • 部分支援
  • 不支援
  • 已列入產品藍圖

「未說明」表示我們無法在該廠商的公開頁面上確認此項資訊。

何時應繼續使用 Syft 與 Grype

  • 您需要掃描並非您自行建置的映像檔。
  • 您仰賴 Grype 的 VEX 篩選或 CI 中的嚴重性關卡。
  • 您想要一套能在任何地方執行的免費產生工具。
  • 您可以兩者並用:針對並非您自行建置的映像檔,繼續使用 Syft 與 Grype。

延伸閱讀:建置時 SBOM 產生、SBOM 工具比較,以及開源 SBOM 產生工具遺漏了什麼。

Syft 與 Grype 替代方案常見問題

團隊比較時最常提出的問題,簡短解答

最好的開源 SBOM 產生工具是哪一個?

取決於您要掃描的對象。Syft 與 Trivy 是免費、採 Apache-2.0 授權的產生工具,適用於容器映像檔與檔案系統。cdxgen 從原始碼與映像檔產生 CycloneDX,CycloneDX 建置外掛各自涵蓋一個生態系,Microsoft SBOM Tool 為建置輸出資料夾產生 SPDX,Tern 則逐層呈現映像檔內容。這些工具都是讀取檔案。CRACI 是付費產品,直接從建置本身記錄 SBOM。

Syft 的費用是多少?

免費。Syft 與 Grype 是採 Apache-2.0 授權的免費開源軟體。Anchore 另外銷售以它們為基礎的商業平台 Anchore Enterprise,價格需個別報價(截至 2026 年 9 月)。

如何使用 Syft 產生 SBOM?

執行 syft 並指定目標與輸出格式,例如映像檔使用 syft my-image:latest -o spdx-json=sbom.spdx.json,目錄則使用 syft ./my-project -o cyclonedx-json=sbom.cdx.json。syft cataloger list 會列出該掃描類型會執行哪些 catalogers。

Syft 與 Grype 有什麼不同?

Syft 負責產生 SBOM。Grype 是漏洞掃描工具:它掃描容器映像檔、檔案系統與 SBOM,以 EPSS 與 KEV 資料排定優先順序,並支援以 OpenVEX 篩選結果。兩者都來自 Anchore,採 Apache-2.0 授權,團隊通常會一起使用。

CRACI 能取代 Syft 與 Grype 嗎?

對於您在 GitHub Actions 上建置的軟體,可以。CRACI 在建置執行時記錄 SBOM,並為每個作業與每個快取標示完整性狀態,且在新漏洞出現時持續重新評估受監控的 SBOM。對於並非您自行建置的映像檔,請保留 Syft 與 Grype 這類掃描工具。

記錄一次建置並比較

在 CRACI 上執行一個 GitHub Actions 作業,將它記錄的 SBOM 與您掃描工具產生的 SBOM 並排比較。

預約示範