FixVibe
覆蓋FixVibecritical

ChromaDB Python 後端預先驗證 RCE (CVE-2026-45829)

當在授權之前處理攻擊者控制的嵌入配置時,CVE-2026-45829 會影響 ChromaDB's optional Python FastAPI backend。 預設的 Rust 前端不受影響。

CVE-2026-45829CWE-94CWE-502

發生了什麼事

CVE-2026-45829是ChromaDB's optional Python FastAPI server中的一個嚴重漏洞。 收集請求可以提供引用遠端模型程式碼的嵌入函數配置,並且受影響的 Python 後端可以在授權完成之前初始化該配置 [S1][S2][S3]。 ChromaDB's default Rust frontend 不使用受影響的 Python 路徑,且不在本通報 [S2][S3] 的範圍內。

影響和先決條件

利用漏洞需要部署實際運行 Python FastAPI 後端、接受來自不受信任來源的請求,並且可以處理攻擊者控制的收集和嵌入函數配置。 如果滿足這些條件,則該通報將描述使用 ChromaDB 伺服器進程權限 [S1][S3] 執行程式碼。

CNA 記錄列出了受影響的 ChromaDB 1.0.0 及更高版本 [S1]。 在本次審查時,公共研究並未識別出供應商確認的修補 Python 版本,官方軟體包註冊表將 1.5.9 列為最新的穩定版本 [S3][S4]。 這並不會使每個 ChromaDB 部署都容易受到攻擊:預設的 Rust 前端位於受影響的路徑 [S2][S3] 之外。

具體修復

  • 移至 Rust 伺服器。 使用 Chroma's supported Rust-based server path,例如 chroma run 或支援的 Rust 支援的容器部署 [S2][S3]。
  • 限制服務暴露。 在請求到達 ChromaDB 之前需要可信任網路、VPN、SSO 或經過驗證的反向代理存取。 不要依賴隱藏一個 API 路由。
  • 限制出站存取。 限制從 ChromaDB 服務到公共模型註冊表和代碼託管服務的不必要的出站。
  • 審查可能的暴露情況。 如果可以從不受信任的網路存取 Python 後端,請檢查 ChromaDB 存取日誌、意外的模型下載、進程和主機活動、環境變數、安裝的憑證和可存取的資料。
  • 驗證未來的 Python 修復。 如果您保留在 Python 後端,請僅部署供應商確認的修補版本或支援的向後移植,並驗證正在執行的進程、映像和套件清單。

由 FixVibe 覆蓋

FixVibe 透過唯讀檢查來覆寫此通報,該檢查僅針對經過驗證的主動掃描目標執行。 它識別相關的 ChromaDB Python deployment 並將其發布資訊與審查的諮詢資料關聯起來。 此檢查不會建立或修改 ChromaDB 資源、提供模型儲存庫、啟用遠端程式碼信任、觸發模型下載、測試授權繞過或執行程式碼。

一個發現是一個基於版本的諮詢。 客戶可以看到檢測到的服務、後端和發布上下文、信心、來源參考、先決條件和補救指南。 它並不能證明授權被繞過、遠端模型被載入或程式碼被執行。 私有向後移植、分叉、過時的服務元資料以及重現上游 API 的中介可能需要操作員確認。

ChromaDB Python 後端預先驗證 RCE (CVE-2026-45829) — FixVibe research · FixVibe