خانه » ترکیب .JSE و PowerShell در حمله‌ای پیچیده برای انتشار دو تروجان معروف!

ترکیب .JSE و PowerShell در حمله‌ای پیچیده برای انتشار دو تروجان معروف!

توسط Vulnerbyt_News
multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte

یک حمله چندمرحله‌ای جدید که بدافزارهایی مانند نسخه‌های مختلف Agent Tesla، ابزار Remcos RAT و XLoader را بارگذاری می کند، کشف شده است.

به گفته محقق Unit42 شرکت Palo Alto Networks، مهاجمان به طور فزاینده‌ای بر این روش‌های پیچیده انتقال تکیه می‌کنند تا از شناسایی فرار کنند یا از سندباکس‌های سنتی بگذرند و بارگذاری و اجرای موفقیت‌آمیز پیلود مخرب را تضمین کنند.

تحلیل حمله

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte
زنجیره حمله

نقطه شروع این حمله، ارسال یک ایمیل فریبنده است که در قالب یک درخواست سفارش ظاهر می‌شود و فایلی آرشیو مخرب با فرمت 7-zip را در پیوست دارد. فایل پیوست‌شده با نام doc00290320092.7z، شامل یک فایل JavaScript کدگذاری‌شده با پسوند.jse است.

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte
نمونه ایمیل فیشینگ

پس از باز کردن فایل پیوست doc00290320092.7z، قربانی محتوای آن را که فایلی به نام doc00290320092.jse است، می‌بیند. دقت کنید که هم نام فایل ZIP و هم فایل JSE با doc شروع می‌شود که باعث می‌شود فایل JSE شبیه به یک سند قانونی به نظر برسد.

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

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte

بارگذاری پیلود مخرب از طریق PowerShell

اسکریپت PowerShell حاوی یک پیلود رمزگذاری‌شده مبتنی برBase64  است که پس از رمزگشایی، در مسیر موقت ویندوز ذخیره شده و اجرا می‌شود. اینجاست که اتفاق جالبی رخ می‌دهد: این حمله منجر به اجرای یک دراپر(dropper) مرحله بعدی می‌شود که با .NET یا AutoIt کامپایل می‌شود

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte
نمونه‌ای از این اسکریپت PowerShell

فایل اجرایی .NET

در صورت استفاده از یک فایل اجرایی .NET، پیلود رمزگذاری‌شده با AES یا Triple DES درون آن رمزگشایی شده و به درون فرآیند فعال “RegAsm.exe” تزریق می‌شود.

شباهت‌های متعددی میان نمونه‌های مختلف .NET در این زنجیره حمله مشاهده شده است. در تصویر زیر دو نمونه مختلف .NET در dnSpy بررسی شده و هر دو تزریق در RegAsm.exe را نشان می‌دهند که رویکرد چندلایه مهاجم را تایید می‌کند.

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte

این دو نمونه .NET نشان‌داده‌شده، بدافزارهای متفاوتی را بارگذاری می‌کنند. نمونه اول یک نسخه AgentTesla (احتمالا Snake Keylogger) را در فرایند RegAsm.exe تزریق می‌کند. نمونه دوم هم با استفاده از همان روش تزریق، XLoader را بارگذاری می کند.

فایل اجرایی کامپایل‌شده AutoIt

در سناریوی AutoIt، یک لایه اضافی اضافه می‌شود تا تحلیل را پیچیده‌تر کند. اسکریپتAutoIt ، حاوی پیلود رمزگذاری‌شده‌ای است که وظیفه بارگذاری شل‌کد نهایی را بر عهده دارد و منجر به تزریق فایل .NET به فرآیند “RegAsm.exe” می‌شود که در نهایت Agent Tesla را نصب می‌کند.
این موضوع نشان می‌دهد که مهاجم از مسیرهای اجرایی چندگانه استفاده می‌کند تا مقاومت در برابر شناسایی را افزایش دهد. تمرکز مهاجم همچنان روی زنجیره حمله چندمرحله‌ای و نه مبهم‌سازی پیچیده است.

تصویر زیر نمونه‌ای از اسکریپت AutoIt را درون این فایل اجرایی نشان می‌دهد. همچنین پیلود رمزگشایی‌شده را که شل‌کد طراحی‌شده برای رمزگشایی و تزریق بدافزار است، نمایش می‌دهد.

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte

تحلیل AutoIt در IDA Pro

بعد از دیباگ فایل اجرایی AutoIt درIDA Pro ، روش‌های مورد استفاده در این بدافزار مبتنی بر AutoIt بررسی شده‌است. یکی از توابع کلیدی در AutoIt برای اجرای شل‌کد، تابع DLLCALLADDRESS است.

تحلیل این تابع نشان داد که یک اشاره‌گر به رشته DLLCALLADDRESS به آدرس حافظه 0x493684 قرار می‌گیرد و اشاره‌گر به تابع در آدرس 0x493684+0xC قرار می‌گیرد.

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte
اشاره‌گر به تابع DLLCALLADDRESS

با دنبال کردن(Trace) این مسیر، پس از چند تابع در زنجیره فراخوانی، به تابع مسئول اجرای شل‌کد می‌رسیم که در تصویر زیر نمایش داده شده است.

multi-stage-malware-attack-uses-jse گروه والنربایت vulnerbyte

فراخوانی‌های API درون شل‌کد به صورت داینامیک resolve می‌شوند و نشان‌دهنده یک جریان اجرایی ساده هستند. شل‌کد از یک الگوی رایج پیروی می‌کند؛ ابتدا پیلود رمزگذاری‌شده را در حافظه بارگذاری می‌کند، آن را رمزگشایی می‌کند و در نهایت آن را در فرایند RegSvcs.exe تزریق می‌کند.
پیلود تزریق‌شده سپس یک فایل اجرایی .NET را بارگذاری می‌کند که در نهایت یک نسخه از Agent Tesla را که با .NET Reactor بسته‌بندی شده، اجرا می‌کند. این پیلود نهایی، نسخه‌ای از Agent Tesla است که یک رباینده اطلاعات(Infostealer) شناخته‌شده و مستندشده است.

نتیجه‌گیری

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

منابع:

همچنین ممکن است دوست داشته باشید

پیام بگذارید