Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable API, low-privileged tenant account required (PR:L), no user interaction; scope change to other tenants (S:C) with high confidentiality/integrity impact and no availability effect.
Primary rating from Vendor (HiddenLayer).
CVSS VectorVendor: HiddenLayer
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Lifecycle Timeline
1DescriptionCVE.org
The SimpleRBACAuthorizationProvider authorization provider in versions 0.5.0 or later of the ChromaDB Python project evaluates whether a user holds a given permission but never checks which tenant, database, or collection that permission applies to allowing users to perform cross tenant actions.
Articles & Coverage 1
AnalysisAI
Cross-tenant authorization bypass in ChromaDB's SimpleRBACAuthorizationProvider (versions 0.5.0 and later) allows authenticated users to perform actions against tenants, databases, and collections they do not own. The provider verifies that a user holds a given permission but never validates the scope of that permission against the target resource, enabling lateral movement across multi-tenant deployments. No public exploit identified at time of analysis, but the flaw was disclosed by HiddenLayer and affects any Chroma deployment relying on the built-in RBAC provider for tenant isolation.
Technical ContextAI
ChromaDB is a popular open-source vector database widely used as the memory/retrieval layer for LLM and RAG applications. Its SimpleRBACAuthorizationProvider is an in-tree authorization plugin that gates API actions by permission name (e.g., 'collection:read', 'tenant:create'). The root cause is CWE-863 (Incorrect Authorization): the provider's permission-check routine answers 'does this user hold permission X?' but discards the resource identifier (tenant, database, or collection) embedded in the request, so a permission granted within one tenant is silently honored against any other tenant or collection. In multi-tenant SaaS or shared-research deployments - where the entire isolation model rests on RBAC scoping - this collapses tenant boundaries to a single shared namespace.
RemediationAI
No vendor-released patch identified at time of analysis - the only reference is the HiddenLayer advisory at https://www.hiddenlayer.com/sai-security-advisory/2026-06-chromadb-3, which security teams should monitor for an upstream fix tag. As a compensating control, replace SimpleRBACAuthorizationProvider with a custom AuthorizationProvider that validates the requested tenant/database/collection against the user's scoped grants before returning Allow; this requires implementing the Chroma authorization interface and re-testing every API path, but it restores tenant isolation. If a custom provider is not feasible, deploy one Chroma instance per tenant so the missing scope check cannot bridge tenants - at the cost of operational overhead and lost resource sharing - or front Chroma with a reverse proxy that enforces tenant scoping at the URL/header layer before requests reach the RBAC provider, accepting that this duplicates authorization logic and can drift from Chroma's internal model.
Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser
pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi
The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python
BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.
In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne
Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301
Cross-user flow execution in Langflow (< 1.9.1) lets any authenticated API-key holder run another user's flow by passing
Same weakness CWE-863 – Incorrect Authorization
View allSame technique Authentication Bypass
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-36482
GHSA-xph7-9rjv-w5fr