تکنولوژی

حمله بدافزار Go-Red به Redis و استخراج رمزارز XMRig: تحلیل فنی و راه‌های مقابله

ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

اگر مدیریت یک زیرساخت شبکه‌ای مبتنی بر لینوکس را بر عهده دارید، اکنون زمان آن است که پیکربندی Redis را دوباره بررسی کنید. به‌تازگی کمپینی شناسایی شده که از ضعف در تنظیمات Redis سوءاستفاده کرده و با استقرار یک بدافزار نوشته‌شده به زبان Go، اقدام به استخراج رمزارز Monero از طریق XMRig می‌کند. این تهدید، که با نام RedisRaider شناخته شده، می‌تواند بهره‌وری سرورها را مختل کرده و نقطه ورودی برای حملات گسترده‌تر شود.

خلاصه فنی حمله

✅ بردار حملهسوءاستفاده از Redisهایی با پیکربندی پیش‌فرض یا بدون رمز عبور

✅ مکانیزم اجرا: اجرای دستورات CONFIG و SET برای تزریق یک job در cron و اجرای اسکریپت

✅ بار نهایی (Payload): بدافزار Go با اجرای XMRig برای استخراج رمزارز Monero

✅ رفتار Wormlike: گسترش خودکار به سایر سرورهای Redis در شبکه

چرا این حمله برای مدیران امنیت شبکه مهم است؟

به‌عنوان یک مدیر امنیت شبکه، باید بدانید که این نوع بدافزارها:

✅ برخلاف باج‌افزارها، بدون سر و صدا منابع پردازشی را مصرف می‌کنند (cryptojacking)

✅ معمولاً توسط آنتی‌ویروس‌های سنتی شناسایی نمی‌شوند

✅ در صورتی که کنترل نشوند، می‌توانند به‌سرعت در سطح شبکه گسترش یابند

✅ ممکن است به‌عنوان backdoor برای حملات بعدی استفاده شوند

سایر مقالات:  آموزش Velociraptor | ابزار پاسخ به حادثه و جرم‌شناسی دیجیتال

برای درک بهتر این حمله، ابتدا باید بدانیم Redis دقیقاً چیست و چرا این سرویس به‌راحتی در چنین سناریوهایی مورد هدف قرار می‌گیرد:

Redis چیست و چرا هدف جذابی برای مهاجمان است؟

Redis (Remote Dictionary Server) یک پایگاه داده NoSQL مبتنی بر حافظه (in-memory) است که برای پردازش سریع داده‌ها در مقیاس بالا طراحی شده است. این سرویس به‌صورت گسترده در معماری‌های میکروسرویس، سیستم‌های صف پیام، کش‌کردن داده‌ها و حتی مدیریت نشست (session management) استفاده می‌شود.

اما درست به‌خاطر همین سرعت بالا و طراحی سبک‌وزن، Redis در حالت پیش‌فرض:

✅ هیچ مکانیزم احراز هویتی ندارد

✅ به تمامی درخواست‌ها از طریق پورت 6379 بدون محدودیت پاسخ می‌دهد

✅ به مهاجم اجازه می‌دهد بدون نیاز به آسیب‌پذیری نرم‌افزاری، صرفاً با اتصال به Redis، دستورات اجرایی را روی سیستم اجرا کند

این موارد، Redis را به یکی از محبوب‌ترین اهداف برای حملات خودکار (automated exploitation) تبدیل کرده‌اند، به‌ویژه زمانی که توسط مدیران شبکه به‌اشتباه در معرض اینترنت قرار گرفته باشد.

مثال‌هایی از سوءاستفاده مهاجمان از Redis :

  1. اجرای دستورات system-level با سوءاستفاده از قابلیت CONFIG
    مهاجم می‌تواند مسیر فایل‌های Redis را تغییر داده و اسکریپت مخرب را در مسیر cron یا SSH بنویسد.
  2. تزریق backdoor با ایجاد کلید SSH روی کاربر root
    از طریق save یا SLAVEOF، مهاجم می‌تواند فایل .ssh/authorized_keys را روی سرور هدف بازنویسی کند.
  3. استفاده به‌عنوان اسکنر داخلی شبکه برای شناسایی سایر Redisها یا سرویس‌های آسیب‌پذیر

چرا مدیران امنیت شبکه باید Redis را جدی بگیرند؟

Redis ✅با وجود کاربرد گسترده، هنوز در بسیاری از سازمان‌ها توسط تیم‌های DevOps مستقر می‌شود بدون هماهنگی با تیم امنیت

✅به‌دلیل استفاده از پورت ثابت (6379) و نبود لاگ‌گیری پیش‌فرض، تشخیص فعالیت‌های مخرب بسیار سخت‌تر است

✅ اگر Redis در شبکه شما به‌درستی ایمن‌سازی نشده باشد، می‌تواند به نقطه ورود اصلی (initial access) برای مهاجمان تبدیل شود

راهکارهای پیشگیرانه برای جلوگیری از آلودگی

در این‌جا اقدامات پیشنهادی به تفکیک اولویت و نوع مسئولیت شما به‌عنوان مدیر آورده شده است:

1 . پیکربندی ایمن Redis

Redis ✅را فقط به IPهای داخلی یا قابل‌اعتماد محدود کنید (با استفاده از فایروال یا bind address).

✅تنظیم احراز هویت با رمز عبور قوی (از طریق دستور requirepass) الزامی باشد.

✅دستورات خطرناک مانند CONFIG, FLUSHALL, SCRIPT LOAD را از طریق تنظیم rename-command بی‌اثر کنید.

✅در صورت عدم نیاز، Redis را از اینترنت ایزوله نگه‌دارید.

2 . نظارت فعال بر منابع سرور

✅ استفاده از ابزارهایی مانند Prometheus + Grafana برای مانیتورینگ مصرف CPU و فرآیندهای ناشناخته

✅ بررسی منظم crontab برای شناسایی jobهای غیرمجاز

✅ هشداردهی در صورت اجرای فایل‌هایی با نام یا مسیرهای مشکوک (/tmp, /dev/shm, …)

3 . پیاده‌سازی راهکارهای تشخیص تهدید

✅استفاده از سیستم‌های تشخیص نفوذ (IDS) مانند Snort یا Suricata با ruleهای خاص Redis و XMRig

✅فعال‌سازی EPP/EDR سازمانی با قابلیت بررسی رفتاری فرآیندها

✅به‌روزرسانی مداوم Ruleهای SIEM برای شناسایی حملات مبتنی بر Cron، curl/wget، و exec()

4 . اسکن امنیتی دوره‌ای

✅ اجرای اسکن‌های امنیتی Redis با ابزارهایی مثل Redis-Scanner یا Nessus

✅ تحلیل رفتار ترافیک شبکه با NetFlow برای شناسایی فعالیت‌های mining یا ارتباط با سرورهای command & control

چه کنیم اگر آلوده شده باشیم؟

اگر شواهدی از استخراج رمزارز یا اجرای XMRig روی سرورهای لینوکس خود یافتید:

  1. بلافاصله سرور آلوده را از شبکه جدا کنید
  2. با استفاده از ابزارهایی مانند lsof, netstat, و ps aux فرآیندهای در حال اجرا را بررسی کرده و PIDها را terminate کنید
  3. تمام jobهای cron و فایل‌های در مسیرهای موقت بررسی و پاک‌سازی شوند
  4. پس از حذف کامل بدافزار، سیستم را از backup امن بازیابی کرده و اقدامات امنیتی را اعمال کنید

جمع‌بندی: نقش مدیر امنیت شبکه در مهار بدافزارهای پیشرفته

حملاتی از جنس RedisRaider به ما یادآوری می‌کنند که حتی سرویس‌هایی که به ظاهر بی‌خطر هستند، می‌توانند به دروازه‌ای برای ورود مهاجمان تبدیل شوند. از آن‌جا که بسیاری از تهدیدهای امروز fileless هستند و از سرویس‌های قانونی بهره می‌برند، مدیریت امنیت باید فراتر از نصب آنتی‌ویروس حرکت کند و به سمت مدل دفاع چندلایه، مبتنی بر رفتار و مانیتورینگ مداوم برود.

به‌عنوان مدیر امنیت شبکه، اتخاذ راهبردهای پیشگیرانه و واکنش سریع، کلید حفظ سلامت زیرساخت‌هاست.

 

کلمات کلیدی:

تمام حقوق سایت برای سلام دیجی و نويسندگان آن محفوظ می باشد