مهاجمان با سوءاستفاده از خط لوله انتشار (Release Pipeline) پروژه LiteLLM، که یک درگاه محبوب هوش مصنوعی (AI Gateway) متنباز است، موفق شدند بدافزاری برای سرقت اطلاعات حساس (Credential Stealing) را توزیع کنند. این حادثه، دومین حمله زنجیره تأمین (Supply Chain Attack) به این پروژه در سال جاری است، آن هم با وجود اقدامات امنیتی که پس از حمله قبلی اتخاذ شده بود.
جزئیات حمله و توزیع بدافزار
نسخه آلوده با شماره 1.107.0 در تاریخ ۲۱ اکتبر از طریق مخزن پایتون (PyPI) و ایمیجهای رسمی Docker منتشر شد. طبق گزارش شرکت LiteLLM، بستههای مخرب پایتون حدود دو ساعت در دسترس بودند و ایمیجهای Docker نیز پس از شناسایی، حذف یا جایگزین شدند. تگهای latest، main-latest و main-stable در Docker تحت تأثیر قرار گرفتند که ریسک بالایی برای محیطهایی که از این تگها استفاده میکنند، ایجاد کرده است.
رفتار بدافزار و اهداف حمله
بر اساس تحلیل شرکت امنیتی Aikido، فایلهای همراه با این بسته آلوده به محض اجرای پایتون، به صورت خودکار اجرا میشوند؛ حتی اگر اپلیکیشن مستقیماً LiteLLM را فراخوانی (Import) نکرده باشد. این بدافزار برای جمعآوری اطلاعات حساس طراحی شده است، از جمله:
- اعتبارات دسترسی ابری (Cloud Credentials)
- کلیدهای API ذخیره شده در پایگاه داده LiteLLM
- توکنهای سرویس حساب Kubernetes
- اسرار (Secrets) مربوط به سیستمهای CI/CD مانند GitLab و Jenkins
علاوه بر این، یک تروجان دسترسی از راه دور (Remote Access Trojan – RAT) نیز در بسته وجود داشت که یک فرآیند پسزمینه را برای دریافت و اجرای کدهای جدید از زیرساختهای مهاجم در فواصل زمانی یکساعته راهاندازی میکرد. این قابلیت به مهاجمان اجازه میدهد حتی پس از سرقت اولیه اطلاعات، همچنان بر سیستمهای آلوده تسلط داشته باشند.
علت وقوع و روش نفوذ
مهاجمان با استفاده از حسابهای GitHub سرقت شده متعلق به سه توسعهدهنده، توانستند جریان کاری انتشار (Release Workflow) را دستکاری کنند. این کار باعث شد فرآیند انتشار به یک مخزن مشابه (Lookalike Repository) که تحت کنترل مهاجمان بود، هدایت شود. احتمال میرود این حسابها از طریق لاگهای یک استقرار (Deployment) داخلی و متصل به اینترنت به دست آمده باشند. همچنین مشخص شده که ابزار Claude Code ممکن است توکنهای احراز هویت GitHub را در پاسخهای خود افشا کند که توسط LiteLLM ثبت شدهاند.
توصیههای امنیتی برای مدیران SOC و CISO
شرکت LiteLLM تأکید کرده است که مشتریان از ریجستری خصوصی سازمانی خود unaffected هستند، اما به سازمانهایی که از نسخه متنباز استفاده میکنند، توصیه شده است که محیط خود را احتمالاً نفوذ یافته در نظر بگیرند. اقدامات پیشنهادی عبارتند از:
- چرخش کلیدها (Credential Rotation): صرفاً حذف بسته آلوده کافی نیست؛ تمام کلیدها و اسراری که در معرض خطر بودهاند باید تغییر یابند.
- ایزولهسازی سیستمها: سیستمهای مشکوک را ایزوله کرده و پیش از بازسازی محیط با نرمافزار معتبر، از شواهد جرمشناسی (Forensic Evidence) محافظت کنید.
- بررسی لاگها: لاگهای استفاده از توکنها را با لاگهای حسابهای ابری و هویت (Identity) تطبیق دهید تا فعالیتهای غیرعادی شناسایی شوند.
این حادثه نشان میدهد که حتی یک امضای دیجیتال معتبر (Digital Signature) نمیتواند تضمین کند که کد در لحظه امضا، سالم و بدون بدافزار بوده است، اگر خط لوله تولید (Build Pipeline) خود دچار نفوذ شده باشد.