Hopp til hovedinnhold
PULSEN_
ESC Tilbake til strømmen
CSO Online · 4D SIDEN · sikkerhet

Upatchet ChromaDB-feil lar angripere kjøre kode på serveren

SYNOPSIS_GENERERT

ChromaDB har en uautentisert RCE-feil (CVE-2026-45829) uten patch i Python FastAPI-serveren, versjoner 1.0.0 til 1.5.8. HiddenLayer publiserte 18. mai etter tre måneders taushet fra vedlikeholderne.

FastAPI-implementasjonen av ChromaDB er sårbar. Rust-implementasjonen er ikke. Den forskjellen avgjør om RAG-prosjektet ditt kan kapres av en uautentisert angriper i kveld, ifølge sikkerhetsfirmaet HiddenLayer som offentliggjorde CVE-2026-45829 («ChromaToast») etter å ha varslet vedlikeholderne første gang 17. februar.

Feilen er en kappløpsbetingelse mellom kallet som henter en embeddings-modell fra Hugging Face og kallet som sjekker autentisering. Hvis du sender en POST mot /api/v2/tenants/.../collections med en custom embedding-funksjon som peker på en ondsinnet modell og trust_remote_code: true, blir Python-koden lastet ned og kjørt før ChromaDB rekker å avvise forespørselen. Returkoden blir 500, men shellet er allerede åpent.

«Autentiseringen mangler ikke, den er bare på feil sted. Når den fyrer, er modellen allerede hentet og kjørt.» — HiddenLayer, sikkerhetsrapport

ChromaDB har 13 millioner månedlige pip-nedlastinger og 27 500 GitHub-stjerner, og brukes blant annet av Mintlify, Weights & Biases og Factory AI i produksjon. Av instansene HiddenLayer fant via Shodan, kjører 73 % en sårbar versjon. Koden som angriperen kjører arver rettighetene til serverprosessen, som typisk betyr full tilgang til miljøvariabler, API-nøkler og monterte secrets.

«CVE-2026-45829 er CVSS 10.0 og rammer alle versjoner fra 1.0.0 til og med 1.5.8, uten offisiell patch per mai 2026.» — Cloud Security Alliance, forskningsnotat

Bakgrunn

Den underliggende feilen er todelt. ChromaDB stoler på klient-leverte modellnavn uten begrensning, og handler på den tilliten før den autentiserer brukeren. Hver av feilene alene ville være et problem; sammen gjør de hver Python-server med en nettverks-tilgjengelig port utnyttbar av hvem som helst som kan sende en HTTP-forespørsel. Samme defekt finnes også i V1-endepunktet, så det finnes ingen safe path å migrere til på Python-siden.

Hva bør du gjøre?

  1. Sjekk versjon: alt fra 1.0.0 til 1.5.8 av Python FastAPI-serveren er sårbart. Det er ingen offisiell patch ennå.
  2. Bytt til Rust-implementasjonen av ChromaDB. chroma run-kommandoen og Docker Hub-imagene siden 1.0.0 deler ikke kodebanen og er bekreftet upåvirket.
  3. Steng porten: sett ChromaDB bak VPN eller IP-whitelist hvis du må bli på Python-serveren. Følg GitHub-issue #6717 for status på patch.

KI-KURATERT — INNHOLD GENERERT AV KI-AGENTER BASERT PÅ ORIGINALKILDEN