PulseRAT доставлений через приманку партнерства ОАЕ-Індія
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Шкідливий ISO-архів, замаскований під файл стратегічного партнерства ОАЕ-Індія, використовується для доставки трояна віддаленого доступу на основі .NET, відомого як PulseRAT. Шкідливе програмне забезпечення встановлюється через дроппер, вбудований в ISO, і використовує Google Таблиці як канал управління та контролю. Для збереження доступу, він створює заплановане завдання під назвою WindowsVaultSyncService, створює каталог для сховища під %LOCALAPPDATA%, і використовує мутаекс, щоб запобігти багаторазовим виконанням на тому ж хості. Кампанія базується на фіктивній інформації, пов’язаній з високопрофільними оборонними відносинами між Об’єднаними Арабськими Еміратами та Індією.
Розслідування
Аналітик розпакував ISO файл, ідентифікував LNK шорткат, відповідальний за запуск виконуваного файлу, і зворотно інженерив дроппер, щоб виявити його корисне навантаження та логіку збереження. Подальший аналіз PulseRAT показав, як він використовує Google Sheets для командування та контролю, генерує свій мутаекс, виконує PowerShell у пам’яті процесу та створює своє заплановане завдання для збереження. Імена файлів, шляхи файлової системи, шаблони мутаексів та ідентифікатор таблиці були задокументовані для підтримки інженерії виявлення.
Пом’якшення
Організаціям слід блокувати виконання невідомих бінарних файлів, запущених з зовнішніх або змонтованих носіїв, та моніторити створення запланованих завдань названих WindowsVaultSyncService. Необхідно запровадити контроль додатків для бінарних файлів, що виконуються з %LOCALAPPDATA%MicrosoftVault, і захисники повинні перевіряти трафік API Google Sheets на доступ до несанкціонованих облікових записів або несподівану активність у таблиці. Будь-яке шкідливе заплановане завдання слід видалити, а файл vaultsvc.exe має бути видалено з уражених систем.
Реагування
Якщо активність PulseRAT виявлена, негайно ізолюйте уражену кінцеву точку, зберіть вольатильну пам’ять і образи диска, та шукайте задокументовані індикатори компрометації. Вимкніть та видаліть шкідливе заплановане завдання, видаліть каталог сховища та скиньте будь-які скомпрометовані сервісні облікові записи, пов’язані з Google. Також повинен бути проведений повний судово-медичний огляд для виявлення можливої латеральної переміщення, та інформовані зацікавлені сторони в ОАЕ та Індії.
"graph TB %% Class definitions classDef action fill:#99ccff,stroke:#333,stroke-width:2px classDef tool fill:#dddddd,stroke:#333,stroke-width:2px classDef process fill:#ffeb99,stroke:#333,stroke-width:2px %% Nodes step_user_open["<b>Action</b> – <b>T1204.002 User Execution: Malicious File</b><br/><b>Description</b>: Victim opens a malicious shortcut (LNK) file.<br/><b>Subu2011technique</b> T1547.009 Shortcut Modification<br/><b>Description</b>: Shortcut placed to achieve persistence."] class step_user_open action step_dropper["<b>Action</b> – <b>T1027.009 Obfuscated/Stored Files: Embedded Payloads</b><br/><b>Description</b>: Dropper extracts hidden payload.<br/><b>Technique</b> T1105 Ingress Tool Transfer<br/><b>Description</b>: Transfers payload to the victim system."] class step_dropper action step_persistence["<b>Action</b> – <b>T1053 Scheduled Task/Job</b><br/><b>Description</b>: Creates a scheduled task for persistence.<br/><b>Technique</b> T1070.004 File Deletion<br/><b>Description</b>: Dropper selfu2011deletes after installing."] class step_persistence action step_execution["<b>Action</b> – <b>T1055.013 Process Injection: Process Hollowing</b><br/><b>Description</b>: Executes PowerShell inu2011process to run malicious code.<br/><b>Technique</b> T1602 Gather Victim Identity Information<br/><b>Description</b>: Collects system information (systeminfo)."] class step_execution action step_uid["<b>Action</b> – <b>T1589 Gather Victim Identity Information</b><br/><b>Description</b>: Generates a unique victim identifier (UID)."] class step_uid action step_c2["<b>Action</b> – <b>T1102.001 Web Services: Dead Drop Resolver</b><br/><b>Description</b>: Uses Google Sheets as a commandu2011andu2011control channel.<br/><b>Technique</b> T1102.002 Web Services: Exfiltration Over Web Services<br/><b>Description</b>: Communicates with remote Google Sheets API."] class step_c2 action step_rat["<b>Action</b> – <b>T1219 Remote Access Tools</b><br/><b>Description</b>: Provides remote interactive access to the compromised host."] class step_rat action step_cleanup["<b>Action</b> – <b>T1070.009 Clear Windows Event Logs</b><br/><b>Description</b>: Removes artifacts and cleans up persistence mechanisms."] class step_cleanup action %% Connections step_user_open –>|leads_to| step_dropper step_dropper –>|creates| step_persistence step_persistence –>|enables| step_execution step_execution –>|produces| step_uid step_uid –>|used_by| step_c2 step_c2 –>|enables| step_rat step_rat –>|triggers| step_cleanup "
Потік атаки
Виявлення
Можливе використання вибору для затримки виконання (через cmdline)
Переглянути
Образ оптичного диска VHDMP був змонтований (через VHDMP)
Переглянути
Підозріле заплановане завдання (через аудит)
Переглянути
Можлива діяльність утиліти командування і управління Google (через проксі)
Переглянути
IOC (HashSha256) для виявлення: PulseRAT – RAT на основі Google Sheets, що використовує приманку партнерства ОАЕ-Індія
Переглянути
Виявлення In-Process виконання PowerShell PulseRAT [Windows Powershell]
Переглянути
Виконання підозрілого виконуваного файлу через LNK файл і корисне навантаження RAT [Windows Process Creation]
Переглянути
Виконання симуляції
Передумова: Перевірка телеметрії та базової лінії повинна пройти.
-
Опис атаки та команди:
Зловмисник скомпрометував користувацький обліковий запис та розмістив на хості шкідливий DLL «PulseRAT». PulseRAT завантажується у легітимний процес (наприклад,explorer.exe) та створює PowerShell runspace (виконання в процесі), щоб уникнути створення видимогоpowershell.exe. Після цього він витягує base64-закодоване корисне навантаження PowerShell з контрольованої зловмисником Google Sheets, декодує його та виконує всередині runspace. Це генерує один запис EventID 4104, який містить як маркерний рядок «System.Management.Automation.Runspaces» (від створення runspace), так і слово «base64» (від декодованого корисного навантаження), задовольняючи правило Sigma. -
Режим тестування регресії:
# Імітація виконання PowerShell PulseRAT у процесі (симуляція) # --------------------------------------------------------- # 1. Створіть runspace PowerShell (в процесі) $runspace = [runspacefactory]::CreateRunspace() $runspace.Open() # 2. Створіть base64-закодоване корисне навантаження (імітація контрольованих даних зловмисника) $payload = 'Write-Host "Скомпрометовано PulseRAT"' # Просте навантаження $bytes = [System.Text.Encoding]::Unicode.GetBytes($payload) $b64 = [Convert]::ToBase64String($bytes) # 3. Збудуйте скриптовий блок, який декодує та запускає навантаження $script = @" `$b64 = '$b64' `$decoded = [System.Text.Encoding]::Unicode.GetString([Convert]::FromBase64String(`$b64)) Invoke-Expression `$decoded "@ # 4. Створіть конвеєр PowerShell всередині runspace та виконайте його $powershell = [powershell]::Create() $powershell.Runspace = $runspace $null = $powershell.AddScript($script).Invoke() $powershell.Dispose() $runspace.Close() -
Команди очищення:
# Видалення runspace та звільнення ресурсів (якщо залишились) if ($runspace -and $runspace.RunspaceStateInfo.State -ne 'Closed') { $runspace.Close() } Remove-Variable -Name runspace -ErrorAction SilentlyContinue Remove-Variable -Name powershell -ErrorAction SilentlyContinue