کشف درب‌پشتی کارخانه‌ای ENDLESSDOORS در روترهای Zbtlink

پژوهشگران شرکت VulnCheck گزارش داده‌اند که حداقل 20 مدل روتر ساخت Zbtlink به‌طور پیش‌فرض با درب‌پشتی‌ای نصب‌شده عرضه می‌شوند که امکان اجرای شل روت بدون احراز هویت را فراهم می‌کند. این نمونه که با نام رمز ENDLESSDOORS شناخته می‌شود، در همهٔ 21 ایمیج فرم‌ور جمع‌آوری‌شده از Zbtlink در مدت بیش از دو سال مشاهده شده و پس از بوت دستگاه راه‌اندازی می‌شود.

نحوهٔ عملکرد

  • ایمپلنت خود را به‌شکل یک نخ هستهٔ لینوکس نمایش می‌دهد، اما در واقع یک فرایند کاربر (userland) با امتیازات روت است که با پروسس‌های قانونی مانند kworker ترکیب می‌شود تا کشف نشود.
  • مولفهٔ اصلی یک برنامهٔ کوچک به نام rctl (remote control linux) است؛ نمونه‌ای از آن در GitHub قرار گرفته است. سرور این پروتکل روی پورت 7000 منتظر اتصال می‌ماند و می‌تواند دستورات شل یا فرمان راه‌اندازی یک شل معکوس را ارسال کند.
  • کلاینتِ ایمپلنت هر ~35 ثانیه (یا زودتر) تلاش می‌کند به سرور فرمان‌و‌کنترل (C2) متصل شود؛ هیچ مکانیسم احراز هویتی وجود ندارد و پس از ارسال پیام "hello" به‌همراه آدرس MAC، هر پاسخی را اجرا می‌کند.
  • رزروشدهٔ rctlbash موجب برقراری اتصال دوم به پورت 7001، تخصیص شبه‌پایانه، اجرای /bin/sh و ایجاد یک شل روت تعاملی می‌شود.

خطر اصلی

پروتکل سادهٔ ENDLESSDOORS عملاً دو فرمان پایه‌ای دارد: اجرای فرمان به‌عنوان روت و باز کردن شل روت. هر بازیگری که بتواند ترافیک شبکه‌ای میان کلاینت و سرور را ربایش کند — حتی بدون دسترسی مستقیم به روتر — قادر خواهد بود کنترل کامل دستگاه را به‌دست آورد. این وضعیت برای شبکه‌های داخلی ریسک جدی ایجاد می‌کند، زیرا مهاجم می‌تواند از مسیرهایی مثل دستکاری DNS یا ربایش گیت‌وی‌ها برای تسخیر روترها استفاده کند.

شاخص‌ها و موارد فنی

VulnCheck نمونه‌ای از ایمپلنت را روی مدل Zbtlink AX3000 تحلیل کرده و تماس‌های پیش‌فرض زیر را شناسایی نموده است:

  • 47.107.224.89
  • rbdg4nzqadui.wikaba.com (43.248.136.125)
  • zbtctl.epplink.net (47.100.190.96)
  • online-string.com (45.32.81.152)

پورت‌های مورد استفاده: 7000 و 7001. رشته‌های کلیدی در باینری و فایل‌سیستم شامل rctl و rctlbash هستند.

فهرست مدل‌های گزارش‌شده آسیب‌پذیر

فرم‌ورهای زیر حاوی ایمپلنت rctl و اسکریپت راه‌انداز /etc/init.d/skworker تشخیص داده شده‌اند:

  • CPE2801
  • WE1026-5G-WD
  • WE1326
  • WE2007
  • WE2008-DSIM
  • WE2416
  • WE3326
  • WE5927
  • WE5931
  • WE5931AC
  • WE826-T3-DSIM
  • WG108
  • WG1602
  • WG1608-DSIM
  • WG209
  • WG2105
  • WG2107
  • WG259
  • WG3526
  • Z8102AX-2DSIM

اقدامات فوری و بررسی‌ها

تا انتشار فرم‌ور اصلاح‌شده از سوی سازنده، اقدامات زیر توصیه می‌شود:

  • جدا کردن فیزیکی یا منطقی روتر از شبکه داخلی و قطع دسترسی اینترنت برای محدود کردن تماس‌های احتمالی به سرورهای C2.
  • بررسی فهرست فرایندها به‌دنبال نمونه‌هایی مانند /usr/sbin/kworker و جست‌وجو در فایل‌سیستم برای موارد زیر: /usr/sbin/kworker, /usr/lib/librctl.so, /etc/kworker.cfg, /etc/init.d/skworker.
  • در دیوارآتش شبکه یا روی خودِ روتر، خروجی به آدرس‌ها و دامنه‌های فهرست‌شده و پورت‌های 7000/7001 را مسدود کنید.
  • در صورت امکان، دستگاه را با مدل یا فرم‌ور معتبر و موردتأیید جایگزین کنید یا از روتر جداگانه برای جداسازی ترافیک حساس استفاده نمایید.
  • نظارت بر لاگ‌های شبکه و تحلیل ترافیک برای شناسایی ارتباطات غیرعادی با دامنه‌ها و IPهای اعلام‌شده.
  • در محیط‌های حساس فرض کنید دستگاه ممکن است تحت کنترل قرار گرفته باشد؛ بازنشانی کارخانه‌ای ممکن است کافی نباشد و تعویض فیزیکی دستگاه را مدنظر قرار دهید.

منابع

برای مرور مفاهیم مرتبط می‌توانید به صفحات ویکی‌پدیا دربارهٔ درب‌پشتی‌های نرم‌افزاری و روترها مراجعه کنید. گزارش کامل تحلیل فنی توسط VulnCheck منتشر شده است.

چه انتظاری باید داشت

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