کمپین زنجیره تأمین GlassWorm دوباره فعال شده و اینبار با ۲۴ افزونه مخرب در بازارهای Microsoft Visual Studio Marketplace و Open VSX به توسعهدهندگان حمله کرده است. این افزونهها با جعل هویت ابزارهای محبوبی مثل Flutter، React، Tailwind، Vue، Vim و سایر ابزارهای شناختهشده، تلاش کردهاند اعتماد توسعهدهندگان را جلب کنند.
این کمپین نخستینبار در اکتبر ۲۰۲۵ شناسایی شد؛ همان زمانی که مشخص شد GlassWorm با استفاده از بلاکچین Solana برای فرماندهی و کنترل (C2)، اقدام به موارد زیر میکند:
سرقت Credentialهای npm، GitHub، Open VSX، Git
تخلیه داراییهای رمزارز از دهها کیفپول
تبدیل سیستم توسعهدهندگان به Node آلوده برای فعالیتهای مجرمانه دیگر
و در نهایت، انتشار آلودگی از طریق بستهها و افزونههای آلوده جدید
مشکل اصلی GlassWorm این است که از Credentialهای دزدیدهشده برای آلوده کردن بستهها و افزونههای بیشتر استفاده میکند؛ در نتیجه آلودگی مثل یک Worm در اکوسیستم توسعهدهندگان پخش میشود.
با وجود مقابله مداوم مایکروسافت و Open VSX، GlassWorm به سرعت برگشته و حتی در موج قبلی، مخازن GitHub را نیز هدف گرفته بود.
لیست افزونههای شناساییشده در کمپین GlassWorm
VS Code Marketplace
iconkieftwo.icon-theme-materiall (حذفشده – ۲ دسامبر)
prisma-inc.prisma-studio-assistance (حذفشده – ۱ دسامبر)
prettier-vsc.vsce-prettier
flutcode.flutter-extension
csvmech.csvrainbow
codevsce.codelddb-vscode
saoudrizvsce.claude-devsce
clangdcode.clangd-vsce
cweijamysq.sync-settings-vscode
bphpburnsus.iconesvscode
klustfix.kluster-code-verify
vims-vsce.vscode-vim
yamlcode.yaml-vscode-extension
solblanco.svetle-vsce
vsceue.volar-vscode
redmat.vscode-quarkus-pro
msjsdreact.react-native-vsce
Open VSX
bphpburn.icons-vscode
tailwind-nuxt.tailwindcss-for-react
flutcode.flutter-extension
yamlcode.yaml-vscode-extension
saoudrizvsce.claude-dev
saoudrizvsce.claude-devsce
vitalik.solidity
روش فریب: افزایش مصنوعی دانلود و ظاهر معتبر
مهاجمان تعداد دانلود افزونهها را بهصورت مصنوعی بالا میبرند تا افزونهها:
در نتایج جستجو کنار نسخههای واقعی قرار بگیرند
معتبر و محبوب جلوه کنند
توسعهدهندگان با یک کلیک قربانی شوند
Tuckner گزارش کرده که مهاجم پس از تأیید اولیه افزونه، بهراحتی نسخه آلوده را منتشر میکند و فیلترها نیز آن را رد نمیکنند.
تغییرات فنی جدید در نسخه اخیر GlassWorm
نسل جدید حملات، علاوه بر تکنیکهای قبلی مانند Invisible Unicode Trick، دارای تغییر مهم دیگری است:
استفاده از Implantهای نوشتهشده با Rust
طبق بررسی Nextron Systems روی افزونه جعلی icon-theme-materiall:
دو Implant داخل افزونه بستهبندی شدهاند:
os.node → DLL برای Windows
darwin.node → Library برای macOS
این Implantها پس از اجرا:
آدرس C2 را از یک والت روی بلاکچین Solana استخراج میکنند
مرحله بعدی آلودگی را به صورت JS رمزگذاریشده دریافت میکنند
در صورت عدم دسترسی، از Google Calendar Event بهعنوان بکاپ برای دریافت آدرس C2 استفاده میکنند
این یعنی مهاجم از زیرساختهای غیرقابلمسدودسازی و غیرمتمرکز استفاده میکند تا ساختار C2 پایدار بماند.
چرا این موج خطرناکتر است؟
به گفته Tuckner:
«بهندرت مهاجمی در یک هفته بیش از ۲۰ افزونه مخرب را در بزرگترین Marketplaceهای برنامهنویسی منتشر میکند.»
نکته مهم این است که:
انتشار در هر دو Marketplace
جعل هویت پروژههای کاملاً معتبر
تعداد بالای دانلودهای جعلی
Implantهای Rust چندسکویی
روشهای پیچیده برای کشف C2
همه اینها باعث میشود توسعهدهندگان تنها یک کلیک با آلوده شدن فاصله داشته باشند.
جمعبندی و ریسک برای توسعهدهندگان
این حمله نمونهای واضح از حمله به زنجیره تأمین توسعه نرمافزار است. توسعهدهندگان باید:
از منبع رسمی و Verified Publisher نصب کنند
روی افزایش غیرعادی دانلودها حساس باشند
از ابزارهای امنیتی DevSecOps برای تحلیل رفتار افزونهها استفاده کنند
سیاستهای سختگیرانه برای Credentialهای توسعه (GitHub / npm) اعمال کنند
و در صورت شک، بهسرعت ریپازیتوریها را برای آلودگی بررسی کنند
GlassWorm هنوز تمام نشده و به دلیل استفاده از بلاکچین و تکثیر کرمی، انتظار میرود باز هم با نسخههای جدیدی ظاهر شود.