SOC Prime Bias: Середній

02 Jun 2026 15:23 UTC

DonutLoader знову в дії у сучасній кампанії Remcos RAT

Author Photo
SOC Prime Team linkedin icon Стежити
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

G DATA виявила нову кампанію Remcos RAT, яка починається з шкідливого batch-файлу і проходить через кілька скриптових рівнів, включаючи PowerShell, VBScript і AutoIt, щоб отримати та запустити завантажувальний код DonutLoader. Завантажувач в кінцевому підсумку вводить фінальний Remcos RAT у легітимний бінарний файл Windows colorcpl.exe. Протягом ланцюга зловмисники використовують довірені інструменти, такі як 7-Zip, сховище pCloud та кілька LOLBins, щоб зробити активність виглядом рутинною. Використання shellcode створеного Donut для інжекції процесу відзначає помітну еволюцію у сучасній доставці Remcos.

Розслідування

Дослідники прослідкували повний шлях інфекції від фішинг-вкладення під назвою Bestellung.CMD, який запускав cscript.exe для виконання проксі VBScript, який декодував команду PowerShell, закодовану в Base64. Ця PowerShell стадія завантажувала утиліти 7-Zip і архів із паролем з pCloud, потім розпаковувала файл JScript, який викидав інтерпретатор AutoIt і фальшивий PNG, що містив додатковий вміст корисного навантаження. Компонент AutoIt декодував зашифровані XOR дані, відновлював shellcode DonutLoader та інжектував його у colorcpl.exe, де Remcos RAT версії 7.2.1 Pro був виконаний.

Пом’якшення

Захисники повинні спостерігати за підозрілою використанням cscript.exe, SyncAppvPublishingServer.vbs, та команд PowerShell IEX з контентом, закодованим в Base64, особливо коли ці процеси походять з batch-файлів. Виявлення також повинно покривати несподівані появи 7z.exe and 7z.dll в користувацьких директоріях, разом з неавторизованими бінарними AutoIt. Протекції на основі поведінки мають бути налаштовані для виявлення інжекції процесу у colorcpl.exe та активності, що відповідає shellcode, створеному Donut.

Відповідь

Якщо ця активність буде виявлена, негайно ізолюйте уражену систему, прекратіть підозрілі процеси і захопіть пам’ять для аналізу shellcode. Слідчі повинні розглянути викинуті файли та будь-які видалені артефакти для відтворення повного ланцюга виконання, блокуючи при цьому зв’язок з ідентифікованою командно-контрольною інфраструктурою. Відновлення має включати видалення Remcos RAT та очищення будь-яких легітимних утиліт, зловживаних під час атаки.

Потік атаки

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

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

Обґрунтування: Цей розділ детально описує точне виконання техніки супротивника (TTP), призначене для тригера правила виявлення. Команди та наратив МУСЯТЬ безпосередньо відображати ідентифіковані TTP та прагнути генерувати точну телеметрію, очікувану детекційною логікою.

  • Атакова історія та команди:
    Супротивник отримав шкідливий PowerShell корисне навантаження (наприклад, завантажувач), яке було закодовано Base64 для уникнення статичного виявлення. Щоб залишитися непомітним, зловмисник вибирає підписаний вбудований модуль—AppvClient—який, як правило, присутній на системах Windows. Вони імпортують модуль, потім використовують Invoke-Expression (IEX) для декодування та виконання навантаження повністю в пам’яті, не залишаючи артефактів файлів. Ця конкретна командаImport-Module AppvClient; IEX відповідає умовам Sigma правила.

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

    <#
    Сценарій симуляції для тригера правила "PowerShell IEX з AppvClient".
    #>
    # 1. Імпортуйте легітимний модуль (виконання проксі підписаного бінарного файлу)
    Import-Module AppvClient -ErrorAction Stop
    # 2. Підготовте просте безневинне PowerShell навантаження і кодуйте його в Base64
    $payload = "Write-Host 'Компрометація симульована – навантаження виконано.'"
    $bytes   = [System.Text.Encoding]::Unicode.GetBytes($payload)
    $b64     = [System.Convert]::ToBase64String($bytes)
    # 3. Виконайте навантаження в пам'яті, використовуючи IEX (тригер детекції)
    IEX ([System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($b64)))
    # 4. Необов'язково: тримайте сеанс відкритим коротко, щоб впевнитися, що логи присутні
    Start-Sleep -Seconds 5
  • Команди очищення:

    # Видаліть імпортовані модулі для зменшення слідів
    if (Get-Module -Name AppvClient) {
        Remove-Module -Name AppvClient -Force
    }
    # Очистіть історію PowerShell для поточного сеансу
    Clear-History