SOC Prime Bias: Médio

27 May 2026 15:40 UTC

Campanha de Phishing Implanta Variante PureLogs Baseada em JavaScript para Roubar Dados Sensíveis

Author Photo
SOC Prime Team linkedin icon Seguir
Campanha de Phishing Implanta Variante PureLogs Baseada em JavaScript para Roubar Dados Sensíveis
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Uma campanha de phishing está usando um anexo JavaScript malicioso para descriptografar e executar um script PowerShell. Esse script então realiza hollowing de processo para injetar um downloader .NET no confiável MsBuild.exe processo. O downloader se conecta a um servidor de comando e controle para recuperar um plugin PureLogs que rouba credenciais, dados de navegador, informações de carteiras de criptomoeda e outros ativos sensíveis. A cadeia de ataque é altamente evasiva e depende de criptografia em camadas junto com técnicas de execução sem arquivos para reduzir a detecção.

Investigação

Os laboratórios FortiGuard examinaram o anexo de email, o JavaScript ofuscado, o script PowerShell solto e os componentes .NET em memória usados posteriormente no ataque. Durante a análise, os pesquisadores observaram a criação de um MsBuild.exe processo hollowed, carregamento de um DLL downloader e execução de um plugin PureLogs que coletou dados de navegadores, Discord, carteiras de cripto e outras aplicações. O tráfego de rede capturado mostrou comunicações GET e POST criptografadas com um único servidor de comando e controle.

Mitigação

O relatório recomenda a aplicação de filtros de email rigorosos, limitar a execução de scripts sempre que possível, e monitorar atividades suspeitas de PowerShell e hollowing de processos envolvendo MsBuild.exe. Também aconselha o uso de ferramentas de detecção e resposta em endpoint que possam identificar assemblies .NET em memória e comportamentos de rede de saída incomuns associados à entrega de malware em etapas.

Resposta

Se essa atividade for detectada, isole o endpoint afetado, termine o MsBuild.exe processo malicioso e bloqueie o endereço IP de comando e controle. Os investigadores devem então realizar análise forense para determinar se credenciais ou dados sensíveis foram roubados e redefinir contas expostas conforme necessário. O conteúdo de detecção também deve ser atualizado para cobrir o abuso de PowerShell, hollowing de processo e comportamento relacionado ao PureLogs.

Fluxo de Ataque

Ainda estamos atualizando esta parte. Inscreva-se para ser notificado

Notifique-me

Execução de Simulação

Pré-requisito: O Check de Pré-vôo de Telemetria e Linha de Base deve ter sido aprovado.

Racional: 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 ter como objetivo gerar a telemetria exata esperada pela lógica de detecção.

  • Narrativa do Ataque & Comandos:

    1. Etapa 1 – Dropping de JavaScript: O atacante entrega um .js payload malicioso (codificado) via um email de phishing. O payload é salvo em %TEMP% e executado com wscript.exe.
    2. Etapa 2 – Lançador de PowerShell: O JavaScript inicia o PowerShell com as flags -ExecutionPolicy Bypass -NoProfile -WindowStyle Hidden -File, apontando para um script secundário que realiza hollowing de processo.
    3. Etapa 3 – Hollowing de Processo via MsBuild: O script PowerShell cria MsBuild.exe em modo suspenso, injeta o payload malicioso (um DLL fictício), e retoma o processo, alcançando execução enquanto parece uma ferramenta de build legítima.
  • Script de Teste de Regressão: (PowerShell – executado como usuário normal, não requer arquivos externos)

    # --------------------------------------------------------------
    #  Simulação de Variante PureLogs – JavaScript → PowerShell → MsBuild
    # --------------------------------------------------------------
    
    # 1. Criar JavaScript malicioso (codificado em base64 para imitar ofuscação)
    $jsPayload = @"
    // JS malicioso: inicia PowerShell com flags de bypass
    var shell = new ActiveXObject("WScript.Shell");
    var psCmd = "powershell.exe -ExecutionPolicy Bypass -NoProfile -WindowStyle Hidden -File ""%TEMP%launch.ps1""";
    shell.Run(psCmd, 0, false);
    "@
    
    $jsPath = "$env:TEMPmalicious.js"
    $jsPayload | Set-Content -Path $jsPath -Encoding ASCII
    
    # 2. Criar payload PowerShell que realiza hollowing de processo com MsBuild
    $psPayload = @"
    # Iniciar MsBuild em modo suspenso
    $msbuildPath = (Get-Command MsBuild.exe).Source
    $si = New-Object System.Diagnostics.ProcessStartInfo
    $si.FileName = $msbuildPath
    $si.UseShellExecute = $false
    $si.CreateNoWindow = $true
    $si.Arguments = "/t:Compile"
    $proc = [System.Diagnostics.Process]::Start($si)
    Start-Sleep -Milliseconds 500  # dar tempo para criação
    
    # Simular hollowing escrevendo apenas um arquivo fictício no espaço de memória do processo
    # (hollowing real usaria chamadas da API do Windows; aqui apenas mantemos o processo ativo)
    Write-Host "Hollowing de processo simulado – MsBuild em execução"
    "@
    
    $psPath = "$env:TEMPlaunch.ps1"
    $psPayload | Set-Content -Path $psPath -Encoding ASCII
    
    # 3. Executar o JavaScript – este é o ponto de entrada que a regra monitora
    wscript.exe $jsPath
    
    # Aguardar um curto período para garantir que os logs sejam gerados
    Start-Sleep -Seconds 10
  • Comandos de Limpeza:

    # Terminar quaisquer processos MsBuild remanescentes iniciados pela simulação
    Get-Process MsBuild -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # Remover artefatos
    Remove-Item "$env:TEMPmalicious.js" -ErrorAction SilentlyContinue
    Remove-Item "$env:TEMPlaunch.ps1" -ErrorAction SilentlyContinue