Операція Dragon Weave використовує Azure Cloud C2 для націлювання на Чеську Республіку та Тайвань
Detection stack
- AIDR
- Alert
- ETL
- Query
Зміст
Цілеспрямована операція зі шпигунства, відома як Operation Dragon Weave, використовує шкідливі LNK файли ярликів разом із виконуваним файлом на базі Rust для запуску завантажувача з декількома стадіями, який в кінцевому підсумку розгортає керуючий агент Adaptix AZUREVEIL. Оператори використовують як механізм „мертвої точки” для зв’язку з командним і контрольним центром зберігання в Microsoft Azure Blob. Кампанія орієнтована на державних службовців та дослідників у Чехії та Тайвані.
Дослідження
Дослідження простежило повний ланцюжок зараження від початкового ZIP архіву через виконання VBScript, розшифрування на основі PowerShell, бічне завантаження DLL і спеціального завантажувача на базі Rust, який використовував RC4, Base64 і SM4 для розшифровки кінцевого завантажувача. Останнє стадійне зловмисне програмне забезпечення AZUREVEIL було ідентифіковано як 64-розрядний Adaptix DLL, який спілкувався лише через Azure Blob Storage і підтримував виконання завантажених файлів в оперативній пам’яті.
Пом’якшення ризиків
Захисники повинні блокувати виконання неочікуваних LNK файлів і підписаних виконуваних файлів, забезпечувати суворий контроль над виконанням скриптів і макросів та контролювати незвичний трафік Azure Blob Storage. Використання PowerShell із обходом політики виконання повинно бути обмежене або ретельно наглядатися, а команди безпеки повинні виявляти підозріле створення файлів у %LOCALAPPDATA% and %TEMP%. Також рекомендується сильна гігієна облікових даних для облікових записів Azure і регулярна ротація токенів SAS.
Відповідь
Команди безпеки повинні виявляти та ізолювати уражені хости, збирати змінну пам’ять для відновлення будь-яких завантажених у пам’ять даних, блокувати визначений домен зберігання Azure та шукати вказані артефакти файлів та шаблони процесів. Також має бути проведено повне судове дослідження для виявлення будь-яких додатково завантажених компонентів та видалення механізмів стійкості.
Потік атаки
Виявлення
LOLBAS WScript / CScript (через process_creation)
Переглянути
Можливість виконання через приховані командні лінії PowerShell (через cmdline)
Переглянути
Виклик підозрілих методів .NET з PowerShell (через powershell)
Переглянути
Можливі індикатори обфускації PowerShell (через powershell)
Переглянути
IOCs (HashSha256) для виявлення: Operation Dragon Weave: розкриття пов’язаної з Китаєм кампанії, яка націлена на Чеську Республіку та Тайвань з використанням Azure Cloud C2
Переглянути
Виявлення шкідливого виконання wscript.exe та використання CreateFiberEx [Створення процесу Windows]
Переглянути
Виконання Profile.ps1 з обходом PowerShell [PowerShell Windows]
Переглянути
Шкідливий LNK файл та бічне завантаження DLL для виконання RUSTCLOAK [Подія файлу Windows]
Переглянути
Виконання симуляції
Попередня умова: Попередньо перевірка телеметрії та базової лінії повинна бути пройдена.
Наратив атаки та команди
- Доставка: Аттакер надсилає фішингове електронне повідомлення з вкладенням під назвою
計畫申請審查結果通知單.pdf.lnk. Подвійне розширення приховує натуру ярлика. LNK вказує наC:Tempevil.vbs. - Виконання (VBScript): Коли жертва двічі клацає LNK,
wscript.exeзапускаєevil.vbs. Скрипт скидаєRuntimeBroker_update.exeto%APPDATA%MicrosoftWindowsStart MenuProgramsRuntimeBroker_update.exeі копіює шкідливийUnityPlayer.dll(що містить завантажувач на базі Rust) у ту саму директорію. - Бічне завантаження DLL: Аттакер виконує
RuntimeBroker_update.exe. Оскільки виконуваний файл підписано (або імітує легітимний бінарник), Windows завантажує сусіднійUnityPlayer.dll, який виконує вбудоване завантаження на базі Rust (RUSTCLOAK) та встановлює канал керування і контролю до Azure. - Після виконання: Вантаж виконує виявлення системи (T1016, T1082) та починає ексфільтрацію (T1041) через зашифрований канал (T1573).
Скрипт регресійного тестування
<#
Скрипт симуляції для виявлення шкідливого LNK та бічного завантаження DLL.
Попередні умови:
- Sysmon з увімкненими ProcessCreate (ID 1) та ImageLoad (ID 7).
- Дозвіл на запис до $env:APPDATAMicrosoftWindowsStart MenuPrograms
#>
# 1. Підготовка шкідливого VBScript
$vbPath = "$env:TEMPevil.vbs"
@'
Set objShell = CreateObject("WScript.Shell")
'objShell.Run """$env:APPDATAMicrosoftWindowsStart MenuProgramsRuntimeBroker_update.exe""", 0, False
'@ | Set-Content -Path $vbPath -Encoding Unicode
# 2. Розгортання фальшивого UnityPlayer.dll (місце утримання бінарника)
$dllPath = "$env:APPDATAMicrosoftWindowsStart MenuProgramsUnityPlayer.dll"
# Для демонстрації просто скопіюйте будь-який існуючий DLL (наприклад, version.dll) і перейменуйте його
Copy-Item "$env:SystemRootSystem32version.dll" $dllPath -Force
# 3. Розгортання допоміжного виконуваного файлу (копія легітимного бінарника для реалістичності)
$exePath = "$env:APPDATAMicrosoftWindowsStart MenuProgramsRuntimeBroker_update.exe"
Copy-Item "$env:SystemRootSystem32RuntimeBroker.exe" $exePath -Force
# 4. Створення шкідливого LNK з подвійним розширенням
$lnkPath = "$env:USERPROFILEDesktop計畫申請審查結果通知單.pdf.lnk"
$ws = New-Object -ComObject WScript.Shell
$shortcut = $ws.CreateShortcut($lnkPath)
$shortcut.TargetPath = "$env:SystemRootSystem32wscript.exe"
$shortcut.Arguments = "`"$vbPath`""
$shortcut.Save()
Write-Host "Шкідливий LNK створено у $lnkPath"
Write-Host "Виконання LNK для запуску ланцюгу..."
Start-Process -FilePath $lnkPath -Wait
Команди очищення
# Видалити артефакти
Remove-Item "$env:TEMPevil.vbs" -Force -ErrorAction SilentlyContinue
Remove-Item "$env:APPDATAMicrosoftWindowsStart MenuProgramsUnityPlayer.dll" -Force -ErrorAction SilentlyContinue
Remove-Item "$env:APPDATAMicrosoftWindowsStart MenuProgramsRuntimeBroker_update.exe" -Force -ErrorAction SilentlyContinue
Remove-Item "$env:USERPROFILEDesktop計畫申請審查結果通知單.pdf.lnk" -Force -ErrorAction SilentlyContinue
Write-Host "Очищення завершено."