شرکت LiteLLM اعلام کرد که نشت تصادفی یک کلید اصلی (Master Key) در یک مخزن عمومی GitHub در اواخر ماه می ۲۰۲۶، منجر به وقوع یک حمله زنجیره تأمین (Supply Chain Attack) گسترده شده است. این حادثه به مهاجمان اجازه داد تا نسخه مخربی از پکیج محبوب پایتون (Python) این شرکت را منتشر کنند.
جزئیات نشت و دسترسی مهاجم
طبق گزارش LiteLLM، یک فایل پیکربندی حاوی کلید اصلی پلتفرم Agent Platform به اشتباه در مخزن عمومی GitHub منتشر شده بود. اگرچه این خطا بلافاصله شناسایی و تلاش برای حذف آن (Force-push) انجام شد، اما کلید مذکور با موفقیت ابطال (Revoke) نشد. در نتیجه، مهاجم در ماه اکتبر ۲۰۲۶ با استفاده از این کلید، موفق به استخراج یک توکن OAuth مربوط به GitHub CLI شد.
این توکن دارای سطح دسترسی مالک (Owner) بود و به مهاجم اجازه داد تا به تمامی مخازن سازمان دسترسی داشته باشد. مهاجم با سوءاستفاده از تغییرات اخیر در قوانین انتشار (Release) که برای تسریع فرآیندها اعمال شده بود، توانست هم فرآیند انتشار نسخه جدید را آغاز و هم آن را تأیید کند.
رفتار بدافزار و سرقت اطلاعات
نسخه مخرب پکیج LiteLLM (نسخه 1.107.0) به گونهای طراحی شده است که حتی در صورت عدم فراخوانی مستقیم کتابخانه در کد، به محض اجرای پایتون (Python) در سیستم، به صورت خودکار فعال شود. این بدافزار دو مسیر اصلی برای حمله دارد:
- سرقت اعتبارنامهها (Credential Harvesting): جمعآوری توکنها و کلیدهای API از سرویسهای مختلف از جمله OpenAI، Anthropic، AWS Bedrock، و همچنین اطلاعات پایگاه داده (PostgreSQL) و Redis.
- ایجاد بکدور (Backdoor): راهاندازی یک فرآیند پسزمینه در سیستمهای مبتنی بر Unix که هر یک ساعت یک بار کدهای مخرب جدید را از مهاجم دریافت و اجرا میکند.
تحقیقات نشان میدهد که مهاجم برای پنهان ماندن، از شاخههای (Branches) کوتاهمدت و موقت در GitHub استفاده کرده است تا فعالیتهای خود را در تاریخچه (History) مخزن پنهان کند. همچنین، این بدافزار اطلاعات حساس سیستم، فایلهای SSH و توکنهای مدیریت پکیجهایی مانند npm، PyPI و Cargo را نیز سرقت میکند.