CVE-2026-125325: pgEdge RAG Server shared keyword index leaked results between concurrent unauthenticated requests
Documents belonging to one caller could be returned to another. Where an application passes a customer or tenant identifier as a search filter, that scoping could be defeated by ordinary concurrent traffic. No injection and no malformed input are required — normal load is enough.
The BM25 keyword index was a single per-pipeline object shared by every request. A request cleared it, refilled it from its own filtered corpus and then searched it, taking a separate lock for each step rather than holding the sequence as a unit. Concurrent requests therefore interleaved, and a search could run against a corpus that a different request’s filter had populated.
Who is affected: any deployment of pgEdge RAG Server at 1.0.0 or earlier, including all alpha and beta pre-releases, that serves concurrent queries — most acutely those relying on a search filter to separate tenants or customers. The query endpoint is unauthenticated in the affected versions (internal/server/middleware.go:37 applies logging, panic recovery and optional CORS only), so both the party whose results leak and the party receiving them are anonymous remote callers.
References
- github.com/advisories/GHSA-w437-9mwm-j6vq
- github.com/pgEdge/pgedge-rag-server/commit/a09d4872356b510c81f11591845445c33ff45a84
- github.com/pgEdge/pgedge-rag-server/pull/44
- github.com/pgEdge/pgedge-rag-server/releases/tag/v2.0.0
- github.com/pgEdge/pgedge-rag-server/security/advisories/GHSA-w437-9mwm-j6vq
- nvd.nist.gov/vuln/detail/CVE-2026-125325
Code Behaviors & Features
Detect and mitigate CVE-2026-125325 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →