کشف بدافزار HZ Rat backdoor در MacOS

کشف بدافزار HZ Rat backdoor در MacOS

تاریخ ایجاد

به تازگی محققان امنیتی آکادمی Kaspersky نسخه‌‌‌‌‌‌‌‌‌‌ای تازه از بدافزار HZ Rat backdoor کشف کرده‌‌‌‌‌‌‌‌‌‌اند که کاربران پیام‌‌‌‌‌‌‌‌‌‌رسان‌‌‌‌‌‌‌‌‌‌های DingTalk و WeChat در سیستم‌‌‌‌‌‌‌‌‌‌عامل macOS را هدف قرار می‌‌‌‌‌‌‌‌‌‌دهد و اقدام به جاسوسی از ایشان می‌‌‌‌‌‌‌‌‌‌کند. ساز و کار این نمونه جدید بسیار مشابه نسخه Windows این بدافزار می‌‌‌‌‌‌‌‌‌‌باشد که به وسیله کدهای مخرب PowerShell سیستم قربانی را آلوده می‌‌‌‌‌‌‌‌‌‌کرد. دو روش برای راه یافتن بدافزار به سیستم کاربر وجود دارد. در روش نخست کد مخرب به صورت مستقیم از سرور مهاجم دریافت می‌شود. لازم به ذکر است که برخی نسخه‌‌‌‌‌‌‌‌‌‌های این backdoor از آدرس‌‌‌‌‌‌‌‌‌‌های IP محلی برای برقراری ارتباط با یک سرور فرمان و کنترل (C2) استفاده می‌‌‌‌‌‌‌‌‌‌کردند. این امر می‌‌‌‌‌‌‌‌‌‌تواند نشان‌‌‌‌‌‌‌‌‌‌دهنده هدفمند بودن حمله و قصد مهاجمین برای بهره‌‌‌‌‌‌‌‌‌‌برداری از backdoor  به منظور حرکت جانبی روی شبکه قربانی باشد. در روش دوم بدافزار خود را به عنوان یک نصب‌‌‌‌‌‌‌‌‌‌کننده نرم‌‌‌‌‌‌‌‌‌‌افزاری دیگر همانند OpenVPN، PuTTYgen یا EasyConnect جا می‌‌‌‌‌‌‌‌‌‌زند. هنوز نقطه توزیع اصلی بدافزار یافت نشده است ولی یک بسته نصبی برای یکی از نمونه‌‌‌‌‌‌‌‌‌‌های آن به نام OpenVPNConnect.pkg در دسترس عموم قرار گرفته است. این نمونه توسط هیچ یک از ابزارهای مطرح، مخرب شناسایی نشده است و همانند یک نصب‌‌‌‌‌‌‌‌‌‌کننده نرم‌‌‌‌‌‌‌‌‌‌افزار عمل می‌‌‌‌‌‌‌‌‌‌کند با این تفاوت که در زیرشاخه MacOS و در کنار نرم‌‌‌‌‌‌‌‌‌‌افزار اصلی، دو فایل exe و init نیز وجود دارند.
با اجرای نرم‌‌‌‌‌‌‌‌‌‌افزار بر روی سیستم قربانی، ابتدا، فایل exe اجرا می‌‌‌‌‌‌‌‌‌‌شود. فایل exe حاوی کدهایی است که نخست فایل init و سپس نرم‌‌‌‌‌‌‌‌‌‌افزار OpenVPN را اجرا می‌‌‌‌‌‌‌‌‌‌کند. این ترتیب اجرا در فایل Info.plist مشخص شده است.
در واقع، فایل init همان backdoor می‌‌‌‌‌‌‌‌‌‌باشد که به زبان C++ نوشته شده است. پس از اجرا شدن، فایل init، با IPهای مشخص‌‌‌‌‌‌‌‌‌‌شده در خود backdoor اتصالی به سرور C2 برقرار می‌‌‌‌‌‌‌‌‌‌کند. در بسیاری از موارد پورت 8081 برای اتصال مورد استفاده قرار گرفته است. همچنین برخی نمونه‌‌‌‌‌‌‌‌‌‌ها از آدرس‌‌‌‌‌‌‌‌‌‌های IP خصوصی برای برقراری این اتصال بهره می‌‌‌‌‌‌‌‌‌‌بردند. این نمونه‌‌‌‌‌‌‌‌‌‌ها، به احتمال بالا، به منظور کنترل دستگاه قربانی با استفاده از رایانه‌‌‌‌‌‌‌‌‌‌ای از پیش آلوده‌‌‌‌‌‌‌‌‌‌شده در شبکه محلی ایشان به عنوان سرور پروکسی برای راهنمایی اتصال به سوی سرور C2 به کار برده می-شده‌‌‌‌‌‌‌‌‌‌اند. این امر به منظور پنهان کردن بدافزار در شبکه صورت می‌‌‌‌‌‌‌‌‌‌گیرد زیرا تنها دستگاه دارای پروکسی با سرور C2 ارتباط برقرار می‌‌‌‌‌‌‌‌‌‌کند.
تمامی ارتباطات با سرور C2 با استفاده از XOR و کلید 0X42 رمزگذاری شده‌‌‌‌‌‌‌‌‌‌اند. برای آغاز session، backdoor یک عدد تصادفی با برچسب cookie را به سرور ارسال می‌‌‌‌‌‌‌‌‌‌کند. تمامی پیام‌‌‌‌‌‌‌‌‌‌های ارسال‌‌‌‌‌‌‌‌‌‌شده به سرور ساختار زیر را دارند.
•    کد پیام – 1 بایت
•    طول پیام – 4 بایت
•    متن پیام که 4 بایت نخست آن اندازه داده را مشخص می‌‌‌‌‌‌‌‌‌‌کند.
backdoor تنها چهار دستور ساده را پشتیبانی می‌‌‌‌‌‌‌‌‌‌کند که در جدول زیر آورده شده‌‌‌‌‌‌‌‌‌‌اند.

Capture_4


از این دستورات، تنها دو دستور execute_cmdline و ping در نمونه بررسی‌‌‌‌‌‌‌‌‌‌شده به کار برده شده بودند. پس از بررسی‌‌‌‌‌‌‌‌‌‌های بیش‌‌‌‌‌‌‌‌‌‌تر، دستورات اجرایی از سرور C2 به دست آمده که اطلاعات زیر را از سیستم قربانی استخراج می‌‌‌‌‌‌‌‌‌‌کنند.
•    وضعیت System Integrity Protection
•    اطلاعات سیستم و دستگاه، از جمله
   •    آدرس IP محلی
   •    اطلاعات دستگاه های بلوتوثی
   •    اطلاعات شبکه های Wi-Fi در دسترس، آداپتورهای شبکه بی‌‌‌‌‌‌‌‌‌‌سیم موجود و شبکه‌‌‌‌‌‌‌‌‌‌ای که دستگاه به آن متصل است
   •    مشخصات سخت‌‌‌‌‌‌‌‌‌‌افزاری
   •    اطلاعات مربوط به ذخیره‌‌‌‌‌‌‌‌‌‌سازی داده‌‌‌‌‌‌‌‌‌‌ها
•    لیست برنامه‌‌‌‌‌‌‌‌‌‌ها
•    اطلاعات کاربر در WeChat
•    اطلاعات کاربر و سازمان از DingTalk
•    کاربری و وب‌سایت به صورت مقادیر جفتی از Google Password Manager

بدافزار تلاش می‌‌‌‌‌‌‌‌‌‌کند شناسه WeChat (WeChatID)، آدرس ایمیل و شماره تلفن کاربر را از WeChat استخراج کند. این داده‌‌‌‌‌‌‌‌‌‌ها به صورت متن ساده (plain text) در فایل userinfo.data ذخیره می‌‌‌‌‌‌‌‌‌‌شوند.
مهاجمین به اطلاعات دقیق‌‌‌‌‌‌‌‌‌‌تری از برنامه DingTalk علاقه‌‌‌‌‌‌‌‌‌‌منداند. این اطلاعات عبارت‌‌‌‌‌‌‌‌‌‌اند از:
•    نام سازمان و بخشی که کاربر در آن کار می‌‌‌‌‌‌‌‌‌‌کند
•    نام کاربری
•    آدرس ایمیل شرکت
•    شماره تلفن
کد مخرب تلاش می‌‌‌‌‌‌‌‌‌‌کند این اطلاعات را  از فایل orgEmployeeModel دریافت کند. اگر این فایل یافت نشود، بدافزار در فایل sAlimailLoginEmail به دنبال شماره تلفن و آدرس ایمیل کاربر می‌‌‌‌‌‌‌‌‌‌گردد. اگر این اقدام نیز شکست بخورد، تلاش می‌‌‌‌‌‌‌‌‌‌کند آدرس ایمیل کاربر را در یکی از فایل‌‌‌‌‌‌‌‌‌‌های کش DingTalk به نام <date>.holmes.mappings بیابد. این اطلاعات نیز به صورت متن ساده نگه‌‌‌‌‌‌‌‌‌‌داری می‌‌‌‌‌‌‌‌‌‌شوند.
در زمان تحلیل، 4 سرور کنترل فعال بوده و دستورات مخرب باز می‌‌‌‌‌‌‌‌‌‌گرداند. برخی از آدرس‌‌‌‌‌‌‌‌‌‌های IP شناسایی‌‌‌‌‌‌‌‌‌‌شده پیش‌‌‌‌‌‌‌‌‌‌تر در حملات به دستگاه‌‌‌‌‌‌‌‌‌‌های Windows دیده شده بودند. به جز تنها دو سرور که در ایالت متحده آمریکا و هلند قرار داشتند، تمامی سرورهای C2 در چین یافت شدند. با توجه به اطلاعات به دست آمده از سایت VirusTotal بسته نصبی مخرب قبلا از دامنه زیر که متعلق به شرکت بازی‌‌‌‌‌‌‌‌‌‌سازی MiHoYo می‌‌‌‌‌‌‌‌‌‌باشد بارگیری شده است.
hxxp://vpn.mihoyo[.]com/uploads/OpenVPNConnect.zip.
چگونگی راهیابی این فایل به دامنه بالا هنوز به طور قطع مشخص نشده است و احتمال دارد این کمپانی قبلا هک شده باشد.
در ادامه انواع نشانگرهای نفوذ آورده شده‌‌‌‌‌‌‌‌‌‌اند.



backdoor MD5 file hashes
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
 

C2 IP addresses
111.21.246[.]147
123.232.31[.]206
120.53.133[.]226
218.193.83[.]70
29.40.48[.]21
47.100.65[.]182
58.49.21[.]113
113.125.92[.]32
218.65.110[.]180
20.60.250[.]230



محصولات تحت‌تأثیر
تمامی نسخه‌‌‌‌‌‌‌‌‌‌های سیستم‌‌‌‌‌‌‌‌‌‌عامل macOS در مقابل این بدافزار آسیب‌‌‌‌‌‌‌‌‌‌پذیر هستند.

توصیه‌های امنیتی
اطمینان حاصل کنید که macOS و تمامی اپلیکیشن‌های نصب‌شده به‌روز باشند تا آسیب‌پذیری‌های شناخته‌شده برطرف شوند و به کاربران توصیه می‌‌‌‌‌‌‌‌‌‌شود از برنامه‌‌‌‌‌‌‌‌‌‌های WeChat و DingTalk اجتناب کنند.

منبع خبر:


https://securelist.com/hz-rat-attacks-wechat-and-dingtalk/113513