
Vector Store Scanner
io.github.4hmetuyar由 GitHub 帳號 4hmetuyar 發布v0.1.1更新於 Oct 24, 2026
Probes vector-database endpoints for unauthenticated exposure of embeddings/RAG data
概覽
探測向量資料庫端點是否有未驗證的暴露,讓助理檢查嵌入與 RAG 資料是否可在無憑證下被讀取。
- 可以做什麼
- 掃描單一主機與連接埠,檢查是否有未驗證的暴露;未指定類型時自動辨識儲存類型。
- 列出支援的儲存類型以及每項檢查所尋找的內容。
- 依執行個體資訊、結構與集合清單、實際儲存資料逐級升級檢查,只回報真正成功的項目。
- 涵蓋 HTTP 上的 Weaviate、Qdrant、Chroma、Elasticsearch/OpenSearch,以及使用原生協定的 Redis 與 Postgres/pgvector。
- 輸出 SARIF 2.1.0 結果以整合 CI/CD,並可從 guardbee.yml 設定檔讀取設定。
- 適用情境
- 適合在稽核 RAG 或向量檢索部署時確認向量儲存並未在無驗證情況下可存取,或作為在高風險問題出現時失敗的 CI/CD 檢查關卡。
- 執行需求
- 透過 npx 從 npm 套件以本機程序方式執行,需要 Node.js;需要能透過網路存取目標向量儲存端點。未宣告任何 API 金鑰或憑證。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Vector Store Scanner,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
@guardbee/mcp-vector-store-scanner
🇬🇧 English | 🇹🇷 Türkçe | 🇨🇳 中文 | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇧🇷 Português | 🇪🇸 Español | 🇩🇪 Deutsch
[npm version] [npm downloads] [License: MIT]
An MCP (Model Context Protocol) server that probes a vector-database (or vector-index-capable) endpoint for unauthenticated exposure — the same class of misconfiguration behind repeated real-world incidents of open Elasticsearch/MongoDB/Redis instances leaking data, now aimed at the RAG-era stack: Weaviate, Qdrant, Chroma, Elasticsearch/OpenSearch, Redis, and Postgres/pgvector.
Every RAG pipeline's embeddings live somewhere. If that vector store is reachable on the network without authentication, anyone who finds it can read (and often write) every document your retrieval pipeline was ever given — including anything sensitive that made it into a chunk.
Telemetry is off by default. With
GUARDBEE_TELEMETRY=1it sends the server, tool, success, duration and short parameter values such as a file path; longer strings and fields likecontent,tokenorpasswordare replaced with a placeholder. See@guardbee/mcp-telemetry.
How it escalates
Each HTTP-based probe doesn't stop at "is this thing up" — it walks the same path an attacker would, in increasing order of impact, and only reports what actually succeeded:
- Instance info (medium) — version/build details readable without auth. Low impact alone, but confirms the service is exposed and helps fingerprint known CVEs.
- Schema / collection listing (high) — class or collection names readable without auth. Reveals your data model even before any real data is read.
- Actual stored data (critical) — a real object/point/document comes back without auth. This is the finding that matters: your embeddings (and whatever they were built from) are readable by anyone who can reach this port.
Redis and Postgres get the same treatment via their native wire protocols instead of HTTP — a PING (Redis) or a StartupMessage (Postgres) is enough to learn whether authentication is enforced, without ever sending a real password. No credential is ever guessed, brute-forced, or sent — every check here is read-only fingerprinting, the same category of probing dns-intelligence and ssl-inspector already do elsewhere in this monorepo.
Features
- 6 target types: Weaviate, Qdrant, Chroma, Elasticsearch/OpenSearch (HTTP), Redis (raw RESP), Postgres/pgvector (raw wire protocol)
- Auto-detection — fingerprints the endpoint by trying each known type in turn when
typeisn't specified - From-scratch protocol implementations for Redis and Postgres — no client library dependency, no real credentials ever sent, includes a TLS-upgrade path for Postgres's
SSLRequesthandshake - Escalating checks (info → schema → data) so a "critical" finding always means real data was actually read, not just that a port responded
- SARIF 2.1.0 output — CI/CD integration (GitHub Code Scanning, etc.)
- Config file support via
guardbee.yml - 22 unit tests against local mock HTTP/TCP servers, covering every probe's matched/unmatched fingerprint and each escalation level
Quick Start
Claude Desktop / MCP Client
CLI (CI/CD)
MCP Tools
What it catches
Configuration (guardbee.yml)
Limitations (by design)
- Chroma's actual-document read isn't checked — its data-read API varies significantly across versions, so this scanner stops at the collection-listing level for it (still enough to detect the primary "no auth at all" misconfiguration).
- Milvus isn't supported — its primary API is gRPC, which doesn't fingerprint via a lightweight probe the way the others do.
- This checks for unauthenticated read access, not authorization bugs behind a working auth layer (e.g. a valid-but-overprivileged API key) — that's out of scope for an external, credential-less probe.
Development
License
MIT — GuardBee
Feedback
Questions, ideas, or a false positive? Start a thread in GitHub Discussions or open an issue. If GuardBee is useful to you, a ⭐ on the repository helps others find it.
來源:packages/vector-store-scanner/README.md,提交 040e072
工具
0版本歷史
1- v0.1.1最新Sep 29, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分