حمله زنجیره تامین به پکیجهای Laravel-Lang
خلاصهٔ کاملتر
در تاریخ ۲۲ مه ۲۰۲۶، تیم Aikido یک حمله زنجیره تامین (Supply Chain Attack) فعال علیه پکیجهای Laravel-Lang شناسایی کرد. مهاجم روی سه ریپازیتوری پرکاربرد — laravel-lang/lang با ۷.۸ هزار ستاره، laravel-lang/attributes و laravel-lang/http-statuses — تگهای نسخه مخربی منتشر کرد که در مجموع ۲۳۳ نسخه رو آلوده کردن. نکته جالب اینه که کد مخرب اصلاً به ریپازیتوریهای رسمی commit نشد؛ GitHub به تگها اجازه میده به commitهای یک fork اشاره کنن و مهاجم دقیقاً از همین ویژگی سوءاستفاده کرد.
مرحله اول: دراپر (Dropper)
فایل مخربی به نام src/helpers.php به تگهای آلوده اضافه شد. ظاهرش شبیه یک هلپر معمولی Laravel برای localization بود، اما زیرش یک بلاک خوداجرا وجود داشت. این کد ابتدا اثر انگشت دستگاه قربانی رو با هش ترکیبی از مسیر فایل، hostname و inode میسازه، یک فایل marker توی پوشه temp ذخیره میکنه تا فقط یهبار اجرا بشه، و سپس با دامنه C2 به آدرس flipboxstudio[.]info ارتباط برقرار میکنه. روی ویندوز یک فایل .vbs میسازه و روی لینوکس/مک با exec() پیلود رو در پسزمینه اجرا میکنه.
مرحله دوم: استیلر (Stealer)
پیلود دریافتی یک کد سرقت اطلاعات حدود ۵۹۰۰ خطیه که در ۱۵ ماژول تخصصی سازماندهی شده. بعد از جمعآوری دادهها، همهچیز با AES-256 رمزگذاری و به flipboxstudio[.]info/exfil ارسال میشه. سپس فایل خودش رو پاک میکنه تا شواهد کمتری باقی بذاره.
دامنه اطلاعاتی که میدزده بسیار گستردهست:
- اعتبارنامههای ابری: AWS، GCP، Azure، DigitalOcean، Heroku، Vercel، Netlify و...
- زیرساخت: فایلهای kubeconfig، Vault token، Docker config
- ابزارهای توسعه: کلیدهای SSH، فایلهای .env، .git-credentials، .npmrc، .pypirc و تاریخچه shell
- مرورگرها: رمزهای ذخیرهشده در ۱۷ مرورگر مبتنی بر Chromium، Firefox، Thunderbird و مدیرهای رمز مثل KeePass، 1Password و Bitwarden
- کیفپولهای رمزارزی: Bitcoin، Ethereum، Monero و افزونههای مرورگری مثل MetaMask و Phantom
- ویندوز: Windows Credential Manager، PuTTY، WinSCP، فایلهای RDP و ایمیل Outlook
چطور خودم رو چک کنم؟
اگه از Aikido استفاده میکنی، توی فید مرکزی فیلتر «malware issues» رو بزن — باید بهعنوان مشکل ۱۰۰/۱۰۰ بحرانی نشون داده بشه. همچنین Packagist نسخههای آلوده رو حذف کرده، پس آپدیت کردن پکیجها به نسخههای سالم ضروریه.
شاخصهای آلودگی (IoC):
- دامنه C2: flipboxstudio.info
- فایل marker: /.laravel_locale/
- فایل استیلر: /.laravel_locale/.php
نکات کلیدی:
- ۲۳۳ نسخه از سه پکیج Laravel-Lang آلوده شدن
- کد مخرب هرگز به ریپازیتوری اصلی commit نشد — تگها به یک fork مخرب اشاره میکردن
- پیلود اطلاعات رو رمز میکنه، به C2 ارسال میکنه و خودش رو پاک میکنه
- طیف سرقت بسیار گستردهست: ابر، SSH، مرورگر، رمزارز، VPN و ابزارهای توسعه
- Packagist نسخههای آلوده رو حذف کرده؛ هر چه زودتر پکیجهاتون رو بررسی کنید




