FerroSCA
Rust-native SBOM / SCA 與漏洞管理伺服器
何時收回成本?
回收週期取決於成本項目和替換範圍
該產品的回收週期取決於您目前的 AWS 支出、替換範圍和執行環境。請使用帳單模擬器識別符合的成本項目並取得粗略的節省估算。
一個 Rust-native SBOM / SCA 和漏洞管理伺服器。它匯入 CycloneDX 和 SPDX SBOM,使用 CVSS 和 EPSS 對發現項目評分,並透過 REST API 提供結果。它作為單一 Rust 行程執行 — 無需 JVM、無需獨立 front-end tier、無需独立 worker tier — 在一秒內啟動,並將 dashboard 嵌入同一個二進位檔案。安全加固 Amazon Linux 2023 AMI(arm64 / Graviton)。
FerroSCA 匯入 CycloneDX 1.4 / 1.5 / 1.6(JSON 和 XML)以及 SPDX 2.2 / 2.3 SBOM,將元件與公共漏洞資料關聯,使用 CVSS v2 / v3 / v4 和 EPSS 對發現項目評分,評估 policy,並透過 REST API 公開結果。它支援 Package URL 0.6 和 CPE 2.3 identifier,支援 Alpine / Debian / Ubuntu base image 的 distro-aware matching,提供含 30+ 條件的 policy engine,以及 SPDX license detection。通知透過 Email 和 Webhook 傳送。驗證支援 local-user(SHA3-256 API keys)、OIDC 和 LDAP(gated),TLS 透過 rustls,變更操作具有 project-level ACL。API 預設是 FerroSCA-native REST API(standard),併為遷移提供 opt-in 的 Dependency-Track REST API v1 wire-compatible edition(dtrack-compat)。誠實範圍:Dependency-Track API 具備 100% path coverage,但 deep-schema 約 69%(presence symmetry,而非 field-level fidelity)— 從不作為 100% wire-compatible 或 drop-in 行銷;不包含 MySQL,受支援的 Marketplace topology 為單節點。工程:每個 crate 都使用 #![forbid(unsafe_code)],clippy 在 -D warnings 下 clean,生產程式碼無 unwrap(),有 cargo deny gate,CI 中產生 CycloneDX SBOM + self-VDR,並使用 fuzz-tested parsers。
面臨挑戰
軟體供應鏈安全需要一台伺服器,它能夠擷取 SBOM(CycloneDX / SPDX)、將相依組件與公開漏洞資料進行關聯、使用 CVSS 和 EPSS 進行評分,並根據策略持續對其進行監控。典型的 SCA / 漏洞管理伺服器往往是多層架構 — JVM、獨立前端、獨立 worker、外部資料庫 — 維運負擔較重。目前的訴求是一個輕量級且易於遷移的 SBOM / SCA 伺服器。
運作原理
- 1
擷取 SBOM 並進行評分
FerroSCA 擷取 CycloneDX 1.4 / 1.5 / 1.6(JSON / XML)和 SPDX 2.2 / 2.3 SBOM,將組件與 NVD JSON 2.0、OSV、公開安全性通告來源以及 CISA KEV 進行比對,並使用 CVSS v2 / v3 / v4 和 EPSS 對檢測結果進行評分。它支援 Package URL 0.6 和 CPE 2.3 識別碼,以及針對 Alpine / Debian / Ubuntu 的發行版感知比對。
- 2
以單一行程提供服務
結果透過 REST API 提供,且儀表板已嵌入到同一個二進位檔案中。它作為單一的 Rust 行程執行 — 無 JVM,無獨立的前端層,無獨立的 worker 層 — 在 1 秒內即可啟動,且閒置時 RAM 佔用低於大約 256 MB。它還包含一個具有 30+ 個條件的策略引擎和 SPDX 授權檢測功能。
- 3
原生 API + DT 相容版本
預設提供 FerroSCA 原生的 REST API,且為了便於遷移,您還可以選擇使用 Dependency-Track REST API v1 協定相容版本(dtrack-compat)。身分驗證支援本機使用者(SHA3-256 API 金鑰)、OIDC 和 LDAP(受控);TLS 採用 rustls;針對變更操作實施專案級 ACL 控制;透過 Email 和 Webhook 進行通知。
產品亮點
SBOM ingest(CycloneDX 1.4–1.6 JSON / XML,SPDX 2.2 / 2.3)加漏洞情資(NVD、OSV、公共 advisories、CISA KEV),使用 CVSS v2 / v3 / v4 + EPSS 評分。
單一 Rust 行程 — 無需 JVM、無需獨立 front-end 或 worker tier;亞秒級啟動,閒置低於 256 MB RAM,dashboard 嵌入二進位檔案。
預設使用 FerroSCA-native REST API,另有用於遷移的 opt-in Dependency-Track REST API v1 wire-compatible edition。誠實範圍:DT API 為 path-compatible(~69% deep-schema),單節點,不包含 MySQL。
包含內容
- 經加固的 Amazon Linux 2023 AMI(arm64 / Graviton,執行於 t4g / c7g / m7g / r7g 級別)
- 實現 SBOM / SCA 和漏洞管理伺服器的單個 Rust 二進位檔案(無 JVM,無獨立的前端/worker 層,1 秒內啟動,RAM 低於 256 MB,內建儀表板)
- SBOM 擷取:CycloneDX 1.4 / 1.5 / 1.6(JSON / XML)+ SPDX 2.2 / 2.3,支援匯出至 CycloneDX、SPDX、VDR 和 VEX
- 漏洞情資:NVD JSON 2.0、OSV、公開安全性通告來源和 CISA KEV,支援 EPSS 富化、CSAF 2.0 / VEX 1.4 消費以及實體隔離映像檔匯入
- CVSS v2 / v3 / v4 + EPSS 評分、Package URL 0.6 / CPE 2.3、針對 Alpine / Debian / Ubuntu 的發行版感知比對,以及一個擁有 30+ 個條件的策略引擎和 SPDX 授權檢測
- FerroSCA 原生 REST API(預設)加選用的 Dependency-Track REST API v1 協定相容版本、Email / Webhook 通知、本機使用者(SHA3-256 API 金鑰)/ OIDC / LDAP 身分驗證、rustls TLS,以及專案級 ACL
- 無獨立控制平面、無遙測資料回傳、無授權金鑰驗證(透過您的 AWS 帳單按執行個體每小時計費)
適用場景
擷取在 CI/CD 中產生的 SBOM(CycloneDX / SPDX)並持續監控相依組件漏洞的場景
希望在自己的 EC2 上執行輕量級單一二進位檔案 SBOM / SCA 伺服器,而不是基於 JVM 的多層架構的團隊
希望透過 REST API v1 協定相容版本從 Dependency-Track 進行遷移的場景
完全在您自己的 VPC 內執行漏洞管理伺服器,沒有獨立的控制平面,也沒有遙測回傳的場景
常見問題
支援哪些 SBOM 格式?
擷取支援 CycloneDX 1.4 / 1.5 / 1.6(JSON 和 XML)和 SPDX 2.2 / 2.3,並支援匯出至 CycloneDX、SPDX、VDR 和 VEX。它提供串流上傳、記憶體上限設定和基於權杖(token)的非同步處理。
漏洞資料來自哪裡?
資料獲取自 NVD JSON 2.0、OSV、公開安全通告源和 CISA KEV 目錄,並使用 EPSS 進行資料富化。它還支援消費 CSAF 2.0 / VEX 1.4,並支援面向實體隔離環境的映像檔匯入。
它與 Dependency-Track 相容嗎?
預設是 FerroSCA 原生的 REST API。為了便於遷移,您可以選擇使用 Dependency-Track REST API v1 協定相容版本(dtrack-compat)。不過坦白說,Dependency-Track API 雖有 100% 的路徑覆蓋率,但深層 Schema 僅為約 69%(這體現的是存在性對稱,而非欄位級的一致性)— 它從未被宣傳為 100% 協定相容或可以直接替代,且不支援 MySQL。
這是 AWS 服務的替代品嗎?
FerroSCA 處於開源 SBOM / SCA 和漏洞管理領域,並未被定位為任何特定 AWS 服務的替代品。它是一個在您自己的 Amazon EC2 執行個體上運行的自託管伺服器,以普通的 Amazon Linux 2023 AMI(arm64 / Graviton)形式交付,您可以在自己的 VPC 內運行它。
部署拓撲與安全態勢如何?
支援的 Marketplace 拓撲結構為單節點。身分驗證支援本機使用者(SHA3-256 API 金鑰)、OIDC 和 LDAP(受控);TLS 採用 rustls;針對變更操作實施專案級 ACL 控制。在工程設計上:在所有 crate 中均強制執行 #![forbid(unsafe_code)],clippy 檢查在 -D warnings 下無任何警告,生產環境程式碼中無 unwrap(),設有 cargo deny 門禁,CI 中配備 CycloneDX SBOM + 自有 VDR,並採用經過模糊測試的解析器。
為什麼更便宜
假設在 us-east-1 每天從 200 個儲存庫擷取 SBOM (CycloneDX/SPDX) 並以 CVSS/EPSS 評分的 SCA 伺服器。
- m5.xlarge (BOM 伺服器 + UI + Lucene)
- $175 / 月
- RDS PostgreSQL (db.t3.medium)
- $150 / 月
- 月度合計
- $325 / 月
- FerroSCA 執行個體 (t3.medium + 軟體費)
- $80 / 月
- 月度合計
- $80 / 月
按儲存庫數量選擇 FerroSCA 執行個體
| 追蹤的儲存庫數 | 推薦執行個體 | FerroSCA 執行個體費用 | 月度合計對比 Dependency-Track |
|---|---|---|---|
| ~30 個儲存庫 | t3.small | $40 / 月 | $40 / 月 (DT $325, −88%) |
| ~200 個儲存庫 | t3.medium | $80 / 月 | $80 / 月 (DT $325, −75%) |
| ~2000 個儲存庫 | m5.large | $120 / 月 | $120 / 月 (DT $550, −78%) |
僅供參考。OWASP Dependency-Track 包含 BOM 伺服器 + UI + Lucene 索引 + 外部 PostgreSQL, 是較重的 JVM 堆疊, 最小實用部署為 m5.xlarge + RDS db.t3.medium。FerroSCA 是 Rust 單處理程序伺服器, 內建儲存; 還提供 Dependency-Track 相容版本。
計費模式
按小時收取軟體費用 + EC2(t4g / c7g / m7g / r7g 級,Arm)。按執行個體類型計量。