Срібна Лисиця обгортає ValleyRAT у ZPAQ і бінарний файл ByteDance: Телеграм-приманка для китайської мови MSI
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Зловмисний MSI-інсталятор, що видає себе за китайський мовний пакет для Telegram, запускає складний ланцюг зараження, який включає ValleyRAT, rootkit на базі BYOVD для ядра та підписаний виконуваний файл ByteDance, що використовується для DLL sideloading. Інсталятор також неправомірно використовує легітимну архівну утиліту zpaqfranz як двійковий файл, що функціонує за межами системи, та впроваджує вразливий драйвер wnBios для отримання доступу до фізичної пам’яті. Дослідники пов’язали інфраструктуру, що стоїть за операцією, з CTG Server Ltd в Гонконзі і приписали активність групі APT Silver Fox. Кампанія, схоже, спрямована на користувачів, що говорять китайською, в декількох країнах Азіатсько-Тихоокеанського регіону.
Дослідження
Дослідники реконструювали повну атаку, починаючи з користувацької дії MSI і продовжуючи розпакуванням архівів ZPAQ, виборчим використанням двійкового файлу ByteDance SodaMusicLauncher для DLL sideloading і розгортанням драйвера ядра wnBios. Аналіз вбудованих даних конфігурації виявив ідентифікатори операторів та деталі командно-контрольної системи. Підтримуюча інфраструктура була пов’язана з хостингом, забезпеченим куленепробивністю, раніше пов’язаним із Silver Fox. Розслідувачі також виявили техніки постійності та логіку обходу антивірусів, що використовуються протягом усього ланцюга вторгнень.
Мітигація
Запобігти виконанню двійкового файлу zpaqfranz за межами схвалених середовищ резервного копіювання або розробки та уважно моніторити встановлення MSI, яке спирається на користувацькі дії VBScript. Обмежити створення сервісу AppShellElevationService та виявляти непідписані DLL, розміщені поруч із довіреними підписаними двійковими файлами. Блокувати вихідний зв’язок з ідентифікованим діапазоном мережі /21, що керується CTG Server Ltd, та заборонити трафік через користувацький C2 порт 5040. Укріпити захисти на базі хоста проти зловмисних імен файлів і процесів, що спостерігалися в цій кампанії.
Реакція
Розгорніть виявлення для визначених файлів, запущених процесів і підозрілих подій створення сервісів. Проведіть пошук для вразливого драйвера ядра та виразної логіки дешифрування на базі XOR шкідливого ПЗ. Ізолюйте потенційно уражені системи, зберіть образи пам’яті для глибшого дослідження rootkit і змініть будь-які облікові дані, що були розкриті під час компрометації. Команди з трекінгу загроз повинні продовжувати відстежувати інфраструктуру CTG Server для пов’язаних активностей далі.
Потік атаки
Виявлення
Можливі індикатори обфускації Powershell (через powershell)
Переглянути
Виклик підозрілих класів/методів .NET із Powershell CommandLine (через process_creation)
Переглянути
Підозріла команда та управління через запити DNS незвичних верхньорівневих доменів (TLD) (через dns)
Переглянути
Спроби комунікації через IP Lookup Domain (через dns)
Переглянути
Виклик підозрілих методів .NET із Powershell (через powershell)
Переглянути
IOC (HashSha256) для виявлення: Silver Fox упаковує ValleyRAT у ZPAQ та двійкові файлові файли ByteDance: інсталятор MSI, замаскований під китайський мовний пакет Telegram
Переглянути
IOC (HashMd5) для виявлення: Silver Fox упаковує ValleyRAT у ZPAQ та двійкові файлові файли ByteDance: інсталятор MSI, замаскований під китайський мовний пакет Telegram
Переглянути
IOC (DestinationIP) для виявлення: Silver Fox упаковує ValleyRAT у ZPAQ та двійкові файлові файли ByteDance: інсталятор MSI, замаскований під китайський мовний пакет Telegram
Переглянути
IOC (SourceIP) для виявлення: Silver Fox упаковує ValleyRAT у ZPAQ та двійкові файлові файли ByteDance: інсталятор MSI, замаскований під китайський мовний пакет Telegram
Переглянути
Виявлення подій завантаження драйверів ядра з wnBios для доступу до фізичної пам’яті [Завантаження зображення Windows]
Переглянути
Виявлення виконання зловмисних двійкових файлів, використаних APT Silver Fox [Створення процесу Windows]
Переглянути
Комунікації ValleyRAT C2 на порту 5040 [З’єднання мережі Windows]
Переглянути
Виконання симуляції
Передумова: Телеметрія та стандартна перевірка перед польотом повинні бути виконані.
Причина: У цьому розділі детально описується точне виконання техніки супротивника (TTP), розробленої для запуску правила виявлення. Команди та наратив МАЮТЬ точно відображати визначені TTP і бути спрямованими на створення саме тієї телеметрії, яку очікує логіка виявлення.
-
Розповідь атаки та команди:
Загрозливий актор отримує spear-фішингове посилання (T1566.002), яке скидає
zpaqfranz.exeна робочу станцію жертви. Двійковий файл виглядає як легітимний інструмент стиснення, перетворений на LOLBin (T1036). Потім зловмисник запускає його через PowerShell (T1059.001) із схованою командною лінією, яка інструктує інструмент розпакувати упакований пейлод ValleyRAT (T1027) та виконати його. Процес виконується в поточному контексті користувача, створюючи подію створення процесу Windows, яка відповідає правилуImage|endswith 'zpaqfranz.exe'умова.Крок за кроком:
- Стадія зловмисного двійкового файлу in
%TEMP%. - Виконати двійковий файл за допомогою PowerShell, передаючи фіктивний аргумент (
-extract), щоб імітувати справжній пейлод. - Підтримуйте процес на короткий час, а потім вийдіть.
- Стадія зловмисного двійкового файлу in
-
Сценарій регресійного тестування:
# Silver Fox LOLBin Simulation $tempPath = "$env:TEMPzpaqfranz.exe" # 1. Copy a benign executable to masquerade as the malicious LOLBin # (In a real test you would drop the actual malicious binary.) Copy-Item -Path "$env:SystemRootSystem32calc.exe" -Destination $tempPath -Force # 2. Execute the LOLBin via PowerShell (simulating T1059.001) $args = "-extract C:Temppayload.bin" Write-Host "Запуск $tempPath $args" Start-Process -FilePath $tempPath -ArgumentList $args -NoNewWindow # 3. Wait a few seconds to ensure the event is logged Start-Sleep -Seconds 5 # 4. Опціонально: імітувати очистку (видалити скинуту двійкову програму) Remove-Item -Path $tempPath -Force -
Команди очистки:
# Remove any residual artefacts from the simulation $tempPath = "$env:TEMPzpaqfranz.exe" if (Test-Path $tempPath) { Remove-Item $tempPath -Force } # Зупинити зайві процеси calc.exe, які можуть бути випадково запущені Get-Process -Name "calc" -ErrorAction SilentlyContinue | Stop-Process -Force