مایکروسافت از کمپین تبلیغات مخرب فعالی خبر دادهاست که از Node.js برای بارگذاری بدافزارهایی استفاده میکند که قادر به سرقت اطلاعات و استخراج دادهها هستند.
به گفته مایکروسافت،Node.js یک محیط اجرایی جاوااسکریپت متنباز و چندپلتفرمی(cross-platform) است که به کد جاوااسکریپت اجازه میدهد خارج از مرورگر اجرا شود. این ابزار بهدلیل اینکه به توسعهدهندگان اجازه میدهد اپلیکیشنهای سمت کاربر(فرانتاند) و سمت سرور(بکاند) را بسازند، بهشدت محبوب و مورداعتماد است. هرچند مهاجمان هم از همین ویژگیهای Node.js برای ادغام بدافزار با برنامههای قانونی، عبور از کنترلهای امنیتی متداول و ماندگاری در محیط هدف سوءاستفاده میکنند.
زنجیره حمله
این فعالیت که اولینبار در اکتبر ۲۰۲۴ شناسایی شد، از تبلیغات مخرب با مضمون معاملات رمزارزی استفاده میکند تا کاربر هدف را ترغیب کند که از یک وبسایت بازدید کرده و یک نصاب(installer) مخرب را که در قالب فایلی مشروع از پلتفرمهای معامله رمزارز مانند Binance یا TradingView ظاهر شده، دانلود کند.
نصاب دانلود شده شامل یک کتابخانه DLL به نام CustomActions.dll است که وظیفه جمعآوری اطلاعات پایه سیستم از طریق Windows Management Instrumentation (ابزاری برای مدیریت سیستمهای ویندوزی) و ایجاد ماندگاری روی میزبان از طریق یک تسک زمانبندی شده را دارد.
برای حفظ ظاهر، این DLL یک مرورگر را از طریق msedge_proxy.exe باز میکند که وبسایت معتبر معاملات رمزارز را نمایش میدهد. msedge_proxy.exe میتواند هر وبسایتی را بهصورت وب اپلیکیشن نمایش دهد.
در این حین، تسک زمانبندی شده طوری پیکربندی شدهاست که دستورات PowerShell را برای دانلود اسکریپتهای اضافی از یک سرور راهدور اجرا کند. این اسکریپتها فرآیند PowerShell در حال اجرا و همچنین مسیر جاری را از اسکن توسط Microsoft Defender for Endpoint(ابزار امنیتی مایکروسافت برای حفاظت از اندپوینتها) مستثنی میکنند تا از شناسایی شدن جلوگیری شود.

پس از اعمال این استثناها، یک دستور PowerShell مبهمشده برای دریافت و اجرای اسکریپتهایی از URLهای راهدور اجرا میشود که میتوانند اطلاعات گستردهای درباره سیستمعامل، BIOS، سختافزار و برنامههای نصبشده جمعآوری کنند. تمام دادههای جمعآوریشده به فرمت JSON تبدیل شده و از طریق یک درخواست HTTPS POST به سرور فرمان و کنترل (C2) ارسال میشود.
زنجیره حمله در مرحله بعد، یک اسکریپت PowerShell دیگر را اجرا میکند که یک فایل آرشیو را از سرور C2 دانلود میکند. این آرشیو حاوی فایل باینری Node.js و یک فایل جاوااسکریپت کامپایل شده یاJSC است. اجرای Node.js، فایل JSC دانلودشده را راهاندازی میکند که سپس این اقدامات را انجام میدهد:
- بارگذاری چندین ماژول کتابخانهای
- برقراری اتصالات شبکه
- اضافه کردن گواهیها به دستگاه
- خواندن و احتمالا استخراج اطلاعات حساس مرورگر
این روتینها ممکن است نشاندهنده فعالیتهای مخرب بعدی مانند سرقت اطلاعات کاربری، فرار از شناسایی یا اجرای محمولههای ثانویه باشد.


در یک سناریو که مایکروسافت از یک نفوذ گزارش کرده، هکرها از تکنیک ClickFix برای اجرای کد JavaScript بهصورت درونخطی(inline) استفاده کردهاند. این فرآیند با اجرای یک دستور مخرب PowerShell انجام میشود که باینری Node.js را دانلود و کد JavaScript را مستقیما در خط فرمان اجرا میکند. این کد درونخطی فعالیتهایی مانند شناسایی شبکه، پنهانسازی ترافیک سرور کنترل و فرمان (C2) به شکل ترافیک قانونی Cloudflare برای فرار از شناسایی و ایجاد ماندگاری از طریق تغییر کلیدهای Run در رجیستری ویندوز انجام میدهد.
توصیههای امنیتی
سازمانها میتوانند این توصیهها را برای کاهش تهدیدهای مرتبط با سوءاستفاده از Node.js دنبال کنند:
- آموزش کاربران: درباره خطرات دانلود نرمافزار از منابع تاییدنشده هشدار دهید
- نظارت بر اجرای Node.js: پردازشهای غیرمجاز node.exe را فلگگذاری کنید
- فعالسازی لاگ کردن PowerShell: قابلیت script block logging را فعال کنید تا اقدامات مبهمشده رهگیری شوند
- فعالسازی محافظت اندپوینت: اطمینان حاصل کنید که EDR یا XDR بهطور فعال اجرای اسکریپت را مانیتور میکند
- محدود کردن ارتباطات C2 خروجی: قوانین فایروال را برای مسدودسازی دامنههای مشکوک پیادهسازی کنید