FIX CARD
PRODUCT Chroma
SEVERITY CRITICAL
Chroma vector database open without authentication
Why it matters
Your Chroma database answers anyone. Every embedding can be read, poisoned, or deleted. Embeddings usually contain document text and may hold agent memory (OWASP ASI06). Chroma runs without auth unless you configure it.
Fix it: 3 steps
- Run it with auth: start Chroma with
CHROMA_SERVER_AUTHN_CREDENTIALS(token provider) or put it behind an authenticating proxy. - If only local apps use it, do not publish the port at all: bind 127.0.0.1 or
sudo ufw deny 8000. - Treat stored data as read if it was open: rotate anything sensitive embedded in it.
Verify it’s fixed
curl -m 5 http://YOUR_SERVER_IP:8000/api/v1/collections # should not return a collection list
References
- https://docs.trychroma.com/deployment/auth
- https://genai.owasp.org/2025/12/09/owasp-top-10-for-agentic-applications-the-benchmark-for-agentic-security-in-the-age-of-autonomous-ai/
Not sure if your stack is exposed?
Run the free check: usually under a minute, safe read-only probes.
Scan your stack