شرکت امنیت سایبری eSentire در اوایل ژوئن ۲۰۲۴، چندین نفوذ مرتبط با تروجان Gh0st RAT را شناسایی کرد که از بستههای نصب کننده مخربی که به عنوان مرورگر کروم منتشر میشدند، استفاده میکردند.
Gh0st RAT یک تروجان دسترسی از راه دور قدیمی با قابلیتهای مختلف جمع آوری داده و کنترل از راه دور است. در دسترس بودن کد منبع آن منجر به استفاده گسترده و سفارشی سازی این تروجان توسط هکرها و گروههای سایبری مختلف شده است. این RAT در سال 2009 به دلیل استفاده در GhostNet، یک عملیات جاسوسی سایبری بزرگ، مورد توجه گسترده قرار گرفت.
زیرساخت فرماندهی و کنترل GhostNet در چین مستقر بود. این عملیات اهداف بسیار با ارزشی از جمله سفارتخانهها، وزارتخانههای امور خارجه، سایر ادارات دولتی و مراکزی را در هند، لندن و نیویورک مورد نفوذ قرار داد.
از آن زمان تا کنون، گونههای مختلف تروجان Gh0st RAT توسط گروههایی همچون Lazarus، Earth Berberoka، GALLIUM و بسیاری دیگر، مورد استفاده قرار گرفته است.
نفوذهای اخیر تروجان Gh0st RAT که با استفاده از تکنیک دانلود drive-by (دانلود درایو بای یا دانلود ناخواسته) صورت گرفته، توسط نصب کننده Gh0stGambit و با هدف بازیابی و اجرای پیلودهای رمزگذاری شده انجام شده است.
این حملات از یک وب سایت جعلی (“chrome-web[.]com”) نشات میگیرند که بستههای نصب کننده مخرب را به عنوان مرورگر chrome (گوگل کروم) ارائه میدهند.
نصبکننده MSI شامل دو فایل است، یکی نصبکننده قانونی Chrome و دیگری یک نصب کننده مخرب (WindowsProgram.msi، MD5: 4bf494f15fcc172b98abeb5a02ecffed).
WindowsProgram.msi حاوی فایلهای زیر میباشد:
۱ – شل کد (MD5: fc6993a5498a7af0eab9899d86e393e5) librdkafka.dll – یک فایل کتابخانهای است.
۲ – لودر مخرب (MD5: 778d517a9de9b93f02e92602f1cfcd6c).
فایلها در مسیر “C:\Program Files\Windows Defenderr” قرار میگیرند. هر دو فایل 1 و 2 دارای ویژگی فایل مخفی یا hidden file برای پنهان کردن حضور خود در سیستم هستند. فایل “1” که بعداً به “Phone.exe” تغییر نام میدهد، مسئول دانلود و اجرای shellcode در حافظه یک فرآیند در حال اجرا است.
shellcode حاوی یک پیلود رمزگذاری شده است که از طریق یک فرآیند چند مرحلهای رمزگشایی میشود.
نصب کننده Gh0stGambit
Gh0stGambit یک فایل cmd. و یک اسکریپت batch ایجاد میکند و از CoCreateGuid API برای ایجاد یک GUID منحصر به فرد استفاده میکند که به عنوان نام فایل برای اسکریپت استفاده میشود. شایان ذکر است که فایل shellcode و نصب کننده Gh0stGambit در مسیر C:\ProgramData\{ unique_GUID_1}\{unique_GUID_2}\ قرار خواهند گرفت.
اسکریپت batch بررسی میکند که آیا PID نصب کننده Gh0stGambit در حال اجرا هست یا خیر و در غیر اینصورت، نصب کننده را مجددا با یک تاخیر 5 ثانیهای راه اندازی میکند. Gh0stGambit اکنون بررسی میکند که آیا فرآیند 360 Safe Guard در حال اجرا میباشد یا خیر (ZhuDongFangYu.exe).
چنانچه پاسخ مثبت باشد، فایل نصب کننده، مسیر “C:\ProgramData\Microsoft\Windows\Start Menu\Programs” را به درایو منطقی “L:\ ” در “HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\DOS Devices” نگاشت میکند. این مسیر رجیستری برای مدیریت نام دستگاهها و نگاشت آنها به مسیرهای فیزیکی یا منطقی سیستم فایل استفاده میشود.
یک فایل خالی “One Drive.vt” در زیر “L:\” ایجاد میشود و پس از راه اندازی مجدد سیستم به “L:\Startup” منتقل میگردد.
Gh0stGambit یک ورودی رجیستری جدید را تحت “HKEY_CLASSES_ROOT\.VT” تنظیم میکند که VT. را به عنوان یک نوع فایل شناسایی شده تعریف میکند. مقدار پیش فرض بر روی “NNLPS” تنظیم شده است که به عنوان شناسهای عمل میکند که افزونه را پیوند میهد.
Gh0stGambit سپس کلید دیگری را در تحت “HKEY_CLASSES_ROOT\NNLPS\shell\open\command” پیکربندی میکند تا مشخص نماید هنگام باز شدن یک فایل VT چه اقدامی باید صورت پذیرد.
دستور مورد نظر در اینجا این است که “Phone.exe” در “C:\ProgramData\{unique_GUID_1}\{unique_GUID_2}\” اجرا شود.
نوعِ جدیدِ تروجان Gh0st RAT
تروجان Gh0st RAT به زبان ++C نوشته شده است و دارای ویژگیهای بسیاری از جمله پایان دادن به فرآیندها، حذف فایلها، ضبط صدا و تهیه اسکرین شات، اجرای فرمان از راه دور، ثبت کلیدهای فشرده شده کیبورد، استخراج دادهها، مخفی کردن رجیستری، فایلها و دایرکتوریها از طریق قابلیتهای روت کیت و بسیاری موارد دیگر است.
این RAT (تروجان Gh0st RAT)، یک فایل driver.sys در دایرکتوری C:\ProgramData\Microsoft Drive ایجاد میکند که حاوی دادههای رمزگذاری شده از ورودیهای کاربر به عنوان بخشی از قابلیت ثبت کلید (keylogging) آن است. دادهها با استفاده از یک XOR ساده رمزگشایی میشوند.
تروجان Gh0st RAT شامل یک روت کیت مخفی (MD5: 1e7dccdacced54c5d3515c2d6f5b9f00) است که کلیدهای رجیستری، فرآیندها، فایلها و دایرکتوریها را پنهان میکند. این کامپوننت از یک پروژه منبع باز موجود در GitHub اقتباس شده است.
تروجان Gh0st RAT سعی میکند یک مقدار رجیستری خاص را در “HKEY_CURRENT_USER\UUByte\Setup\Uninstall” بخواند. انتظار میرود این رجیستری حاوی اطلاعات دامنه برای برقراری اتصال باشد.
چنانچه RAT با موفقیت این دادهها را بازیابی نماید و تأیید کند که دارای یک دامنه در فرمت معتبر است، تروجان Gh0st RAT، این دامنه را برای اتصال استفاده میکند.
اگر رجیستری اطلاعات مورد انتظار را ارائه ندهد، تابع به طور پیشفرض از “hacker.heikeniubi[.]buzz” یا ” 87df223265[.]cyou ” به عنوان دامنههای سرور فرماندهی و کنترل بازگشتی (C2) استفاده میکند.
همانطور که در شکل زیر نشان داده شده است، تروجان Gh0st RAT میتواند Mimikatz (GetMP.exe) را در زیر فولدر سیستم قرار دهد.
علاوه بر این، تروجان Gh0st RAT اطلاعات اعضای گروه و لیست دوستان را از اپلیکیشن QQ جمعآوری میکند که حاکی از آن است که این RAT عمدتاً برای نفوذ به کاربران چینی زبان توسعه یافته است.
شایان ذکر است که Gh0st RAT از یک DLL جداگانه به نام “CHROMEUSERINFO.dll” (MD5: 82408e48f97f6c41b825b97a2e026831) برای دسترسی به دو تابع export به نامهای ” fnGetChromeUserInfo ” و ” fnDeleteChromeUserInfo” استفاده میکند.
تابع fnGetChromeUserInfo مسئول دسترسی به وضعیت لوکال مرورگر Chrome و دادههای لاگین به سیستم است که شامل اطلاعات کاربری، افزونههای نصب شده و دادههای پیکربندی مرورگر میباشد.
تروجان Gh0st RAT در چند سال گذشته شاهد استفاده و تغییرات گستردهای توسط APTها و گروههای سایبری مختلف بوده است. یافتههای اخیر، توزیع این تروجان را از طریق دانلودهای ناخواسته نشان میدهد که کاربران را فریب میدهد تا یک نصب کننده مخرب Chrome را از یک وب سایت فریبنده دانلود کنند.
از این رو، کاربران میبایست به هنگام جستجو و دانلود برنامه مورد نظر بسیار هوشیار بوده و تنها به سایت ارائه دهنده اصلی مراجعه کنند.