WinorDLL64: یک درب پشتی از زرادخانه عظیم Lazarus؟

WinorDLL64: یک درب پشتی از زرادخانه عظیم Lazarus؟

گره منبع: 1975596

منطقه هدف، و همپوشانی در رفتار و کد، نشان می دهد که این ابزار توسط گروه بدنام APT همسو با کره شمالی استفاده می شود.

محققان ESET یکی از محموله‌های محموله را کشف کرده‌اند دانلودر Wslink که در سال 2021 کشف کردیم. ما این محموله را WinorDLL64 بر اساس نام فایل آن نامگذاری کردیم. WinorDLL64.dll. Wslink که نام فایل را داشت WinorLoaderDLL64.dll، لودری برای باینری های ویندوز است که بر خلاف دیگر لودرهای این چنینی به صورت سرور اجرا می شود و ماژول های دریافتی را در حافظه اجرا می کند. همانطور که از عبارت نشان می دهد، یک لودر به عنوان ابزاری برای بارگذاری یک محموله یا بدافزار واقعی بر روی سیستم از قبل در معرض خطر قرار می گیرد. بردار اولیه سازش Wslink شناسایی نشده است.

بار ناشناخته اولیه Wslink اندکی پس از انتشار پست وبلاگ ما در VirusTotal از کره جنوبی آپلود شد و یکی از قوانین YARA ما را بر اساس نام منحصر به فرد Wslink مشاهده کرد. WinorDLL64. در مورد Wslink، تله متری ESET تنها چند تشخیص را دیده است - در اروپای مرکزی، آمریکای شمالی و خاورمیانه.

La WinorDLL64 payload به عنوان یک درب پشتی عمل می کند که به طور مشخص اطلاعات سیستم گسترده ای را به دست می آورد، ابزارهایی را برای دستکاری فایل ها، مانند استخراج، بازنویسی، و حذف فایل ها و اجرای دستورات اضافی فراهم می کند. جالب اینجاست که از طریق اتصالی که قبلاً توسط بارگذار Wslink ایجاد شده بود ارتباط برقرار می کند.

در سال 2021، ما هیچ داده ای پیدا نکردیم که نشان دهد Wslink ابزاری از یک عامل تهدید شناخته شده است. با این حال، پس از تجزیه و تحلیل گسترده ای از محموله، ما نسبت داده ایم WinorDLL64 به گروه Lazarus APT با اطمینان کم بر اساس منطقه مورد نظر و همپوشانی در رفتار و کد با نمونه های Lazarus شناخته شده.

این گروه بدنام همسو با کره شمالی که حداقل از سال 2009 فعال است، مسئول حوادث مهمی مانند هک Sony Pictures Entertainment و ده ها میلیون دلار سایبرهیست ها در سال 2016از WannaCryptor شیوع (معروف به WannaCry) در سال 2017 و سابقه طولانی حملات مخرب علیه زیرساخت های عمومی و حیاتی کره جنوبی حداقل از سال 2011. US-CERT و FBI با این گروه تماس می گیرند کبرای پنهان.

بر اساس ما دانش گسترده از فعالیت ها و عملیات این گروه، ما معتقدیم که لازاروس متشکل از یک تیم بزرگ است که به طور سیستماتیک سازماندهی شده، به خوبی آماده شده است و از چندین زیر گروه تشکیل شده است که از مجموعه ابزار بزرگی استفاده می کنند. سال گذشته ما ابزار لازاروس را کشف کرد که از CVE-2021-21551 آسیب پذیری برای هدف قرار دادن کارمند یک شرکت هوافضا در هلند و یک روزنامه نگار سیاسی در بلژیک. این اولین سوء استفاده ثبت شده از آسیب پذیری بود. در ترکیب، این ابزار و آسیب‌پذیری منجر به کور شدن نظارت بر همه راه‌حل‌های امنیتی در ماشین‌های در معرض خطر شد. ما همچنین توضیحات گسترده ای در مورد آن ارائه کردیم ساختار ماشین مجازی در نمونه های Wslink استفاده شده است.

این وبلاگ انتساب WinorDLL64 به Lazarus را توضیح می‌دهد و تحلیلی از بارگذاری ارائه می‌دهد.

پیوندهایی به لازاروس

ما همپوشانی هایی را در رفتار و کد با نمونه های Lazarus کشف کرده ایم عملیات GhostSecret و ایمپلنت بانک شات توصیف شده توسط McAfee. شرح ایمپلنت‌ها در مقاله‌های GhostSecret و Bankshot حاوی همپوشانی‌هایی در عملکرد WinorDLL64 است و ما در نمونه‌ها همپوشانی کدهایی را پیدا کردیم. در این وبلاگ ما فقط از FE887FCAB66D7D7F79F05E0266C0649F0114BA7C نمونه ای از GhostSecret برای مقایسه با WinorDLL64 (1BA443FDE984CEE85EBD4D4FA7EB1263A6F1257F) مگر اینکه طور دیگری مشخص شده باشد.

جزئیات زیر حقایق پشتیبان انتساب کم اعتماد ما به لازاروس را خلاصه می کند:

1. بزه دیده شناسی

  • محققان همکار از AhnLab قربانیان کره جنوبی Wslink را در تله متری خود تأیید کردند، که با توجه به اهداف سنتی Lazarus و اینکه ما فقط چند ضربه را مشاهده کرده ایم، یک شاخص مرتبط است.

شکل 1. قربانی گزارش شده کره جنوبی، جایی که mstoned7 محقق اهل Ahnlab است

2. بدافزار

  • آخرین نمونه GhostSecret گزارش شده توسط McAfee (FE887FCAB66D7D7F79F05E0266C0649F0114BA7C) از فوریه 2018 است. ما اولین نمونه Wslink را در اواخر سال 2018 مشاهده کردیم و محققان همکار در آگوست 2018 بازدیدهایی را گزارش کردند که پس از انتشار ما فاش کردند. از این رو، این نمونه ها با فاصله زمانی نسبتاً کوتاهی از هم مشاهده شدند.
  • La هدرهای غنی از PE نشان می دهد که همان محیط توسعه و پروژه های با اندازه مشابه در چندین نمونه شناخته شده دیگر Lazarus استفاده شده است (به عنوان مثال، 70DE783E5D48C6FBB576BC494BAF0634BC304FD6; 8EC9219303953396E1CB7105CDB18ED6C568E962). ما این همپوشانی را با استفاده از قوانین زیر دریافتیم که فقط این نمونه‌های Wslink و Lazarus را پوشش می‌دهد، که یک شاخص با وزن کم است. ما آنها را آزمایش کردیم بازیابی ویروس توتال و مجموعه فایل داخلی ما.

rich_signature.length == 80 و
pe.rich_signature.toolid(175, 30319) == 7 و
pe.rich_signature.toolid(155, 30319) == 1 و
pe.rich_signature.toolid(158, 30319) == 10 و
pe.rich_signature.toolid(170, 30319) >= 90 و
pe.rich_signature.toolid(170, 30319) <= 108

این قانون را می توان به نماد زیر ترجمه کرد که توسط VirusTotal قابل خواندن و استفاده تر است، جایی که می توان نسخه محصول و شناسه ساخت را مشاهده کرد (VS2010 build 30319)، تعداد و نوع فایل های منبع/شیء مورد استفاده ([LTCG C++] جایی که LTCG مخفف Link Time Code Generation است، [ASM], [C])و تعداد صادرات ([EXP]) در قاعده:

[LTCG C++] VS2010 build 30319 count=7
[EXP] VS2010 build 30319 count=1
[ASM] VS2010 build 30319 count=10
[C] VS2010 build 30319 در [90 .. 108]

  • مقاله GhostSecret «یک جزء منحصر به فرد جمع‌آوری داده و نصب ایمپلنت است که به پورت 443 برای اتصالات سرور کنترل ورودی گوش می‌دهد» که علاوه بر این به عنوان یک سرویس اجرا می‌شد، توضیح داد. این توصیف دقیقی از رفتار دانلود کننده Wslink است، جدا از شماره پورت، که می تواند بر اساس پیکربندی متفاوت باشد. به طور خلاصه، حتی اگر پیاده سازی متفاوت است، هر دو یک هدف را دنبال می کنند.
  • لودر توسط Oreans' Code Virtualizer مجازی سازی شده است که یک محافظ تجاری است که استفاده می شود. غالبا توسط لازاروس
  • لودر از MemoryModule کتابخانه برای بارگذاری مستقیم ماژول ها از حافظه. این کتابخانه معمولاً توسط بدافزارها استفاده نمی شود، اما در میان گروه های همسو با کره شمالی مانند Lazarus و Kimsuky بسیار محبوب است.
  • همپوشانی در کد بین WinorDLL64 و GhostSecret که در طول تجزیه و تحلیل خود پیدا کردیم. نتایج و اهمیت در اسناد در جدول 1 فهرست شده است.

جدول 1. شباهت های WinorDLL64 و GhostSecret و اهمیت آنها در نسبت دادن هر دو به یک عامل تهدید

شباهت های دیگر WinorDLL64 و GhostSecret تأثیر
همپوشانی کد در کد مسئول به دست آوردن معماری پردازنده است کم
همپوشانی کد در دستکاری دایرکتوری فعلی کم
همپوشانی کد در دریافت لیست فرآیند کم
همپوشانی کد در ارسال فایل کم
همپوشانی رفتار در فرآیندهای فهرست بندی کم
همپوشانی رفتار در دستکاری فهرست فعلی کم
همپوشانی رفتار در فهرست فایل و فهرست کم
همپوشانی رفتار در حجم های فهرست کم
همپوشانی رفتار در خواندن/نوشتن فایل ها کم
همپوشانی رفتار در ایجاد فرآیندها کم
رفتار قابل توجهی در حذف امن فایل ها همپوشانی دارد کم
همپوشانی رفتار قابل توجهی در خاتمه فرآیندها کم
همپوشانی رفتار قابل توجهی در جمع آوری اطلاعات سیستم کم

همپوشانی کد در عملکرد ارسال فایل در شکل 2 و شکل 3 مشخص شده است.

شکل 2. GhostSecret ارسال یک فایل

شکل 3. Wslink در حال ارسال یک فایل

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

WinorDLL64 به عنوان یک درب پشتی عمل می کند که به طور مشخص اطلاعات سیستم گسترده ای را به دست می آورد، ابزاری برای دستکاری فایل ها فراهم می کند و دستورات اضافی را اجرا می کند. جالب اینجاست که از طریق یک اتصال TCP که قبلاً توسط لودر آن ایجاد شده بود ارتباط برقرار می کند و از برخی از توابع لودر استفاده می کند.

شکل 4. تجسم ارتباط Wslink

Backdoor یک DLL با یک صادرات بدون نام است که یک پارامتر را می پذیرد - ساختاری برای ارتباط که قبلاً در ما توضیح داده شده است. پست وبلاگ قبلی. این ساختار شامل یک زمینه TLS - سوکت، کلید، IV - و تماس‌های برگشتی برای ارسال و دریافت پیام‌های رمزگذاری شده با AES-CBC 256 بیتی است که WinorDLL64 را قادر می‌سازد تا داده‌ها را به طور ایمن با اپراتور از طریق یک اتصال از قبل ایجاد شده مبادله کند.

حقایق زیر ما را به این باور می رساند که با اطمینان بالا باور کنیم که کتابخانه در واقع بخشی از Wslink است:

  • ساختار منحصر به فرد در همه جا به روش مورد انتظار استفاده می شود، به عنوان مثال، زمینه TLS و سایر پارامترهای معنی دار به ترتیب پیش بینی شده برای تماس های صحیح ارائه می شوند.
  • نام DLL است WinorDLL64.dll و اسم Wslink بود WinorLoaderDLL64.dll.

WinorDLL64 چندین دستور را می پذیرد. شکل 5 حلقه ای را نشان می دهد که دستورات را دریافت و مدیریت می کند. هر دستور به یک شناسه منحصر به فرد محدود می شود و پیکربندی را می پذیرد که شامل پارامترهای اضافی است.

شکل 5. بخش اصلی حلقه دریافت فرمان در پشتی

لیست دستورات با برچسب های ما در شکل 6 آمده است.

شکل 6. لیست دستورات

جدول 2 شامل خلاصه ای از دستورات WinorDLL64 است که در آن دسته بندی های اصلاح شده و قدیمی به رابطه با عملکرد GhostSecret مستند شده قبلی اشاره دارد. ما فقط تغییرات قابل توجه در دسته اصلاح شده را برجسته می کنیم.

جدول 2. مروری بر دستورات درب پشتی

دسته بندی شناسه فرمان کارکرد توضیحات:
جدید 0x03 یک دستور PowerShell را اجرا کنید WinorDLL64 به مفسر PowerShell دستور می دهد تا بدون محدودیت اجرا شود و دستورات را از ورودی استاندارد بخواند. پس از آن، درب پشتی دستور مشخص شده را به مفسر ارسال می کند و خروجی را برای اپراتور ارسال می کند.
0x09 یک دایرکتوری را فشرده و دانلود کنید WinorDLL64 به صورت بازگشتی روی یک دایرکتوری مشخص تکرار می شود. محتوای هر فایل و دایرکتوری به طور جداگانه فشرده شده و در یک فایل موقت نوشته می شود که پس از آن برای اپراتور ارسال می شود و سپس به طور ایمن حذف می شود.
0x0D یک جلسه را قطع کنید یک کاربر مشخص شده که وارد سیستم شده است را از جلسه خدمات دسکتاپ از راه دور کاربر قطع می کند. این دستور همچنین می تواند عملکردهای مختلفی را بر اساس پارامتر انجام دهد.
0x0D لیست جلسات جزئیات مختلفی را در مورد تمام جلسات روی دستگاه قربانی به دست می آورد و آنها را برای اپراتور ارسال می کند. این دستور همچنین می تواند عملکردهای مختلفی را بر اساس پارامتر انجام دهد.
0x0E اندازه گیری زمان اتصال از API ویندوز استفاده می کند GetTickCount برای اندازه گیری زمان لازم برای اتصال به یک میزبان مشخص.
اصلاح شده 0x01 دریافت اطلاعات سیستم اطلاعات جامعی در مورد سیستم قربانی به دست می آورد و آنها را برای اپراتور ارسال می کند.
0x0A فایل ها را به صورت ایمن حذف کنید فایل‌های مشخص‌شده را با بلوکی از داده‌های تصادفی بازنویسی می‌کند، نام هر فایل را به یک نام تصادفی تغییر می‌دهد و در نهایت به‌طور ایمن آنها را یکی یکی حذف می‌کند.
0x0C کشتن فرآیندها تمام فرآیندهایی را که نام آنها با یک الگوی ارائه شده و/یا با یک PID خاص مطابقت دارد خاتمه می دهد.
قدیمی 0x02/0x0B یک فرآیند ایجاد کنید فرآیندی را به عنوان کاربر فعلی یا مشخص شده ایجاد می کند و به صورت اختیاری خروجی آن را برای اپراتور ارسال می کند.
0x05 تنظیم/دریافت دایرکتوری فعلی تلاش برای تنظیم و متعاقباً بدست آوردن مسیر دایرکتوری کاری فعلی.
0x06 فهرست حجم ها روی درایوها از C: به Z: تکرار می شود و نوع درایو و نام حجم را به دست می آورد. این دستور همچنین می تواند عملکردهای مختلفی را بر اساس پارامتر انجام دهد.
0x06 فهرست کردن فایل ها در یک دایرکتوری روی فایل‌ها در فهرست مشخص شده تکرار می‌شود و اطلاعاتی مانند نام‌ها، ویژگی‌ها و غیره را به دست می‌آورد. این دستور همچنین می‌تواند عملکردهای مختلفی را بر اساس پارامتر انجام دهد.
0x07 در یک فایل بنویسید مقدار اعلام شده داده را دانلود و به فایل مشخص شده اضافه می کند.
0x08 از روی یک فایل بخوانید فایل مشخص شده خوانده شده و برای اپراتور ارسال می شود.
0x0C فهرست کردن فرآیندها جزئیات مربوط به تمام فرآیندهای در حال اجرا در دستگاه قربانی را به دست می آورد و همچنین شناسه فرآیند جاری را ارسال می کند.

نتیجه

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

WinorDLL64 شامل یک همپوشانی در محیط توسعه، رفتار و کد با چندین نمونه Lazarus است که نشان می‌دهد ممکن است ابزاری از زرادخانه وسیع این گروه APT هم‌تراز با کره شمالی باشد.

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

IoC ها

SHA-1 نام تشخیص ESET توضیحات:
1BA443FDE984CEE85EBD4D4FA7EB1263A6F1257F Win64/Wslink.A تخلیه حافظه بار کشف شده Wslink WinorDll64.

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

این جدول با استفاده از 12 نسخه چارچوب ATT&CK. ما دوباره به تکنیک های لودر اشاره نمی کنیم، فقط به بار بار اشاره می کنیم.

تاکتیک ID نام توضیحات:
توسعه منابع T1587.001 توسعه قابلیت ها: بدافزار WinorDLL64 یک ابزار سفارشی است.
اعدام T1059.001 مترجم دستورات و اسکریپت: PowerShell WinorDLL64 می تواند دستورات PowerShell دلخواه را اجرا کند.
T1106 API بومی WinorDLL64 می تواند فرآیندهای بیشتری را با استفاده از CreateProcessW و CreateProcessAsUserW API ها
فرار از دفاع T1134.002 دستکاری توکن دسترسی: ایجاد فرآیند با توکن WinorDLL64 می تواند API ها را فراخوانی کند WTSQueryUserToken و CreateProcessAsUserW برای ایجاد یک فرآیند تحت یک کاربر جعل هویت.
T1070.004 حذف اندیکاتور: حذف فایل WinorDLL64 می تواند به طور ایمن فایل های دلخواه را حذف کند.
کشف T1087.001 کشف حساب: حساب محلی WinorDLL64 می‌تواند جلسات را برشمرد و نام کاربران و مشتریان مرتبط را در میان جزئیات دیگر فهرست کند.
T1087.002 کشف حساب: حساب دامنه WinorDLL64 می‌تواند جلسات را برشمرد و نام‌های دامنه مرتبط را فهرست کند - در میان جزئیات دیگر.
T1083 کشف فایل و دایرکتوری WinorDLL64 می‌تواند فهرست‌های فایل و فهرست را دریافت کند.
T1135 کشف اشتراک شبکه WinorDLL64 می تواند درایوهای شبکه مشترک را کشف کند.
T1057 کشف فرآیند WinorDLL64 می تواند اطلاعات مربوط به فرآیندهای در حال اجرا را جمع آوری کند.
T1012 رجیستری پرس و جو WinorDLL64 می تواند رجیستری ویندوز را برای جمع آوری اطلاعات سیستم جستجو کند.
T1082 کشف اطلاعات سیستم WinorDLL64 می تواند اطلاعاتی مانند نام کامپیوتر، سیستم عامل و آخرین نسخه سرویس پک، معماری پردازنده، نام پردازنده و میزان فضای موجود در درایوهای ثابت را به دست آورد.
T1614 کشف موقعیت مکانی سیستم WinorDLL64 می تواند نام کشور پیش فرض قربانی را با استفاده از GetLocaleInfoW API
T1614.001 کشف موقعیت مکانی سیستم: کشف زبان سیستم WinorDLL64 می تواند زبان پیش فرض قربانی را با استفاده از GetLocaleInfoW API
T1016 کشف پیکربندی شبکه سیستم WinorDLL64 می تواند اطلاعات آداپتور شبکه را برشمرد.
T1049 کشف اتصالات شبکه سیستم WinorDLL64 می تواند لیستی از پورت های گوش دادن را جمع آوری کند.
T1033 کشف مالک/کاربر سیستم WinorDLL64 می‌تواند جلسات را برشمرد و نام‌های کاربران، دامنه و کلاینت‌های مرتبط را در میان جزئیات دیگر فهرست کند.
مجموعه T1560.002 آرشیو داده های جمع آوری شده: بایگانی از طریق کتابخانه WinorDLL64 می تواند دایرکتوری ها را با استفاده از فشرده سازی و استخراج کند quicklz کتابخانه
T1005 داده ها از سیستم محلی WinorDLL64 می تواند داده ها را روی دستگاه قربانی جمع آوری کند.
تأثیر T1531 حذف دسترسی به حساب WinorDLL64 می تواند یک کاربر وارد شده را از جلسات مشخص شده جدا کند.

تمبر زمان:

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