比較
CRACI vs Checkmarx One
Checkmarx One 從多個角度測試您的程式碼與相依套件。CRACI 執行建置,並記錄建置實際下載的內容。兩者涵蓋管線的不同部分,大多數兩者都需要的團隊會同時使用。
更新日期
簡短的答案
Checkmarx One 是應用程式安全平台,將靜態分析、軟體組成分析(SCA)、機密偵測、IaC、API 安全、容器安全、惡意套件防護與態勢管理集中在一處。CRACI 是相容於 GitHub Actions 的 CI 執行器,會記錄建置引入的每個外部相依套件,並從這份記錄產生 SBOM、來源證明與法規遵循佐證資料。Checkmarx One 是擁有多個引擎的掃描工具,CRACI 則是記錄工具。兩者在 SBOM 與漏洞追蹤上有所重疊,其他部分則幾乎沒有。
一覽比較
| 功能 | CRACI | Checkmarx One |
|---|---|---|
| 在建置執行時觀察相依套件 | 執行器上能辨識套件的 proxy | 分析上傳的原始碼封存檔 |
| 帶完整度狀態的建置時 SBOM | 五種狀態,依作業與快取標示 | 從掃描結果產生 CycloneDX 或 SPDX |
| 建置作業的對外連線政策 | 預設拒絕或允許,失效即封鎖 | 不執行您的建置 |
| 惡意套件偵測 | 標示帶有 CVE 的已知版本;對外連線政策限制來源 | 可自動封鎖建置 |
| 依可達性排定優先順序 | Exploitable Path 分析 | |
| SAST、機密與 IaC 掃描 | Checkmarx One 的一部分 | |
| API 安全與 DAST | Checkmarx One 的一部分 | |
| 授權政策 | 授權政策規則可封鎖建置 | 政策可發出警示或中斷建置 |
| 執行您的 CI 作業 | 作業在 CRACI 執行器上執行 | 接入您現有的 CI |
| 支援的 CI 系統 | 目前支援 GitHub Actions;GitLab CI 與 Jenkins 已列入產品藍圖 | Jenkins、TeamCity、Azure DevOps、GitLab 等 |
| 價格 | 每 vCPU 分鐘 $0.002(2 vCPU 為 $0.004),按秒計量;沒有月費,也不按 SBOM 收費 | 依開發者人數、應用程式數量與用量報價。截至 2026 年 9 月未公開價格。 |
- 支援
- 部分支援
- 不支援
- 已列入產品藍圖
Checkmarx One 的強項
廣度。Checkmarx One 涵蓋自有程式碼(SAST)、機密、基礎架構即程式碼、API、容器、開源相依套件、儲存庫健康度與 AI 元件,並在其 ASPM 層彙整發現結果。如果您想由單一廠商負責應用程式安全測試,CRACI 無法取代它。CRACI 完全不測試您的程式碼。
辨別哪些漏洞真正重要。Checkmarx SCA 使用可利用路徑分析,判斷您的程式碼可能呼叫第三方函式庫中哪些有漏洞的類別或函式。它會以無限深度掃描直接與遞移相依套件,包括私有套件。依嚴重程度、可達性、惡意程式碼與授權設定的政策,可以發出警示、阻擋 pull request 並中斷建置。
惡意套件。Checkmarx 維護一個大型的專屬惡意開源套件資料庫,涵蓋錯字搶註套件、相依性混淆與遭入侵的帳號,並能在您的相依樹中出現這類套件時自動封鎖建置。
SBOM 與整合。Checkmarx One 可匯出 CycloneDX 1.7 或 SPDX 2.3 格式的 SBOM 報告,並可選擇在 CycloneDX 中附上 VEX 研判資料,也能匯入 SBOM。它提供 Jenkins、TeamCity、GitHub Actions、Azure DevOps 與 Maven 的外掛程式,並透過 CLI 支援 GitLab、Bitbucket Pipelines、CircleCI、Bamboo 與 AWS CodeBuild。對於 Code Repository Integration 專案,它可以自動開啟帶有已修補套件版本的 pull request;其版本說明在推出時列出的是 npm package.json manifest。
CRACI 的不同之處
掃描工具看見的內容,與建置實際做了什麼
Checkmarx One GitHub Action 封裝了 Checkmarx CLI,會將您的原始碼儲存庫建立成 zip 封存檔並上傳以供掃描。SCA Resolver 則可以改為在地端使用您自己的套件管理工具擷取相依套件與指紋,並在不傳送原始碼的情況下送出分析。無論哪種方式,分析都是從專案開始:它的程式碼、manifest,以及這些檔案解析出的相依樹。
CRACI 則從建置開始。它就是執行器,因此能辨識套件的 proxy 會觀察作業實際從套件來源下載的內容:npm、PyPI、RubyGems、Composer、Cargo、Go、Nix、OCI、apt、apk 與 Git 來源,以及下載預設集。這包括工具鏈、基礎映像檔、版本發布下載,以及從 CI 快取還原的套件。每份 SBOM 都會依作業與快取標示其完整度:Complete、Complete with connections、Incomplete、Unavailable 或 Not recorded。
不只偵測,還能控制
由於建置在 CRACI 上執行,您可以為它設定對外連線(egress)政策:預設拒絕或預設允許、24 個內建的軟體來源預設集,以及適用於 npm、PyPI、apt、apk、Go proxy、Nix、Cargo、OCI 登錄庫與 Git 的具型別自訂來源。政策會在作業開始前驗證,並採失效即封鎖(fail closed)。Checkmarx 依套件本身的性質判斷套件,CRACI 則限制建置能從哪裡下載。CRACI 不會依信譽偵測惡意套件,因此這兩層防護彼此互補。
來源證明與監控
API 會回傳 SBOM、網路追蹤與來源證明(provenance)。CRACI 會跨建置與儲存庫彙整漏洞,並持續重新評估受監控的 SBOM。
部署位置的資產清冊
CRACI 的資產清冊檢視會在全域層級精確顯示哪些軟體版本部署在哪些產品上。當新漏洞出現時,您可以直接看到哪些產品執行受影響的版本,而不必從版本說明與試算表中拼湊答案。
何時兩者並用
- 安全測試加上版本發布佐證資料。在 pull request 中使用 Checkmarx One 檢查程式碼、機密、IaC 與相依套件風險;以 CRACI 作為發布建置的執行器,保存每次建置的 SBOM 與來源證明資料。
- 分層的供應鏈防禦。Checkmarx 惡意套件防護會標示有問題的套件;CRACI 的對外連線政策讓建置只使用核准的來源,並記錄每次下載。
- GitHub Actions 以外的管線。Checkmarx One 目前適用於 Jenkins、TeamCity、Azure DevOps 與 GitLab。CRACI 目前僅支援 GitHub Actions,GitLab CI 與 Jenkins 已列入產品藍圖,因此這些管線需要先移轉。
針對 Cyber Resilience Act(CRA)
Checkmarx 在其 AppSec Program Maturity Assessment(APMA)中提供 CRA 評估,依據 CRA 對連網產品的要求,衡量安全設計實務與漏洞管理。其部落格主張,AppSec 正成為 CRA 法規遵循的技術實作層,並特別關注透過 AI-BOM 記錄 AI 元件。
CRACI 則補上來自建置的佐證資料:每個版本包含了什麼、記錄的完整程度,以及之後的持續監控,SBOM 可匯出為 CycloneDX 或 SPDX。它將企業在更廣泛的 CRA 法規遵循流程中所需的相當大一部分軟體供應鏈可視性與佐證資料自動化。兩種工具都無法單獨讓產品符合法規。請參閱CRA 法規遵循與CRA 佐證資料。
在 Checkmarx One 之外加入 CRACI
CRACI 取代的是執行器,而不是 GitHub Actions。在工作流程中將 runs-on 改為 craci,執行結果仍會顯示在 GitHub 介面中。Checkmarx One GitHub Action 則以步驟的形式保留在工作流程中。先從一條發布管線開始,針對同一個 commit,比較 CRACI 的 SBOM 與 Checkmarx One 的 SBOM 報告。
需要比較兩種以上的工具嗎?Checkmarx 替代方案並列比較了九種選項。
CRACI 目前支援 GitHub Actions。GitLab CI、Jenkins 與其他 CI 系統已列入產品藍圖。進一步了解建置時 SBOM 產生與漏洞追蹤。