SOC Prime Bias: Високий

01 Dec 2025 17:35

Play Ransomware маскується під SentinelOne у розвідувальній кампанії Grixba

Author Photo
Ruslan Mikhalov Керівник досліджень загроз у SOC Prime linkedin icon Стежити
Play Ransomware маскується під SentinelOne у розвідувальній кампанії Grixba
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

У звіті описується операція програм-вимагачів Play, що використовує кастомну утиліту розвідки .NET під назвою Grixba, яка розгортається через RDP на сервері Windows. Grixba маскується під виконуваний файл SentinelOne (GT_NET.exe) і зберігає результат сканування у ExportData.db. Інструмент спілкується з IP-адресою VPN PIA і генерує архів data.zip захищений паролем. Раннє виявлення цих артефактів може зупинити атаку до фази програм-вимагачів.

Аналіз атаки програм-вимагачів Play

Field Effect MDR зафіксував скидання двійкового файлу Grixba у C:UsersPublicMusic разом з data.dat, після чого виконується GT_NET.exe і відбувається витягування XOR ключа для декодування inf_g.dll. Подальший аналіз виявив комутативні ключі для розвідки та створення ExportData.db, які містять докладні дані системи. Розслідувачі також виявили жорстко закодований елемент пароля, необхідний для розблокування data.zip.

Пом’якшення

Рекомендовані заходи включають підтримку надійних резервних копій, своєчасне оновлення програмного забезпечення, використання DNS-файрволів, забезпечення захищеного використання VPN, застосування MFA та використання платформ MDR/XDR для вчасного виявлення розвідувальної діяльності. Команди повинні постійно стежити за характерними артефактами та поведінкою, що асоціюються з Grixba.

Відповідь

Коли GT_NET.exe, data.dat, inf_g.dll або ExportData.db виявляються, респондери повинні ізолювати кінцеву точку, захопити нестійкі докази, отримати пароль ZIP з вбудованого значення та дослідити можливе бокове пересування або підготовку до програм-вимагачів. Обробники інцидентів також повинні заблокувати відповідну IP-адресу та ретельно переглянути журнали доступу RDP.

graph TB %% Визначення класів classDef action fill:#99ccff classDef malware fill:#ff9999 classDef data fill:#ccffcc %% Вузли initial_access[“<b>Дія</b> – <b>T1021.001 Віддалені сервіси: RDP</b><br/>Зловмисник використовує RDP для початкового доступу та залишає <b>GT_NET.exe</b> та <b>data.dat</b> у C:\\Users\\Public\\Music”] class initial_access action tool_gt_net[“<b>Шкідливе ПЗ</b> – <b>Назва</b>: GT_NET.exe<br/><b>Опис</b>: Кастомний .NET payload, скинутий під час сесії RDP”] class tool_gt_net malware execution_obfusc[“<b>Дія</b> – <b>T1027.007 Динамічне викликання API</b><br/>Обфускований .NET інструмент використовує Base64 та XOR кодування для приховування функціоналу”] class execution_obfusc action discovery[“<b>Дія</b> – <b>T1016 Виявлення конфігурації мережі системи</b>, <b>T1018 Виявлення віддаленої системи</b>, <b>T1595.001 Активне сканування: IP блоки</b><br/>Grixba сканує внутрішню мережу, перелічує хости, програмне забезпечення та запущені процеси”] class discovery action collection[“<b>Дія</b> – <b>T1560.001 Архівування зібраних даних: за допомогою утиліти</b><br/>Зібрані результати записуються у ExportData.db, потім стискаються у захищений паролем data.zip”] class collection action credential_extraction[“<b>Дія</b> – <b>T1140 Деобфускація/Декодування файлів або інформації</b><br/>XOR ключ декодовано для розшифровки data.dat та створення паролю для zip”] class credential_extraction action preparation[“<b>Дія</b> – Підготовка до наступного етапу<br/>Отримані дані використовуються для підвищення привілеїв та експлуатації вразливостей”] class preparation action %% Зв’язки initial_access –>|скидає| tool_gt_net tool_gt_net –>|виконує| execution_obfusc execution_obfusc –>|виконує| discovery discovery –>|призводить до| collection collection –>|створює| credential_extraction credential_extraction –>|дозволяє| preparation

Потік атаки

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

Необхідно: Телеметрія та початковий перевірка бази повинні пройти.

Обґрунтування: У цьому розділі детально описується точна реалізація техніки супротивника (TTP), призначена для активації правила виявлення. Команди та наратив ПОВИННІ прямо відображати визначені TTP і метою є створення точної телеметрії, очікуваної логікою виявлення. Абстрактні або нерелевантні приклади призведуть до неправильної діагностики.

  • Наратив атаки та команди:

    Супротивник здобув початкову точку закріплення на скомпрометованій робочій станції. Щоб побудувати карту внутрішньої мережі перед боковим пересуванням, вони завантажують розвідувальний двійковий файл Grixba (GT_NET.exe) з сервера командного управління та виконують його з набором аргументів, на які спрямоване правило Sigma. Обраний аргумент -m:scanall -i:d зумовлює повне відкриття вузлів приєднання до домену, тоді як -i:r та -i:f перелічують віддалені поділи та загальні файли, відповідно. Ці аргументи є типовими для дефолтного навантаження інструмента та генерують особливі рядки командного рядка, які очікує правило виявлення.

    Кроки:

    1. Завантажте інструмент (відтворено з копії з тестової папки).
    2. Виконайте двійковий файл з кожним набором цільових аргументів, щоб переконатися, що правило спрацьовує у кожному випадку.
    3. Залиште процес працювати короткий час, щоб SIEM зміг зафіксувати цю подію.
  • Сценарій регресійного тестування:

    # Сценарій регресійного тестування – Виконання розвідувального інструмента Grixba
    # ----------------------------------------------------
    # Припущення:
    #   • GT_NET.exe знаходиться в C:TempGT_NET.exe (замініть на фактичний шлях)
    #   • Виконання з достатніми привілеями для запуску двійкового файлу
    # ----------------------------------------------------
    
    $exePath = "C:TempGT_NET.exe"
    
    if (-Not (Test-Path $exePath)) {
        Write-Error "GT_NET.exe не знайдено на $exePath. Перервати."
        exit 1
    }
    
    # 1. Виконати з -m:scanall -i:d
    Write-Host "`n[+] Запускаємо GT_NET.exe з '-m:scanall -i:d' ..."
    Start-Process -FilePath $exePath -ArgumentList "-m:scanall -i:d" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    # 2. Виконати з -i:r
    Write-Host "`n[+] Запускаємо GT_NET.exe з '-i:r' ..."
    Start-Process -FilePath $exePath -ArgumentList "-i:r" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    # 3. Виконати з -i:f
    Write-Host "`n[+] Запускаємо GT_NET.exe з '-i:f' ..."
    Start-Process -FilePath $exePath -ArgumentList "-i:f" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    Write-Host "`n[+] Виконання завершено. Перевірте виявлення в SIEM."
  • Команди для очищення:

    # Очищення – припинити всі залишкові процеси GT_NET.exe та видалити двійковий файл
    Get-Process -Name "GT_NET" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    $exePath = "C:TempGT_NET.exe"
    if (Test-Path $exePath) {
        Remove-Item $exePath -Force
        Write-Host "[+] GT_NET.exe видалено."
    } else {
        Write-Host "[*] GT_NET.exe відсутній; нічого видаляти."
    }