پژوهشگران Rapid7 در نسخه‌های تروجان‌شده HAProxy در دو سازمان کرهٔ جنوبی مجموعه‌ابزار لینوکسی جدیدی به‌نام «ted» کشف کردند. این درپشتی ترافیک وب را رهگیری و تنها به بازدیدکنندگان منتخب صفحات تغییر‌یافته تحویل می‌دهد.

عملکرد و دلایل نگرانی

این نرم‌افزار یک آسیب‌پذیری در HAProxy نیست؛ نصب آن مستلزم اجرای کد روی میزبان و توانایی جایگزینی باینری در حال اجراست. اپراتور با ارسال یک درخواست به مسیر تصویری مشخص، ایمپلنت را در حالت فرمان‌و‌کنترل (C2) قرار می‌دهد. ایمپلنت شمارنده‌های اتصالات زنده HAProxy را کاهش می‌دهد تا اتصال هدف از آمار متعادل‌کننده بار پاک شود، بدنهٔ فرمان را در یک لولهٔ نام‌گذاری‌شده در /tmp می‌نویسد و سپس کانال درخواست را صفر می‌کند تا داده‌ای برای فوروارد باقی نماند.

پاسخ از طریق سوکت خام پس از هدر استاندارد HTTP/1.0 200 OK بازگردانده می‌شود تا رفتارش شبیه ترافیک عادی وب به‌نظر برسد. از همین کانال اپراتور قادر است beacon ارسال کند، فایل آپلود و دانلود کند، دستورات شل اجرا کند و پیکربندی ایمپلنت را تغییر دهد.

مکانیسم انتخاب هدف و پنهان‌کاری

تحویل صفحات تغییر‌یافته تنها به درخواست‌هایی صورت می‌گیرد که چهار شرط را داشته باشند: وجود هدر User-Agent، تطابق الگوهای URL و Referer با قواعد مشخص، و یکی از دو شرط زیر:

  • آی‌پی کلاینت در فهرست سفید باشد (بررسی دقیق تا سطح /24)، یا
  • کلیدی که اپراتور در هدر Accept-Language قرار می‌دهد، فیلتر آدرس را نادیده بگیرد.

ایمپلنت نوع محتوا و طول پاسخ را بازنویسی می‌کند، وضعیت پاسخ را 200 اجباری می‌نماید و هدر Accept-Ranges را حذف می‌کند تا کلاینت نتواند بازه‌های بایتی (byte ranges) را درخواست کند و تغییر اندازهٔ محتوا آشکار نشود.

انتساب و اهداف

Rapid7 با سطح اطمینان متوسط این ابزار را به بازیگرانی با ارتباطات احتمالی با کرهٔ شمالی نسبت داده و قربانیان را در بخش‌های خودروسازی و رسانه‌ای کرهٔ جنوبی گزارش کرده است. این سازمان برای نتیجه‌گیری قطعی‌تر درخواست شواهد بیشتر کرده است. گزارش کامل Rapid7 را می‌توانید در صفحهٔ رسمی آنها ببینید: Rapid7.

اجزاء و رفتارهای مخرب همراه

استیجر تنها روی میزبان‌هایی اجرا می‌شود که HAProxy یا cron از قبل فعال باشند و قبل از رهاسازی هر جزء، کاربر root را بررسی می‌کند. استیجر باینری معتبر crond را بازنویسی و فایل جایگزین را با زمان ایجاد مشابه /usr/bin/ssh علامت‌گذاری می‌کند. سپس کلمات کلیدی مانند tmp، wget، cron و crond را از تاریخچهٔ bash کاربر root و از شش لاگ سیستمی از جمله auth.log و audit/audit.log حذف می‌کند.

در همان مجموعه نمونه‌ای از sshd تروجان‌شده یافت شده که گذرواژه‌های متن‌صریح ضبط‌شده را رمزنگاری و در مسیر ثابتی نگهداری می‌کند. Rapid7 همان کد را در باینری‌های تروجان‌شدهٔ agetty، atd و polkitd نیز مشاهده کرده است.

همراه این مجموعه، یک تروجان دسترسی از راه دور با نام curlRAT گزارش شده که به‌صورت پیش‌فرض هر 12 ساعت beacon می‌زند و در صورت تنظیم فلگ از سوی اپراتور به بازهٔ 30 ثانیه‌ای می‌رود. curlRAT در صورت شناسایی نشانگر مجازی‌سازی روی میزبان، اجرا را متوقف می‌کند.

شاخص‌های آلودگی (IoC)

Rapid7 شاخص‌های زیر را منتشر کرده که برای شناسایی و مسدودسازی توصیه می‌شوند. این آیتم‌ها را در سامانه‌های مانیتورینگ و فایروال‌های خود جستجو و ثبت کنید.

دامنه‌ها

  • img.monderhouse[.]space
  • img.smartnords[.]site
  • img.darklights[.]store
  • img.responsive.pstatic[.]autos
  • img.socialteams[.]store
  • img.worksongo[.]store

فایل‌ها و مسیرها

  • ~/cache/haproxy-1000.cache
  • /var/lib/sshd/c8c68e629bba773a10ac80012d10bf19
  • /var/lib/snapd/g580
  • /tmp/jasper-log

مقادیر هش

  • SHA-256: 72e70936f0dbe459142a1d867617c35f8d0cce5d18c6a49e1090a2a5adc8e558
  • SHA-256: 4bb923eb040aa13ca8fd409c31ee4729c60ddff32e350efe1c5a4a9168a065f5

برای بررسی تاریخی و زمینه‌های بیشتر، مطالب The Hacker News و پروژهٔ متن‌باز maltrail می‌تواند مفید باشد: The Hacker News.

راهنمای عملی برای تیم‌های دفاعی

  • صحت باینری‌های HAProxy و crond را بررسی کنید و به‌ویژه به تغییرات زمان ایجاد (timestamp) توجه کنید.
  • مسیرهای موقت مثل /tmp را برای فایل‌های نهان‌شده مانند /tmp/jasper-log و فایل‌های غیرمعمول در /var/lib/sshd و /var/lib/snapd اسکن کنید.
  • تاریخچهٔ bash و لاگ‌ها را بازبینی کنید تا نشانه‌های پاک‌سازی یا رفتارهای غیرعادی شناسایی شود.
  • دامنه‌های فهرست‌شده را در DNS و فایروال مسدود یا به sinkhole هدایت کنید تا ارتباط زنده قطع شود.
  • سامانه‌های یکپارچه‌سازی فایل (FIM) و مقادیر هش باینری‌ها را پایش کنید و هر تغییر ناگهانی را فوراً بررسی کنید.
  • دسترسی از راه دور را محدود کنید؛ کلیدها و گذرواژه‌ها را بازنگری و در صورت لزوم بازنشانی کنید.
  • در صورت استفاده از پرتال‌های Groupware، به‌ویژه نمونه‌های محلی یا کره‌ای، نقاط ورودی ایمیل و سرورها را ارزیابی و وصله‌گذاری (patch) کنید.

جمع‌بندی و چشم‌انداز

این کشف نشان می‌دهد مهاجمان می‌توانند به‌جای تکیه صرف بر سرورهای بک‌اند، متعادل‌کنندهٔ بار را به سکویی برای رهگیری و تزریق محتوای هدفمند تبدیل کنند. چنین رویکردی شناسایی و پاسخ را پیچیده‌تر می‌سازد. افزایش نظارت بر یکپارچگی باینری‌ها، محدودسازی امکان اجرای کد روی زیرساخت‌های حیاتی و سیاست‌های سخت‌گیرانهٔ دسترسی، از مؤثرترین راهکارها برای مقابله با این نوع تهدید است.