محققای Greynoise گزارشی منتشر کردن در خصوص یک بات چند ملیتی که ایران هم بینشون هستش و سرویسهای Remote Desktop Protocol (RDP) در آمریکا رو هدف قرار میده.
RDP یک پروتکل شبکه است که امکان اتصال و کنترل از راه دور سیستمهای ویندوزی رو فراهم میکنه. این سرویس معمولاً توسط ادمین های سیستم، تیمهای پشتیبانی (Helpdesk) و کارمندان دورکار استفاده میشه. اما مهاجمان اغلب ازش برای اسکن پورتهای باز RDP، حملات Brute-force برای حدس زدن پسورد، اکسپلویت آسیبپذیریها، یا حملات مبتنی بر زمان بندی (Timing Attacks) استفاده میکنن.
بات نت (Botnet) از دو واژه ساخته شده: Bot (ربات) + Network (شبکه)، یعنی مجموعهای از دستگاههای آلوده (کامپیوتر، سرور، موبایل، روتر، دوربین و غیره) که همه بصورت مخفیانه تحت کنترل یک مهاجم مرکزی قرار دارن و مثل یک ارتش دیجیتال فرمانهای اون رو اجرا میکنن. براساس عملکرد و دستگاهی که آلوده میکنن، میتونن به انواع مختلفی مانند DDoS Botnet، Spam Botnet، RDP/SSH Botnet، IoT Botnet و … تقسیم بشن.
در این مورد خاص، محققای GreyNoise کشف کردن که این بات نت از دو نوع حمله مرتبط با RDP استفاده میکنه:
- RD Web Access Timing Attacks
- RDP Web Client Login Enumeration
حملات RD Web Access Timing: هدف این حمله شناسایی نامهای کاربری معتبر در سیستم RDP، بدون نیاز به ورود موفق یا خطای ظاهری هستش. در سیستمهای ویندوزی، RD Web Access یک رابط وب برای اتصال از راه دور به دسکتاپها یا سرورهای ترمینال است که معمولاً در مسیرهایی مثل rdweb یا rpc قرار داره. وقتی کاربر، نام کاربری رو وارد میکنه، سرور باید بررسی کنه که آیا چنین کاربری وجود داره یا نه.

در حملات RD Web Access Timing ، مهاجم تعداد زیادی درخواست احراز هویت (Authentication Requests) با نامهای کاربری مختلف ارسال میکنه. زمان پاسخ هر درخواست رو با دقت میلی ثانیه اندازهگیری میکنه. اگه برای بعضی از نامهای کاربری، زمان پاسخگویی کمی بیشتر یا کمتر از بقیه باشه، این تفاوت زمانی معمولاً نشان دهندهی اینه که سرور، اون کاربر رو شناسایی کرده و مثلاً رفته برای بررسی رمز عبور واقعی. بنابراین مهاجم بدون هیچ ورود موفقی، به لیستی از نامهای واقعی کاربران RDP دست پیدا میکنه، که در مرحلهی بعدی برای حملات Brute Force یا Credential Stuffing استفاده میشه.
حملات RDP Web Client Login Enumeration: هدف این حمله شناسایی نامهای کاربری معتبر از طریق رابط وب RDP با بررسی تفاوت در پاسخهای منطقی یا کدهای خطای سرور هستش.
در ویندوز سرورهای جدیدتر، مثل Server 2019 و بعد از اون، مایکروسافت یک کلاینت RDP مبتنی بر وب ارائه میده که از طریق مرورگر اجرا میشه. آدرس اون معمولا: https://<server>/rdweb/webclient هستش.

وقتی کاربر از این صفحه سعی میکنه لاگین کنه، پروتکلهای خاصی بین مرورگر و سرور مبادله میشه. مهاجم میتونه با تحلیل تفاوت در پاسخها، تشخیص بده که آیا کاربر وجود داره یا نه.
مثلا فرض کنید نام کاربری admin و پسورد pass رو فرستادیم:
- اگه 401 و محتوای User not found بده: یعنی نام کاربری معتبر نیست.
- اگه 401 و محتوای Invalid credentials بده: یعنی نام کاربری معتبره اما پسورد نه.
- اگه 403 و محتوای Account locked بده: کاربر معتبره.
بنابراین مهاجم با مقایسه متن خطاها یا کدهای بازگشتی میتونه تشخیص بده که کدام نامهای کاربری معتبر هستن.
این حملات از 8 اکتبر و از IPهای برزیلی شروع شدن.

اما بعدش محققا مشاهده کردن حملات گسترش یافته و از IPهایی با منشاء آرژانتین، ایران، چین، مکزیک، روسیه، آفریقای جنوبی و اکوادور هم انجام میشه.

محققا گفتن که این حملات از بیش از 100 هزار IP، از بیش از 100 کشور مختلف، انجام گرفته.
تقریباً تمامی IPهای مشاهده شده، اثر انگشت TCP مشابهی دارن. با وجود تفاوتهایی در مقدار MSS (Maximum Segment Size = مشخص میکنه هر بسته TCP چه مقدار پیلود میتونه حمل کنه.)، محققا معتقدن که این تفاوتها ناشی از خوشه های مختلف سیستمهای آلوده درون بات نت هستش.

برای مقابله با این فعالیت، به مدیران سیستم توصیه شده:
- آدرسهای IP مهاجم رو مسدود کنن. (برای این منظور میتونید از GreyNoise Block و تمپلیت Oct-2025 RDP Botnet Campaign استفاده کنید.)
- لاگهای مربوط به RDP رو بررسی کنن تا هرگونه فعالیت مشکوک رو شناسایی کنن.
همچنین بعنوان توصیهی عمومی:
اتصال RDP نباید مستقیماً از طریق اینترنت در دسترس باشه. استفاده از VPN و احراز هویت چندمرحلهای (MFA) میتونه لایهی امنیتی اضافی ایجاد کنه.
البته برای ما که داخل ایران هستیم، باید این IPها و دستگاههای آلوده رو شناسایی و رفع آلودگی کنیم.