نسخه macOS بکدور HZ Rat در ژوئن 2024، توسط محققان آزمایشگاه کسپرسکی شناسایی شد. این بکدور، کاربران پیام رسان سازمانی DingTalk و شبکه اجتماعی و پلتفرم پیام رسان WeChat را مورد نفوذ قرار داده است.
نمونههای شناسایی شده نسخه macOS بکدور HZ Rat تا حدود زیادی عملکرد نسخه ویندوز آن را شبیه سازی میکنند و تنها پیلود آنها که به شکل اسکریپت shell از سرور مهاجمان دریافت میشود، متفاوت است.
محققان متوجه شدند که برخی از نسخههای این بکدور از آدرسهای IP لوکال برای اتصال به C2 استفاده میکنند. از این رو، به نظر میرسد که ممکن است خودِ تهدید کننده مورد هدف قرار گرفته باشد و یا این آدرس لوکال به سوء استفاده از بکدور برای حرکت جانبی از طریق شبکه قربانی اشاره دارد.
بکدور HZ Rat اولین بار توسط محققان DCSO در نوامبر 2022 شناسایی شد و در ابتدا سیستمهای ویندوز را مورد نفوذ قرار داد و دستورات را در قالب اسکریپتهای PowerShell دریافت و اجرا کرد.
جزئیات فنی بکدور HZ Rat
محققان آزمایشگاه کسپرسکی با وجود عدم اطلاع از نقطه اصلی توزیع بدافزار، موفق به کشف یک پکیج نصب برای یکی از نمونههای این بکدور به نام OpenVPNConnect.pkg شدند:
این پکیج در جولای 2023 در VirusTotal آپلود شده است. این پکیج در برنامه قانونی “OpenVPN Connect” توزیع شده و شامل دو فایل علاوه بر کلاینت اصلی exe و init میباشد.
هنگامی که برنامه باز میشود، سیستم با استفاده از فایل پیکربندی Info.plist تعیین میکند که کدام فایل اجرا شود. اولین موردی که راه اندازی میشود، فایل exe است؛ یک اسکریپت shell که فایل init را اجرا و سپس برنامه OpenVPN را راه اندازی میکند:
فایل init همان بکدور واقعی است. هنگامی که init اجرا میشود و بر اساس لیست آدرسهای IP مشخص شده در خود بکدور، با C2 مورد نظر ارتباط برقرار میکند. نمونهها در اغلب موارد، از پورت 8081 برای اتصال استفاده میکردند. محققان علاوه بر این، نمونههایی از بکدور HZ Rat را با استفاده از آدرسهای IP خصوصی برای اتصال به C2 کشف کردند.
تمام ارتباطات با C2 توسط XOR و کلید 0x42 رمزگذاری میشوند. بکدور HZ Rat برای مقداردهی اولیه یک نشست، یک مقدار تصادفی چهار بایتی با برچسب کوکی در کد ارسال میکند. هر پیام دارای ساختار زیر است:
- کد پیام (1 بایت)؛
- طول پیام (4 بایت)؛
- متن پیام، که در آن 4 بایت اول شامل اندازه داده است.
فایل اجرایی به زبان C++ نوشته شده است و حاوی اطلاعات دیباگ میباشد که شناسایی آن را آسان میکند:
بکدور HZ Rat تنها از چهار دستور اصلی زیر پشتیبانی میکند:
کد | نام تابع | شرح |
3, 8, 9 | execute_cmdline | اجرای دستورات shell |
4 | write_file | نوشتن فایل روی دیسک |
5 | download_file | ارسال فایل به سرور |
11 | ping | بررسی در دسترس بودن قربانی |
دستورات shell برای جمع آوری دادههای مورد نظر از سیستم قربانی به شرح زیر است:
وضعیت حفاظت از یکپارچگی سیستم (SIP)؛
اطلاعات سیستم و دستگاه، از جمله:
- آدرس IP لوکال؛
- اطلاعات در مورد دستگاههای بلوتوث؛
- اطلاعات در مورد شبکههای Wi-Fi موجود، آداپتورهای شبکه بیسیم موجود و شبکهای که دستگاه به آن متصل است.
- مشخصات سخت افزاری؛
- اطلاعات ذخیره ساز دادهها؛
لیست برنامههای کاربردی؛
اطلاعات کاربر از WeChat؛
اطلاعات کاربر و سازمان از پیام رسان DingTalk؛
مقادیر نام کاربری/وبسایت از Google Password Manager.
این بدافزار تلاش میکند تا شناسه WeChat، ایمیل و شماره تلفن قربانی را از این پیام رسان دریافت کند. این دادهها به صورت متن ساده در فایل userinfo.data ذخیره میشوند.
در مورد DingTalk، مهاجمان به دادههای دقیقتر در خصوص قربانیان علاقه مند هستند:
- نام سازمان و بخشی که کاربر در آن مشغول است؛
- نام کاربری؛
- آدرس ایمیل شرکت؛
- شماره تلفن.
اسکریپت سعی میکند این دادهها را از فایل orgEmployeeModel دریافت کند. اگر این فایل وجود نداشته باشد، بدافزار شماره تلفن و ایمیل کاربر را در فایل sAlimailLoginEmail جستجو میکند.
چنانچه بدافزار دوباره در جستجو شکست بخورد، سعی میکند ایمیل کاربر را در یکی از فایلهای کش DingTalk به نام date>.holmes.mapping > پیدا کند. این فایلها، رمزگذاری نشده هستند و دادهها بصورت متن ساده ذخیره میشوند.
زیرساخت بکدور HZ Rat
در زمان مطالعه، چهار سرور فرماندهی و کنترل (C2) فعال بودند که دستورات مخرب را ارسال میکرند. در برخی موارد، در بین IP های مشخص شده، آدرسهای خصوصی نیز وجود داشتند. چنین نمونههایی احتمالاً برای کنترل دستگاه قربانی که قبلاً آلوده شده است و به عنوان یک پروکسی برای تغییر مسیر اتصال به سرور C2 استفاده میشوند.
این شرایط به طور معمول، به پنهان کردن وجود بدافزار در شبکه کمک میکند، چرا که فقط دستگاه دارای پروکسی میتوانند با C2 ارتباط برقرار کنند.
برخی از آدرسهای IP شناسایی شده قبلاً در حملات بدافزاری که دستگاههای ویندوز را مورد هدف قرار داده بودند، مشاهده شدند. پیدایش آنها به سال 2022 باز میگردد.
تقریباً تمام سرورهای C2 متعلق به بکدور HZ Rat، در چین قرار دارند. دو مورد نیز در ایالات متحده و هلند واقع شدهاند.
hxxp://vpn.mihoyo[.]com/uploads/OpenVPNConnect.zip
هنوز به طور قطعی مشخص نیست که چگونه این فایل به دامنه قانونی رسیده و آیا این شرکت هک شده است یا خیر.
سخن پایانی
نسخه macOS بکدور HZ Rat نشان میدهد که هکرهایی که در پشت حملات قبلی قرار دارند، هنوز فعال هستند. بدافزار در طول تحقیقات، فقط دادههای کاربر را جمعآوری میکند، اما بعداً میتوان از آنها برای حرکت جانبی در سراسر شبکه قربانی استفاده کرد.
دادههای جمعآوری شده درباره شرکتهای قربانیان و اطلاعات تماس میتوانند برای جاسوسی از افراد و ایجاد زمینهای برای حملات آینده مورد استفاده قرار گیرند.
IoCها
هشهای MD5
بکدور
0c3201d0743c63075b18023bb8071e73 – Mach-O 64-bit x86_64 executable
6cc838049ece4fcb36386b7a3032171f – Mach-O 64-bit x86_64 executable
6d478c7f94d95981eb4b6508844050a6 – Mach-O 64-bit x86_64 executable
7a66cd84e2d007664a66679e86832202 – Mach-O 64-bit x86_64 executable
7ed3fc831922733d70fb08da7a244224 – Mach-O 64-bit x86_64 executable
9cdb61a758afd9a893add4cef5608914 – Mach-O 64-bit x86_64 executable
287ccbf005667b263e0e8a1ccfb8daec – Mach-O 64-bit x86_64 executable
7005c9c6e2502992017f1ffc8ef8a9b9 – Mach-O 64-bit x86_64 executable
7355e0790c111a59af377babedee9018 – Mach-O 64-bit x86_64 executable
a5af0471e31e5b11fd4d3671501dfc32 – Mach-O 64-bit x86_64 executable
da07b0608195a2d5481ad6de3cc6f195 – Mach-O 64-bit x86_64 executable
dd71b279a0bf618bbe9bb5d934ce9caa – Mach-O 64-bit x86_64 executable
بسته نصب مخرب
8d33f667ca135a88f5bf77a0fab209d4 – Apple software package