متخصصان آزمایشگاه کسپرسکی در ژوئیه 2024، یک بکدور جدید به نام Loki را کشف کردند که در چندین حمله هدفمند مورد استفاده قرار گرفته است. مطالعه یک فایل مخرب و منبع باز نشان داد که بکدور Loki، یک نسخه خصوصی از ایجنتی (agent ) برای فریمورک منبع باز Mythic است.
بیش از ده شرکت روسی که در زمینههای مختلف از مهندسی مکانیک تا پزشکی فعال هستند، مورد حمله بکدور Loki قرار گرفتهاند. محققان این تهدید را Backdoor.Win64.MLoki نامیدند تا آن را از سایر خانوادههای بدافزار با همین نام مانند Loki Bot و Loki Locker متمایز کنند.
فریمورک Mythic
Cody Tomas در سال 2018، یک فریمورک متن باز به نام Apfell را برای فعالیت های پس از بهره برداری سیستمهای macOS هک شده، ایجاد کرد. دو سال بعد، چندین توسعه دهنده به پروژه او ملحق شدند. این فریمورک تبدیل به چند پلتفرم شد و به Mythic تغییر نام داد.
در حالی که Mythic به عنوان ابزاری برای کنترل از راه دور در جریان شبیه سازی حملات سایبری و ارزیابی امنیت سیستم ها ایجاد شده است، می توان از آن برای اهداف مخرب نیز استفاده کرد.
به گفته محققان مهاجمان به طور فزاینده در حال آزمایش و استفاده از فریمورک های مختلف برای کنترل دستگاه قربانیان از راه دور هستند.
Mythic به شما اجازه میدهد تا برای هر پلتفرمی با قابلیتهای لازم برای توسعهدهنده، agent هایی را به هر زبانی ایجاد کنید و این همان چیزی بود که مهاجمان از آن استفاده کردند. آنها یک نسخه خصوصی از agent ی به نام Loki ایجاد نمودند.
جزئیات فنی
بکدور Loki یک نسخه سازگار با Mythic برای فریمورک دیگری به نام Havoc است که تکنیک های مختلفی را برای پیچیده تر کردن تجزیه و تحلیل agent مانند رمزگذاری تصویر در حافظه، فراخوانی غیر مستقیم توابع سیستم API، جستجوی توابع API توسط هش ها و دیگر موارد به ارث برده است.
بکدور Loki برخلاف Havoc به یک لودر و DLL تقسیم می شود که اقدامات اصلی بدافزار را اجرا می کند. هر دو نسخه agent از الگوریتم هش djb2 برای مخفی کردن توابع و دستورات API استفاده میکنند، اگرچه این مورد نیز اندکی در نسخه Mythic پچ شده است.
unsigned long
hash(unsigned char *str)
{
unsigned long hash = 2231;
int c;
while (c = *str++)
hash = ((hash << 5) + hash) + c; /* hash * 33 + c */
return hash;
}
کارکرد لودر
لودر Loki پس از راه اندازی، پکیج حاوی اطلاعات سیستم آلوده مانند نسخه سیستم عامل، IP داخلی، نام کاربری، معماری پردازنده، مسیر فرآیند فعلی و شناسه را تولید میکند و آن را به صورت رمزگذاری شده به سرور فرماندهی و کنترل https://y[.]nsitelecom[.]ru/certcenter ارسال میکند.
سرور در پاسخ به آن یک فایل DLL ارسال میکند که لودر آن را در حافظه دستگاه آلوده قرار داده و پردازش فرمان و ارتباطات بیشتر با C2 در این کتابخانه رخ میدهد.
در ادامه فعالیت لودر در ماه می و جولای مورد بررسی قرار گرفته است.
نسخه ماه می لودر:
MD5 | |
SHA1 | 8326B2B0569305254A8CE9F186863E09605667E7 |
SHA256 | 81801823C6787B737019F3BD9BD53F15B1D09444F0FE95FAD9B568F82CC7A68D |
زمان تدوین: | 13:50 23.05.2024 |
کامپایلر | GNU Binutils 2.31 |
نوع فایل | Windows x64 executable |
اندازه فایل | 92,328 bytes |
نام فایل | смета_27.05.2024.exe |
نسخه ماه جولای لودر:
MD5 | |
SHA1 | 21CDDE4F6916F7E4765A377F6F40A82904A05431 |
SHA256 | FF605DF63FFE6D7123AD67E96F3BC698E50AC5B982750F77BBC75DA8007625BB |
زمان تدوین: | 11:23 25.07.2024 |
کامپایلر | GNU Binutils 2.31 |
نوع فایل | Windows x64 executable |
اندازه فایل | 92,672 bytes |
نام فایل | winit.exe |
نسخه ماه می لودر با نمونه جولای آن اندکی تفاوت دارد. به عنوان مثال، نسخه قبلی از پروتکل protobuf برای سریال سازی (Serialization) داده ها استفاده میکند، در حالی که نسخه جدید تا حدی اصل عملیات Ceos را تکرار میکند.
هر دو نسخه از الگوریتمهای یکسانی برای رمزگذاری دادهها استفاده میکنند. اطلاعات جمع آوری شده ابتدا با الگوریتم AES رمزگذاری میشوند و سپس با استفاده از base64 کدگذاری میگردند. نسخه قدیمی یک کاراکتر UUID را به صورت واضح و رمزگذاری نشده همراه با داده های رمزگذاری شده ارسال میکند، درحالی که نسخه جدید، آن را با استفاده از base64 رمزگذاری میکند.
هر نمونه بدافزار، UUID مخصوص به خود را دارد. نسخه آنالیز شده ماه می از شناسه 86cd8a56-1657-42ce-a0e8-587bf8144c05 استفاده میکند، درحالی که نسخه جولای شناسه 472719a8-e1ce-4a5c-9ab2-bb4d1139ae33 را مورد استفاده قرار داده است.
کارکرد ماژول اصلی
محققان اظهار داشتند که در زمان تحقیقات، امکان دانلود پیلود از سرور وجود نداشت، اما پس از تجزیه و تحلیل دقیق، آنها توانستند حدود 15 نسخه دیگر از لودر و دو سرور فرماندهی و کنترل فعال را بیابند و در نتیجه نمونهای از ماژول اصلی را برای نسخه ماه می به دست آورند.
MD5 | |
SHA1 | 98CFFA5906ADB7BBBB9A6AA7C0BF18587697CF10 |
SHA256 | AA544118DEB7CB64DED9FDD9455A277D0608C6985E45152A3CBB7422BD9DC916 |
زمان تدوین: | 12:00 03.05.2024 |
کامپایلر | GNU Binutils 2.31 |
نوع فایل | Windows x64 executable |
سایز فایل | 167424 bytes |
نام فایل | stagger_1.1.dll |
ماژول اصلی، همانند لودر براساس نسخه Havoc میباشد، اما لیست دستورات پشتیبانی شده تا حدی از سایر agentهای Mythic استفاده می کنند. این لیست به صورت متن باز در فایل DLL ذخیره نمیشود، بلکه در کد کتابخانه به عنوان یک سری هش، مشخص شده است.
هنگامی که دستوری از سرور دریافت میشود، برای نام آن یک هش محاسبه میگردد که سپس هش فایل DLL را مورد بررسی قرار میدهد.
هش | نام دستور | شرح |
0x00251B5E | cd | تغییر دایرکتوری فعلی |
0x36D4696F | kill-process | خاتمه فرآیندی مشخص |
0x03A9CB57 | create-process | ایجاد فرآیند جدید |
0x04C8848E | bof | اجرای فایل Beacon Object |
0x04C89140 | env | لیست کردن متغیرهای محیطی و مقادیر آنها |
0x04C8C122 | pwd | نمایش دایرکتوری فعلی |
0x5A2DE070 | sleep | تغییر فاصله بین درخواست های C2 |
0x5A41B798 | token | مدیریت توکن های دسترسی ویندوز |
0x7BD1668F | download | ارسال یک فایل از دستگاه آلوده به سرور |
0x88BD45B4 | inject | تزریق کد به یک فرآیند در حال اجرا |
0x9DDAE271 | exit | خاتمه فرآیند agent |
0xA4E0A13C | upload | ارسال یک فایل از سرور به دستگاه آلوده |
ابزارهای تانلینگ ترافیک
Agent، از تانلینگ ترافیک پشتیبانی نمیکند. از این رو، هکرها از ابزارهای عمومی دیگری برای دسترسی به بخشهای شبکه خصوصی استفاده میکنند. ابزار ngrok همراه با بکدور Loki در دایرکتوری با لودر agent استفاده میشود.
قربانیان بکدور Loki و توزیع بدافزار
بیش از دهها شرکت روسی در زمینههای مختلف، از مهندسی مکانیک گرفته تا پزشکی مورد حمله بکدور Loki قرار گرفتهاند. با این حال محققان معتقدند که تعداد قربانیان احتمالی بیشتر میباشد.
بر اساس دادههای تله متری کسپرسکی و نام فایلهایی که بدافزار در آنها مشاهده شده است مانند ” смета_27.05.2024.exe”، ” На_согласование_публикации_<предприятие>.rar”، ” ПЕРЕЧЕНЬ_ДОКУМЕНТОВ.ISO” و غیره میتوان فرض کرد که در برخی موارد بکدور Loki از طریق ایمیل به رایانه قربانی نفوذ کرده و سپس یک کاربر بیتوجه آن را راه اندازی کرده است.
سخن پایانی
.محبوبیت فریمورکهای متن باز درحال افزایش است، اگرچه این فریمورکها در درجه اول یک ابزار مفید برای افزایش امنیت زیرساخت میباشند اما هکرها به طور پیوسته در حال آزمایش و استفاده فعالانه از آنها برای کنترل از راه دور دستگاه قربانیان هستند.
همچنین محققان طی تحقیقات انجام شده، نتوانستند دادههای کافی در مورد بدافزار بدست آورند تا بکدور Loki را به یک گروه شناخته شده نسبت دهند.
IoC
نسخه لودر در ماه جولای
46505707991e856049215a09bf403701
نسخه لودر در ماه می
f0b6e7c0f0829134fe73875fadf3942f
796bdba64736a0bd6d2aafe773acba52
5ec03e03b908bf76c0bae7ec96a2ba83
0632799171501fbeeba57f079ea22735
97357d0f1bf2e4f7777528d78ffeb46e
f2132a3e82c2069eb5d949e2f1f50c94
7f85e956fc69e6f76f72eeaf98aca731
375cfe475725caa89edf6d40acd7be70
dff5fa75d190dde0f1bd22651f8d884d
05119e5ffceb21e3b447df49b52ab608
724c8e3fc74dde15ccd6441db460c4e4
834f7e48aa21c18c0f6e5285af55b607
e8b110b51f45f2d64af6619379aeef62
ماژول اصلی
eb7886ddc6d28d174636622648d8e9e0
gTunnel
1178e7ff9d4adfe48064c507a299a628
dd8445e9b7daced487243ecba2a5d7a8
ngrok
4afad607f9422da6871d7d931fe63402
C2 :
http://y[.]nsitelecom[.]ru/certcenter
http://document[.]info-cloud[.]ru/data
http://ui[.]telecomz[.]ru/data