آسیبپذیری ChromaDB با شناسه CVE-2026-45829 و شدت بحرانی (Critical) در نسخه Python مبتنی بر FastAPI شناسایی شده است؛ ضعفی که به مهاجمان احراز هویتنشده اجازه میدهد کد دلخواه (Arbitrary Code) را روی سرورهای در معرض اینترنت اجرا کنند. این آسیبپذیری ChromaDB بهدلیل ضعف در ترتیب اجرای فرآیند احراز هویت، میتواند منجر به در اختیار گرفتن کامل سرور (Server Hijacking) شود و به همین دلیل یکی از خطرناکترین تهدیدات برای زیرساختهای هوش مصنوعی به شمار میرود.
معرفی فنی آسیبپذیری ChromaDB
ChromaDB یک پایگاه داده برداری (Vector Database) متنباز و بکاند بازیابی داده برای سیستمهای هوش مصنوعی است که در معماریهای Agentic AI و برنامههای مبتنی بر مدلهای زبانی بزرگ (LLM) استفاده میشود. این سیستم امکان بازیابی اسناد مرتبط از نظر معنایی (Semantic Retrieval) را هنگام اجرای مدل فراهم میکند.
آسیبپذیری ChromaDB که توسط تیم HiddenLayer شناسایی شده است در لایه API سرور Python قرار دارد و در صورت دسترسی HTTP عمومی، میتواند کل سرویس را در معرض ریسک قرار دهد.
تحلیل فنی و زنجیره اکسپلویت
محققان HiddenLayer تأکید میکنند مشکل در عدم وجود احراز هویت نیست، بلکه در محل قرارگیری آن در جریان اجرای درخواستها است. در نسخههای آسیبپذیر، تنظیمات مدل پیش از بررسی اعتبارنامهها در حافظه بارگذاری میشود.
این آسیبپذیری ChromaDB به مهاجم اجازه میدهد با ارسال درخواست دستکاریشده، سرور را وادار کند یک مدل مخرب را از Hugging Face دریافت و بهصورت لوکال اجرا کند. بررسی احراز هویت تنها پس از اجرای مدل و فعال شدن کُد مخرب (payload) انجام میشود. در نتیجه، حتی اگر سرور با خطای 500 مواجه شود و درخواست رد گردد، کد مخرب پیش از آن بهطور کامل اجرا شده است.
دامنه اثرگذاری آسیبپذیری ChromaDB در محیط واقعی
پکیج PyPI این پروژه با حدود 14 میلیون دانلود ماهانه، بهشدت تحت تأثیر آسیبپذیری ChromaDB قرار دارد. بر اساس دادههای Shodan، حدود 73 درصد از نمونههای در دسترس از طریق اینترنت، همچنان نسخههای آسیبپذیر را اجرا میکنند.
این ضعف امنیتی نسخههای 1.0.0 تا 1.5.8 را تحت تأثیر قرار میدهد. در مقابل، سیستمهایی که از فرانتاند مبتنی بر Rust استفاده میکنند یا API آنها بهصورت عمومی در اینترنت در دسترس نیست، در برابر این آسیبپذیری ایمن هستند.
وضعیت پچ امنیتی و راهکارهای کاهش ریسک
اگرچه نسخه 1.5.9 منتشر شده، اما هنوز تأییدیه قطعی درباره رفع کامل آسیبپذیری ChromaDB ارائه نشده است. تیم توسعه Chroma با وجود تلاشهای مکرر محققان برای برقراری ارتباط، پاسخ روشنی در این خصوص منتشر نکرده است. در نتیجه، کارشناسان امنیتی برای کاهش ریسک ناشی از این آسیبپذیری مجموعهای از اقدامات فوری را توصیه میکنند:
- محدودسازی دسترسی شبکه: پورتهای مربوط به API سرور ChromaDB را در سطح شبکه مسدود کرده و دسترسی را فقط به IPهای مجاز محدود کنید.
- استفاده از فرانتاند Rust: بهکارگیری نسخه مبتنی بر Rust بهجای نسخه Python توصیه میشود.
- اسکن آرتیفکتهای یادگیری ماشین(ML) : پیش از اجرا، مدلها و آرتیفکتهای یادگیری ماشین را بررسی کنید و از بارگذاری مدلهای عمومی بدون ارزیابی امنیتی خودداری کنید؛ بهویژه زمانی که از پارامتر trust_remote_code استفاده میشود، زیرا این گزینه در عمل به معنای اجرای کد غیرقابلاعتماد (Untrusted Code) است.