بدافزار وردپرسی که توی پروفایل Steam قایم میشه
خلاصهٔ کاملتر
تقریباً ۲۰۰۰ سایت وردپرسی به بدافزاری آلوده شدن که برای مخفی کردن دادهی سرور فرماندهی و کنترل (C2) به کامنتهای پروفایل Steam Community تکیه میکنه. ایدهی هوشمندانهی مهاجم اینه که بهجای راه انداختن یه سرور C2 جدا که راحت بلاک میشه، از پلتفرم معتبر Valve سوءاستفاده میکنه و اینطوری از روشهای سنتی شناسایی هم فرار میکنه. این کمپین که از ژوئیه ۲۰۲۵ کشف شده، تا الان روی حدود ۱۹۸۰ سایت پیدا شده.
هنوز معلوم نیست هکرها دقیقاً چطور به سایتها نفوذ میکنن، ولی محققها حدس میزنن ورودی اولیه از لاگینهای ادمین دزدیدهشده، اعتبارنامههای FTP/SFTP لو رفته، اکسپلویت یه قالب یا افزونهی آسیبپذیر وردپرس، یا حملهی زنجیرهی تأمین باشه. بدافزار مرحلهی اول روی هر بار لود شدن صفحهی وردپرس، به پروفایلهای خاص Steam وصل میشه و متن کامنتهای بهظاهر بیضرر رو میخونه.
ترفند اصلی توی همون متنه. کامنتها شامل کاراکترهای نامرئی یونیکد هستن که گاهی به شکل ASCII art استتار شدن. مهاجم از شش کاراکتر نامرئی مثل zero-width non-joiner و invisible separator استفاده میکنه. دیکودر هر کاراکتر دیدنی رو نادیده میگیره، کاراکترهای نامرئی رو به عدد نگاشت میکنه، بعد به نمایش باینری تبدیلشون میکنه و بایتها رو بازسازی میکنه. اینطوری دادهی باینری داخل متن کاملاً عادی جاسازی میشه و کاراکترهای دیدنی فقط نقش استتار دارن.
محمولهی دیکودشده یه آدرس مخرب میسازه که کد جاوااسکریپت سرو میکنه و این کد توی همهی صفحات فرانت وردپرس تزریق میشه. اسم فایلها (مثلاً چیزی شبیه lodash.core.min.js) طوری انتخاب شدن که جای کتابخونههای جاوااسکریپت معتبر جا بزنن. مرحلهی آخر حمله یه بکدوره که به درخواستهای POST خاص جواب میده؛ اگه یه کوکی احرازهویت مشخص توی درخواست باشه، بکدور کد PHP کدگذاریشده با base64 رو میپذیره.
بدافزار چند مکانیزم فرار داره: رشتههای مبهمشده با escapeهای octal و hex، اسم تابعهای تصادفی، کد لاگینگ غیرفعال جعلی، و استفاده از APIهای استاندارد وردپرس تا با فعالیت عادی قاطی بشه. صاحبهای سایت میتونن با چک کردن ارجاع به آدرسهای Steam Community، تزریقهای مشکوک جاوااسکریپت خارجی، و اتصالهای خروجی غیرمنتظره از سرور وردپرس به Steam، آلودگی رو تشخیص بدن.
محققها توصیه میکنن تیمهای امنیتی اول از یه بکاپ سالم مربوط به قبل از آلودگی بازیابی کنن. اگه این ممکن نیست، پاکسازی دستی باید کامل و دقیق باشه، چون «مهاجمها میتونن کد حذفشده رو از طریق بکدور دوباره نصب کنن، اگه حتی یه جزء فعال بمونه».
نکات کلیدی:
- بدافزار آدرس سرور C2 رو با کاراکترهای نامرئی یونیکد توی کامنتهای پروفایل Steam مخفی میکنه
- این کار نیاز به زیرساخت C2 جدا رو حذف میکنه و از شناسایی سنتی فرار میده
- مرحلهی آخر یه بکدوره که با یه کوکی احرازهویت خاص، کد PHP میپذیره
- بهترین دفاع، بازیابی از بکاپ سالم مربوط به قبل از تاریخ آلودگیه




