Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

ورک: تصویر بزرگ

این گروه جاسوسی سایبری جدید که بیشتر بر روی آسیا متمرکز شده است، از ابزارهای غیرمستند، از جمله استخراج مبتدیانه بارهای PowerShell از فایل های PNG استفاده می کند.

محققان ESET اخیراً حملات هدفمندی را یافته اند که از ابزارهای غیرمستند علیه شرکت های مختلف و دولت های محلی بیشتر در آسیا استفاده می کنند. این حملات توسط یک گروه جاسوسی ناشناخته قبلی انجام شده است که ما Worok نامیده ایم و حداقل از سال 2020 فعال بوده است. مجموعه ابزار Worok شامل یک لودر C++ CLRLoad، یک درب پشتی PowerShell PowHeartBeat و یک بارکننده C# PNGLoad است که از استگانوگرافی برای استخراج مخرب پنهان استفاده می کند. بارگیری از فایل های PNG

وروک کیست؟

در طول ProxyShell (CVE-2021-34523) افشای آسیب پذیری در اوایل سال 2021، مشاهده کردیم فعالیت از گروه های مختلف APT. یکی از ویژگی های مشترک با TA428:

  • زمان فعالیت
  • عمودی های هدفمند
  • استفاده از ShadowPad

بقیه مجموعه ابزار بسیار متفاوت است: به عنوان مثال، TA428 در آن شرکت کرد سازش دسکتاپ قادر در سال 2020. ما در نظر داریم که پیوندها به اندازه کافی قوی نیستند که Worok را همان گروه TA428 در نظر بگیریم، اما این دو گروه ممکن است ابزارهای مشترک داشته باشند و منافع مشترکی داشته باشند. تصمیم گرفتیم یک خوشه ایجاد کنیم و نام آن را Worok گذاشتیم. این نام پس از یک mutex در لودر مورد استفاده گروه انتخاب شد. سپس فعالیت بیشتر با انواع ابزارهای مشابه به این گروه مرتبط شد. با توجه به تله متری ESET، Worok از اواخر سال 2020 فعال بوده است و تا زمان نگارش این مقاله به فعالیت خود ادامه می دهد.

در اواخر سال 2020، Worok دولت ها و شرکت ها را در چندین کشور هدف قرار داد، به ویژه:

  • یک شرکت مخابراتی در شرق آسیا
  • بانکی در آسیای مرکزی
  • یک شرکت صنایع دریایی در آسیای جنوب شرقی
  • یک نهاد دولتی در خاورمیانه
  • یک شرکت خصوصی در جنوب آفریقا

وقفه قابل توجهی در عملیات مشاهده شده از 2021-05 تا 2022-01 وجود داشت، اما فعالیت Worok در سال 2022-02 بازگشت و با هدف:

  • یک شرکت انرژی در آسیای مرکزی
  • یک نهاد بخش عمومی در آسیای جنوب شرقی

شکل 1 یک نقشه حرارتی بصری از مناطق مورد نظر و عمودی ها را نشان می دهد.

شکل 1. نقشه مناطق و عمودهای هدف

با در نظر گرفتن مشخصات اهداف و ابزارهایی که دیده ایم علیه این قربانیان به کار گرفته شده است، فکر می کنیم هدف اصلی Worok سرقت اطلاعات است.

تجزیه و تحلیل فنی

در حالی که اکثر دسترسی‌های اولیه ناشناخته هستند، در برخی موارد تا سال‌های 2021 و 2022 شاهد استفاده از سوء استفاده‌ها علیه آسیب‌پذیری‌های ProxyShell بوده‌ایم. در چنین مواردی، معمولاً پوسته‌های وب پس از بهره‌برداری از این آسیب‌پذیری‌ها به منظور پایداری در شبکه قربانی آپلود می‌شوند. سپس اپراتورها از ایمپلنت های مختلف برای به دست آوردن قابلیت های بیشتر استفاده کردند.

هنگامی که دسترسی به دست آمد، اپراتورها ابزارهای متعدد و در دسترس عموم را برای شناسایی مستقر کردند، از جمله Mimikatz, کرم خاکی, ری جورجو NBTscan، و سپس ایمپلنت های سفارشی خود را به کار بردند: یک لودر مرحله اول و به دنبال آن یک بارگذار NET مرحله دوم (PNGLoad). متأسفانه، ما نتوانستیم هیچ یک از محموله های نهایی را بازیابی کنیم. در سال 2021، لودر مرحله اول یک مجموعه CLR (CLRLoad) بود، در حالی که در سال 2022، در اکثر موارد، یک درب پشتی PowerShell (PowHeartBeat) با امکانات کامل جایگزین شده است - هر دو زنجیره اجرایی در شکل 2 نشان داده شده اند. ابزارها به تفصیل در بخش های فرعی زیر توضیح داده شده اند.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 2. زنجیره های سازش کار Worok

CLRLoad: لودر مونتاژ CLR

CLRLoad یک PE عمومی ویندوز است که در هر دو نسخه 32 و 64 بیتی دیده ایم. این یک لودر نوشته شده در C++ است که مرحله بعدی (PNGLoad) را بارگیری می کند، که باید یک اسمبلی زبان رایج زمان اجرا (CLR). فایل DLL. این کد از فایلی که بر روی دیسک در یک دایرکتوری قانونی قرار دارد بارگیری می شود، احتمالاً برای گمراه کردن قربانیان یا پاسخ دهندگان حادثه به این که فکر کنند نرم افزار قانونی است.

برخی از نمونه های CLRLoad با رمزگشایی مسیر کامل فایلی که محتوای آن به عنوان مرحله بعدی بارگذاری می شود، شروع می شود. این مسیرهای فایل با یک XOR تک بایتی با یک کلید متفاوت در هر نمونه کدگذاری می شوند. این مسیرهای فایل به صورت رمزگشایی یا متنی شفاف هستند و موارد زیر آنهایی هستند که با آنها مواجه شده ایم:

  • C:Program FilesVMwareVMware ToolsVMware VGAuthxsec_1_5.dll
  • C:Program FilesUltraViewermsvbvm80.dll
  • C:Program FilesInternet ExplorerJsprofile.dll
  • ج: فایل های برنامهWinRarRarExtMgt.dll
  • C: فایل های برنامه (x86) Foxit SoftwareFoxit Readerlucenelib.dll

در مرحله بعد، یک mutex ایجاد می شود و ما در هر نمونه یک نام متفاوت دیده ایم. لودر این mutex را بررسی می کند. اگر پیدا شد، خارج می شود، زیرا لودر از قبل در حال اجرا است. در یکی از نمونه ها، موتکس Wo0r0KGWhYGO با آن مواجه شد که به گروه نام Worok را داد.

سپس CLRLoad یک مجموعه CLR را از مسیر فایل احتمالاً رمزگشایی شده بارگذاری می کند. به عنوان کد مدیریت نشده، CLRLoad این کار را از طریق انجام می دهد CorBindToRuntimeEx Windows API در انواع 32 بیتی یا CLRCreateInstance تماس در انواع 64 بیتی.

PowHeartBeat: درب پشتی PowerShell

PowHeartBeat یک درب پشتی با امکانات کامل است که در PowerShell نوشته شده است و با استفاده از تکنیک های مختلف مانند فشرده سازی، رمزگذاری و رمزگذاری مبهم شده است. بر اساس تله متری ESET، ما معتقدیم که PowHeartBeat جایگزین CLRLoad در کمپین های اخیر Worok به عنوان ابزار مورد استفاده برای راه اندازی PNGLoad شده است.

اولین لایه کد درب پشتی شامل چند تکه کد پاورشل با کد base64 است. هنگامی که محموله بازسازی شد، از طریق آن اجرا می شود IEX. پس از رمزگشایی، لایه دیگری از کد مبهم اجرا می شود که در شکل 3 می بینیم.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 3. گزیده ای از تابع اصلی رمزگشایی شده لایه دوم PowHeartBeat

لایه دوم Backdoor first base64 لایه بعدی کد خود را رمزگشایی می کند که سپس با رمزگشایی می شود. DES سه گانه (حالت CBC). پس از رمزگشایی، این کد با استفاده از کد از حالت فشرده خارج می شود از gzip الگوریتم، بنابراین لایه سوم کد PowerShell، که درب پشتی واقعی است، ارائه می شود. این به دو بخش اصلی تقسیم می شود: پیکربندی، و کنترل دستورات درب پشتی.

لایه اصلی کد درب پشتی نیز در PowerShell نوشته شده است و از HTTP یا ICMP برای ارتباط با سرور C&C استفاده می کند. همانطور که در شکل 4 نشان داده شده است کار می کند.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 4. عملکرد PowHeartBeat

پیکر بندی

این پیکربندی شامل چندین فیلد، از جمله شماره نسخه، پیکربندی پروکسی اختیاری، و آدرس C&C است. جدول 1 معانی فیلدهای پیکربندی را در نسخه های مختلفی که مشاهده کرده ایم توضیح می دهد.

جدول 1. معانی فیلد پیکربندی

نام زمینه توضیحات:
nouse / ikuyrtydyfg
(سایر نمونه ها)
بلااستفاده
شناسه مشتری شناسه مشتری که برای اهداف زیر استفاده می شود:
· به عنوان یک مقدار در هنگام ساخت سربرگ کوکی برای ارتباطات C&C
· به عنوان یک مصنوع رمزنگاری برای رمزگذاری داده های ارسالی.
نسخه شماره نسخه PowHeartBeat.
ExecTimes تعداد اجرای مجاز در هنگام صدور الف RunCmd (فرمان در حال اجرا) فرمان.
عامل کاربر عامل کاربر مورد استفاده برای ارتباطات C&C.
مراجعه مراجعه هدر مورد استفاده برای ارتباطات C&C.
AcceptEncoding بلااستفاده
CookieClientId
CookieTaskId
CookieTerminalId
مقادیر مورد استفاده برای ساخت شیرینی سربرگ برای ارتباطات C&C.
UrlHttps پروتکلی برای استفاده برای ارتباطات C&C.
UrlDomain
نشانی آیپی
دامنه
URL، دامنه(ها)، یا آدرس IP که به عنوان سرور C&C استفاده می شود. اگر دامنه خالی نیست، به جای آن انتخاب شده است نشانی آیپی. در موارد دیگر، نشانی آیپی گرفته شده است.
UrlSendHeartBeat مسیر URL زمانی که درپشتی از سرور C&C دستور می‌خواهد استفاده می‌شود.
UrlSendResult مسیر URL زمانی که درب پشتی نتایج فرمان را به سرور C&C ارسال می‌کند استفاده می‌شود.
GetUrl URL کامل که توسط PowHeartBeat برای درخواست دستورات از سرور C&C استفاده می شود. این الحاق عناصر URL بالا است.
PutUrl مثل GetUrl اما برای ارسال نتایج فرمان به سرور C&C استفاده می شود.
مسیر فعلی بلااستفاده
ProxyEnableFlag پرچم را نشان می دهد که آیا درب پشتی برای برقراری ارتباط با سرور C&C باید از پروکسی استفاده کند یا خیر.
Proxymsg آدرس پروکسی برای استفاده از if ProxyEnableFlag تنظیم شده است $راست.
فاصله زمان خواب اسکریپت بین درخواست های GET بر حسب ثانیه.
BasicConfigPath مسیر یک فایل پیکربندی اختیاری حاوی آپ تایم, زمان توقف, DefaultIntervalو دامنه. اگر فایل موجود باشد، این مقادیر لغو می شوند.
آپ تایم زمانی از روز که درب پشتی شروع به کار می کند، به این معنی که شروع به درخواست GET به سرور C&C می کند.
زمان توقف زمانی از روز که درب پشتی می‌تواند کار کند، یعنی زمانی که درخواست‌ها به سرور C&C را متوقف می‌کند.
DomainIndex فهرست نام دامنه فعلی برای استفاده برای ارتباطات با سرور C&C. در صورتی که درخواستی پیغام خطایی متفاوت از 304 ("تغییر نشده")، DomainIndex افزایش یافته است.
SecretKey کلید مورد استفاده برای رمزگشایی/رمزگذاری پیکربندی. پیکربندی با XOR چند بایتی رمزگذاری شده است.
IfLog بلااستفاده
IfLogFilePath پرچم را نشان می دهد که آیا ورود به سیستم فعال است یا خیر.
مسیر ورود مسیر فایل لاگ.
پروکسی فایل مسیر فایل پیکربندی پروکسی اختیاری. اگر خالی باشد یا در سیستم فایل یافت نشود، درب پشتی تنظیمات پراکسی کاربر را از مقدار رجیستری بازیابی می کند. HKCUSoftwareMicrosoftWindowsCurrentVersionتنظیماتاینترنتProxyServer .
IfConfig پرچمی که نشان می دهد از فایل پیکربندی استفاده کنید یا خیر.

شکل 5 نمونه ای از پیکربندی استخراج شده از نمونه PowHeartBeat را نشان می دهد (SHA-1: 757ABA12D04FD1167528FDD107A441D11CD8C427).

شکل 5. مثال پیکربندی

رمزگذاری داده ها

PowHeartBeat سیاهههای مربوط و محتوای فایل پیکربندی اضافی را رمزگذاری می کند.

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

ارتباطات C&C

PowHeartBeat تا نسخه 2.4 از HTTP برای ارتباطات C&C استفاده کرد و سپس به ICMP تغییر مکان داد. در هر دو مورد، ارتباط رمزگذاری نشده است.

HTTP

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

فرمت درخواست های GET به شرح زیر است:

توجه داشته باشید که درخواست با استفاده از فیلدهای پیکربندی همنام ساخته شده است.

در پاسخ سرور C&C، سومین بایت محتوا، شناسه فرمان است که دستور پردازش شده توسط درب پشتی را نشان می دهد. ما آن را صدا می زنیم command_id. محتوای باقی مانده از پاسخ به عنوان یک آرگومان به دستور پردازش شده ارسال می شود. این محتوا با الگوریتم نشان داده شده در شکل 6 رمزگذاری شده است. شناسه وظیفه مقدار کوکی نامگذاری شده است CookieTaskIdمقدار از پیکربندی.

شکل 6. الگوریتم رمزگذاری داده های محتوا را درخواست می کند

پاسخ سرور C&C همچنین حاوی کوکی دیگری است که نام آن توسط درب پشتی مشخص شده است CookieTerminalId متغیر پیکربندی مقدار این کوکی در درخواست POST از درب پشتی تکرار می شود و نباید خالی باشد. پس از اجرای دستور Backdoor، PowHeartBeat نتیجه را به عنوان یک درخواست POST به سرور C&C ارسال می کند. نتیجه به صورت فایلی ارسال می شود که نام آن است .png.

ICMP

با شروع از نسخه 2.4 PowHeartBeat، HTTP با ICMP جایگزین شد، بسته هایی را با فاصله زمانی شش ثانیه ارسال کرد و تکه تکه نشده. ارتباط از طریق ICMP به احتمال زیاد راهی برای فرار از تشخیص است.

هیچ تغییر عمده ای در نسخه های 2.4 به بعد وجود ندارد، اما ما متوجه تغییراتی در کد شدیم:

  • PowHeartBeat یک بسته ضربان قلب را در هر حلقه که شامل رشته است می فرستد ABCDEFGHIJKLMNOPQRSTUVWXYZ، قبل از درخواست دستور. این به سرور C&C اطلاع می دهد که درب پشتی آماده دریافت دستورات است.
  • درخواست هایی برای دریافت دستورات انجام شده توسط درب پشتی حاوی رشته هستند abcdefghijklmnop.

بسته های ضربان قلب دارای فرمتی هستند که در شکل 7 توضیح داده شده است.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 7. طرح بندی بسته ضربان قلب

تفاوت میان شناسه مشتری و پرچم مشتری است که شناسه مشتری در هر نمونه متفاوت است در حالی که پرچم مشتری در هر نمونه ای که از ICMP استفاده می کند یکسان است. پرچم ضربان قلب نشان می دهد که در پشتی در حال ارسال ضربان قلب است. پاسخ سرور C&C دارای فرمتی است که در شکل 8 توضیح داده شده است.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 8. طرح پاسخ سرور C&C

پرچم اینجا نشان می دهد که آیا دستوری برای صدور به درب پشتی وجود دارد یا خیر. درخواست‌ها برای دریافت دستورات دارای فرمتی هستند که در شکل 9 توضیح داده شده است.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 9. طرح بندی درخواست ها برای دریافت دستورات

توجه داشته باشید که حالت ICMP درب پشتی امکان دریافت مقدار نامحدودی از داده ها را می دهد که به تکه ها و متغیرها تقسیم می شوند. طول داده, موقعیت فعلی و طول کل برای پیگیری داده های ارسالی استفاده می شود. پاسخ ها به این درخواست ها دارای فرمتی هستند که در شکل 10 توضیح داده شده است.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 10. طرح بندی پاسخ ها به درخواست ها برای دریافت دستورات

همانطور که در پاسخ های HTTP، شناسه فرمان سومین بایت است داده ها.

پس از هفت پاسخ متوالی ICMP با محتوای خالی یا با فرمت متناقض، انتقال بین درب پشتی و سرور C&C تمام شده در نظر گرفته می شود.

در مورد درخواست ارسال نتیجه دستور صادر شده به سرور C&C، حالت سرور برای حالت پست تغییر می کند و رشته نهایی (abcdefghijklmnop) برای داده های نتیجه تغییر می کند.

دستورات درب پشتی

PowHeartBeat دارای قابلیت های مختلفی از جمله اجرای دستور/فرایند و دستکاری فایل است. جدول 2 تمام دستورات پشتیبانی شده توسط نمونه های مختلف تجزیه و تحلیل شده را فهرست می کند.

جدول 2. توضیحات فرمان PowHeartBeat

نام شناسه فرمان توضیحات:
کلیدهای Cmd 0x02 یک دستور PowerShell را اجرا کنید.
سابق 0x04 یک دستور را به صورت a اجرا کنید روند.
آپلود فایل 0x06 فایلی را در دستگاه قربانی آپلود کنید. محتوای فایل به صورت gzip فشرده شده است.
دانلود فایل 0x08 یک فایل را از ماشین قربانی دانلود کنید و مسیر فایل، طول فایل، زمان ایجاد، زمان دسترسی و محتوای فایل را به سرور C&C برگردانید.
FileView 0x0A اطلاعات فایل یک دایرکتوری خاص را دریافت کنید، به ویژه:
· نام فایل ها
· ویژگی های فایل
· آخرین زمان نوشتن
· محتویات فایل
حذف فایل 0x0C یک فایل را حذف کنید.
تغییر نام فایل 0x0E تغییر نام یا انتقال یک فایل
ChangeDir 0x10 محل کار فعلی درب پشتی را تغییر دهید.
اطلاعات 0x12 یک دسته از اطلاعات را با توجه به آرگومان مشخص شده دریافت کنید:
· "اطلاعات اولیه": شناسه مشتری, نسخه، نام میزبان، آدرس های IP، explorer.exe اطلاعات نسخه و اندازه، سیستم عامل (معماری و پرچم نشان می دهد که آیا دستگاه سرور است)، فاصله، فهرست فعلی، اطلاعات درایو (نام، نوع، فضای خالی و اندازه کل)، زمان فعلی
· "اطلاعات بازه زمانی": فاصله و زمان فعلی
· "اطلاعات دامنه": محتوای فایل پیکربندی رمزگشایی شده
پیکربندی 0x14 محتوای فایل پیکربندی را به روز کنید و پیکربندی را دوباره بارگیری کنید.
N / A 0x63 خروجی درب پشتی

در صورت بروز خطا در سمت درب پشتی، درب پشتی از یک شناسه فرمان خاص 0x00 در درخواست POST به سرور C&C استفاده می کند، بنابراین نشان دهنده یک خطا است.

توجه داشته باشید که قبل از ارسال مجدد اطلاعات به سرور C&C، داده ها با gzip فشرده می شوند.

PNGLoad: لودر Steganographic

PNGLoad مرحله دوم است که توسط Worok بر روی سیستم‌های در معرض خطر مستقر شده و طبق تله‌متری ESET، توسط CLRLoad یا PowHeartBeat بارگیری می‌شود. در حالی که هیچ کدی در PowHeartBeat نمی‌بینیم که مستقیماً PNGLoad را بارگیری کند، درب پشتی قابلیت دانلود و اجرای بارهای اضافی از سرور C&C را دارد، که احتمالاً چگونه مهاجمان PNGLoad را در سیستم‌های در معرض خطر PowHeartBeat مستقر کرده‌اند. PNGLoad بارگیری است که از بایت های فایل های PNG برای ایجاد یک بار برای اجرا استفاده می کند. این یک .NET اجرایی 64 بیتی است - مبهم شده است راکتور دات نت - که به عنوان یک نرم افزار قانونی جلوه می کند. به عنوان مثال، شکل 11 سرصفحه های CLR نمونه ای را نشان می دهد که به عنوان یک DLL WinRAR ظاهر می شود.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 11. نمونه ای از یک DLL جعلی WinRAR

پس از رفع ابهام، فقط یک کلاس وجود دارد. در این کلاس، یک وجود دارد مسیر اصلی ویژگی حاوی مسیر دایرکتوری است که درپشتیبان، از جمله زیر شاخه های آن، برای فایل هایی با a جستجو می کند فعلی پسوند، همانطور که در شکل 12 نشان داده شده است.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 12. فعلی لیست فایل

هر یک فعلی فایل واقع شده توسط این جستجو از مسیر اصلی سپس برای محتوای نهفته نگارانه بررسی می شود. ابتدا، کم‌اهمیت‌ترین بیت از مقادیر R (قرمز)، G (سبز)، B (آبی) و A (آلفا) هر پیکسل واکشی شده و در یک بافر جمع می‌شود. اگر هشت بایت اول آن بافر با عدد جادویی که در شکل 13 مشاهده می شود مطابقت داشته باشد و مقدار هشت بایتی بعدی، کنترل، غیر تهی باشد، فایل از بررسی محتوای استگانوگرافی PNGLoad عبور می کند. برای چنین فایل‌هایی، پردازش با استفاده از کلید ذخیره‌شده در PNGLoad با رمزگشایی باقیمانده بافر با XOR چند بایتی ادامه می‌یابد. SecretKeyBytes ویژگی، و سپس بافر رمزگشایی شده توسط gzip از حالت فشرده خارج می شود. انتظار می رود نتیجه یک اسکریپت PowerShell باشد که بلافاصله اجرا می شود.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

شکل 13. فرمت بافر PNGLoad از پردازش ایجاد می شود فعلی فایل ها

جالب اینجاست که عملیات انجام شده توسط PNGLoad در فایلی ثبت می شود که مسیر آن در متغیر ذخیره می شود. LogFilePath. عملیات تنها زمانی ثبت می شود که فایلی وجود داشته باشد که مسیر آن توسط متغیر داخلی مشخص شده باشد IfLogFilePath.

ما موفق به دریافت نمونه نشده ایم فعلی فایل همراه با PNGLoad استفاده می شود، اما نحوه عملکرد PNGLoad نشان می دهد که باید با فایل های PNG معتبر کار کند. برای پنهان کردن بار مخرب، Worok از اشیاء Bitmap در سی شارپ استفاده می‌کند، که فقط اطلاعات پیکسل را از فایل‌ها می‌گیرند، نه ابرداده فایل. این بدان معناست که Worok می‌تواند محموله‌های مخرب خود را در تصاویر PNG معتبر و بی‌ضرر مخفی کند و در نتیجه در معرض دید پنهان شود.

نتیجه

Worok یک گروه جاسوسی سایبری است که ابزارهای خود را توسعه می دهد و همچنین از ابزارهای موجود برای به خطر انداختن اهداف خود استفاده می کند. سرقت اطلاعات از قربانیان آنها چیزی است که ما معتقدیم اپراتورها به دنبال آن هستند زیرا آنها بر نهادهای با مشخصات بالا در آسیا و آفریقا تمرکز می کنند و بخش های مختلف، اعم از خصوصی و دولتی را هدف قرار می دهند، اما با تاکید خاص بر نهادهای دولتی. زمان‌های فعالیت و مجموعه ابزار نشان‌دهنده ارتباط احتمالی با TA428 است، اما ما این ارزیابی را با اطمینان کم انجام می‌دهیم. مجموعه ابزار سفارشی آنها شامل دو لودر – یکی در C++ و دیگری در C#.NET – و یک درب پشتی PowerShell است. در حالی که دید ما محدود است، ما امیدواریم که روشن کردن این گروه باعث تشویق سایر محققان به اشتراک گذاری اطلاعات در مورد این گروه شود.

برای هر گونه سوال در مورد تحقیقات ما منتشر شده در WeLiveSecurity، لطفا با ما تماس بگیرید gefintel@eset.com.

ESET Research اکنون همچنین گزارش‌های اطلاعاتی خصوصی APT و فیدهای داده را ارائه می‌دهد. برای هرگونه سوال در مورد این سرویس، به آدرس زیر مراجعه کنید ESET Threat Intelligence احتمال برد مراجعه کنید.

IOCs

فایل ها

SHA-1 نام فایل نام تشخیص ESET اظهار نظر
3A47185D0735CDECF4C7C2299EB18401BFB328D5 خط PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0003.
27ABB54A858AD1C1FF2863913BDA698D184E180D خط PowerShell/PowHeartBeat.A PowHeartBeat 2.4.3.0003.
678A131A9E932B9436241402D9727AA7D06A87E3 خط PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0003.
757ABA12D04FD1167528FDD107A441D11CD8C427 خط PowerShell/PowHeartBeat.B PowHeartBeat 2.1.3.0003.
54700A48D934676FC698675B4CA5F712C0373188 خط PowerShell/PowHeartBeat.A PowHeartBeat 1.1.3.0002.
C2F53C138CB1B87D8FC9253A7088DB30B25389AF خط PowerShell/PowHeartBeat.A PowHeartBeat 1.1.3.0002.
C2F1954DE11F72A46A4E823DE767210A3743B205 tmp.ps1 PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0004.
CE430A27DF87A6952D732B4562A7C23BEF4602D1 tmp.ps1 PowerShell/PowHeartBeat.A PowHeartBeat 2.1.3.0004.
EDE5AB2B94BA85F28D5EE22656958E4ECD77B6FF خط PowerShell/PowHeartBeat.A PowHeartBeat 2.4.3.0003.
4721EEBA13535D1EE98654EFCE6B43B778F13126 vix64.dll MSIL/PNGLoader.A PNGLoader.
728A6CB7A150141B4250659CF853F39BFDB7A46C RarExtMgt.dll MSIL/PNGLoader.A PNGLoader.
864E55749D28036704B6EA66555A86527E02AF4A Jsprofile.dll MSIL/PNGLoader.A PNGLoader.
8DA6387F30C584B5FD3694A99EC066784209CA4C vssxml.dll MSIL/PNGLoader.A PNGLoader.
AA60FB4293530FBFF00D200C0D44EEB1A17B1C76 xsec_1_5.dll MSIL/PNGLoader.A PNGLoader.
B2EAEC695DD8BB518C7E24C4F37A08344D6975BE msvbvm80.dll MSIL/PNGLoader.A PNGLoader.
CDB6B1CAFEE098615508F107814179DEAED1EBCF lucenelib.dll MSIL/PNGLoader.A PNGLoader.
4F9A43E6CF37FF20AE96E564C93898FDA6787F7D vsstrace.dll Win64/CLRLoad.C CLRLload.
F181E87B0CD6AA4575FD51B9F868CA7B27240610 ncrypt.dll Win32/CLRLoad.A CLRLload.
4CCF0386BDE80C339EFE0CC734CB497E0B08049C ncrypt.dll Win32/CLRLoad.A CLRLload.
5CFC0D776AF023DCFE8EDED5CADA03C6D7F9C244 wlbsctrl.dll Win64/CLRLoad.E CLRLload.
05F19EBF6D46576144276090CC113C6AB8CCEC08 wlbsctrl.dll Win32/CLRLoad.A CLRLload.
A5D548543D3C3037DA67DC0DA47214B2C2B15864 secur32.dll Win64/CLRLoad.H CLRLload.
CBF42DCAF579AF7E6055237E524C0F30507090F3 dbghelp.dll Win64/CLRLoad.C CLRLload.

مسیرهای فایل

برخی از مسیر اصلی, LogFilePath و IfLogFilePath مقادیری که در نمونه های PNGLoad با آنها مواجه شدیم:

مسیر اصلی LogFilePath IfLogFilePath
C: برنامه FilesVMwareVMware Tools C:Program FilesVMwareVMware ToolsVMware VGAuthreadme.txt C:Program FilesVMwareVMware ToolsVMware VGAuthVMWSU_V1_1.dll
ج: فایل های برنامه WinRar ج: فایل های برنامهWinRarrarinstall.log ج: برنامه FilesWinRardes.dat
ج: برنامه FilesUltraViewer ج: برنامه FilesUltraViewer‌CopyRights.dat C:Program FilesUltraVieweruvcr.dll

شبکه ارتباطی

دامنه IP
هیچ 118.193.78[.]22
هیچ 118.193.78[.]57
airplane.travel-commercials[.] آژانس 5.183.101[.]9
central.suhypercloud[.]org 45.77.36[.]243

موتکس ها

در نمونه‌های CLRLoad، نام‌های mutex که با آن‌ها مواجه شدیم عبارتند از:

aB82UduGX0EX
ad8TbUIZl5Ga
Mr2PJVxbIBD4
oERiQtKLgPgK
U37uxsCsA4Xm
Wo0r0KGWhYGO
xBUjQR2vxYTz
zYCLBWekRX3t
3c3401ad-e77d-4142-8db5-8eb5483d7e41
9xvzMsaWqxMy

فهرست جامعی از شاخص‌های سازش (IoCs) و نمونه‌ها را می‌توانید در اینجا پیدا کنید مخزن GitHub ما.

تکنیک های MITER ATT&CK

این جدول با استفاده از 11 نسخه چارچوب MITER ATT&CK.

تاکتیک ID نام توضیحات:
شناسایی T1592.002 جمع آوری اطلاعات میزبان قربانی: نرم افزار PowHeartBeat جمع می شود explorer.exe اطلاعات.
T1592.001 اطلاعات میزبان قربانی را جمع آوری کنید: سخت افزار PowHeartBeat اطلاعاتی در مورد درایوها جمع آوری می کند.
T1590.005 اطلاعات شبکه قربانی را جمع آوری کنید: آدرس های IP PowHeartBeat آدرس های IP رایانه در معرض خطر را جمع آوری می کند.
توسعه منابع T1583.004 زیرساخت به دست آوردن: سرور Worok از سرورهای C&C خود استفاده می کند.
T1588.002 به دست آوردن قابلیت ها: ابزار Worok چندین ابزار در دسترس عموم را بر روی ماشین های در معرض خطر مستقر کرد.
T1583.001 زیرساخت ها را بدست آورید: دامنه ها Worok دامنه هایی را برای تسهیل ارتباطات C&C و مرحله بندی ثبت کرده است.
T1588.005 به دست آوردن قابلیت ها: بهره برداری ها Worok از آسیب پذیری ProxyShell استفاده کرده است.
T1587.001 توسعه قابلیت ها: بدافزار Worok بدافزار خود را توسعه داده است: CLRLoad، PNGLoad، PowHeartBeat.
T1587.003 توسعه قابلیت ها: گواهی های دیجیتال Worok گواهینامه های Let's Encrypt SSL را به منظور فعال کردن احراز هویت متقابل TLS برای بدافزار ایجاد کرده است.
اعدام T1059.001 مترجم دستورات و اسکریپت: PowerShell PowHeartBeat در PowerShell نوشته شده است.
اصرار T1505.003 جزء نرم افزار سرور: Web Shell Worok از پوسته وب استفاده می کند ری جورج.
فرار از دفاع T1140 Deobfuscate/Decode فایل ها یا اطلاعات Worok از طرح‌های سفارشی مبتنی بر XOR برای رمزگذاری رشته‌ها و گزارش‌ها در PowHeartBeat، PNGLoad و CLRLoad استفاده می‌کند.
T1036.005 پنهان کردن: نام یا مکان قانونی را مطابقت دهید نمونه های PNGLoad در دایرکتوری های VMWare با ظاهر قانونی مستقر می شوند.
دسترسی به اعتبار T1003.001 تخلیه اعتبار سیستم عامل: حافظه LSASS Worok از Mimikatz برای حذف اعتبارنامه ها از حافظه LSASS استفاده می کند.
کشف T1082 کشف اطلاعات سیستم PowHeartBeat اطلاعات سیستم عامل را جمع آوری می کند.
T1083 کشف فایل و دایرکتوری PowHeartBeat می تواند فایل ها و دایرکتوری ها را فهرست کند.
T1046 کشف خدمات شبکه Worok استفاده می کند NbtScan برای به دست آوردن اطلاعات شبکه در مورد ماشین های در معرض خطر.
T1124 کشف زمان سیستم PowHeartBeat اطلاعات زمان قربانی را جمع آوری می کند.
مجموعه T1005 داده ها از سیستم محلی PowHeartBeat داده ها را از سیستم محلی جمع آوری می کند.
T1560.002 آرشیو داده های جمع آوری شده: بایگانی از طریق کتابخانه PowHeartBeat gzip داده ها را قبل از ارسال به سرور C&C فشرده می کند.
دستور و کنترل T1071.001 پروتکل لایه کاربردی: پروتکل های وب برخی از انواع PowHeartBeat از HTTP به عنوان پروتکل ارتباطی با سرور C&C استفاده می کنند.
T1090.001 پروکسی: پروکسی داخلی PowHeartBeat پیکربندی پروکسی را در دستگاه قربانی کنترل می کند.
T1001.002 مبهم سازی داده ها: استگانوگرافی PNGLoad مقادیر پیکسل را از آن استخراج می کند فعلی فایل‌هایی برای بازسازی بارها
T1573.002 کانال رمزگذاری شده: رمزنگاری نامتقارن PowHeartBeat ارتباطات HTTPS با سرور C&C را مدیریت می کند.
T1095 پروتکل لایه غیر کاربردی برخی از انواع PowHeartBeat از ICMP به عنوان پروتکل ارتباطی با سرور C&C استفاده می کنند.
T1132.001 رمزگذاری داده ها: رمزگذاری استاندارد Worok از رمزگذاری XOR در PowHeartBeat و PNGLoad استفاده می کند.
T1132.002 رمزگذاری داده ها: رمزگذاری غیر استاندارد Worok از الگوریتم های رمزگذاری XOR استفاده می کند که از نمک اضافی استفاده می کند.
اکسفیلتراسیون T1041 خروج از کانال C2 PowHeartBeat از کانال ارتباطی C&C خود برای استخراج اطلاعات استفاده می کند.

Worok: تصویر بزرگ اطلاعات PlatoBlockchain Intelligence. جستجوی عمودی Ai.

تمبر زمان:

بیشتر از ما امنیت زندگی می کنیم