کتابخانه محبوب LiteLLM، که یک پروکسی متنباز برای مسیریابی درخواستها میان ارائهدهندگان مختلف مدلهای زبانی بزرگ (LLM) است، هدف یک حمله زنجیره تأمین (Supply Chain Attack) قرار گرفته است. در این حادثه، بستههای مخرب در نسخهی 1.107.0 در مخازن PyPI و Docker Hub منتشر شدند.
جزئیات حمله و نحوه نفوذ
بررسیهای انجام شده نشان میدهد که این بستههای آلوده حدود سه ساعت آنلاین بودند و تخمین زده میشود بیش از ۴۹,۰۰۰ بار دانلود شدهاند. مهاجمان با استفاده از توکنهای GitHub CLI OAuth که احتمالاً از طریق لاگهای ابزار Claude Code لو رفته بودند، توانستند به محیط توسعه LiteLLM دسترسی پیدا کنند.
مهاجمان با سوءاستفاده از این اعتبارنامهها، محافظتهای شاخه (Branch Protections) را غیرفعال کرده و تغییراتی را در مخزن اصلی اعمال کردند تا بستههای آلوده را با امضای معتبر منتشر کنند. این روش به مهاجمان اجازه داد تا بستههای مسموم (Poisoned Artifacts) را به جای نسخههای اصلی، به کاربران تحویل دهند.
قابلیتهای بدافزار و هدف نهایی
بدافزار منتشر شده ترکیبی از یک Information Stealer (سرقتگر اطلاعات) و یک RAT (تروجان دسترسی از راه دور) است. پس از سرایت، این بدافزار اطلاعات بسیار حساسی را از سیستم قربانی استخراج میکند، از جمله:
- اطلاعات سیستم، کوکیهای مرورگر و اعتبارنامههای توسعهدهندگان.
- اسرار ابری (Cloud Secrets) شامل AWS، GCP و Azure.
- کلیدهای API ابزارهای هوش مصنوعی مانند OpenAI، Anthropic و GitHub Copilot.
- کلیدهای خصوصی SSH و کلیدهای GPG.
علاوه بر سرقت دادهها، گزارشها حاکی از وقوع پدیده LLMjacking است؛ به این معنا که مهاجمان با استفاده از کلیدهای سرقت شده، از مدلهای Amazon Bedrock برای مقاصد خود استفاده کردهاند. همچنین بخش RAT این بدافزار به طور منظم با سرور فرماندهی و کنترل (C&C) مهاجمان در ارتباط است.
اقدامات اصلاحی فوری
کاربرانی که از نسخه 1.107.0 استفاده کردهاند باید فوراً اقدامات زیر را انجام دهند:
- حذف فوری نسخه آلوده و بازگشت به نسخه پاک 1.106.2 یا بالاتر.
- چرخش (Rotation) تمامی کلیدهای API، اعتبارنامههای ابری و رمزهای عبور.
- بررسی کامل سیستمها برای شناسایی هرگونه اثر از بدافزار یا دسترسیهای غیرمجاز.