Crypto Drainers como uma Ameaça Convergente: Insights sobre Ecossistemas de Ataque Híbridos Emergentes
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
O relatório explica como a infraestrutura de crimes cibernéticos estabelecida está cada vez mais convergindo com operações de drenagem de criptomoedas, dando origem a ecossistemas de ataque híbridos que colocam em risco ativos do Web2 e Web3. Os agentes de ameaça confiam em páginas de phishing sofisticadas com temas de ferramentas de IA ou serviços financeiros para convencer as vítimas a conectar suas carteiras, autorizar transações de tokens e transferir fundos sem saber através de várias blockchains. Dois exemplos destacados, StepDrainer e EtherRAT, demonstram como esse modelo abrange tanto a drenagem de carteiras baseadas em navegador quanto o malware em Windows com funcionalidade ciente da blockchain. Como resultado, a ameaça agora se estende bem além dos usuários nativos de criptomoedas e atinge mais profundamente os ambientes empresariais convencionais.
Investigação
Os pesquisadores examinaram a operação StepDrainer como um serviço de malware, incluindo sua infraestrutura de encenação em PHP e JavaScript e seu uso do Web3Modal para exibir prompts convincentes de conexão de carteiras. Eles também analisaram o malware EtherRAT para Windows, que era entregue através de um instalador TFTP trojanizado, mantinha permanência através de uma chave de registro Run e comunicava-se com endpoints RPC de Ethereum e Solana. Durante a investigação, a equipe extraiu indicadores como domínios maliciosos, chaves de registro e artefatos de linha de comando vinculados a ambos os caminhos de ataque.
Mitigação
As organizações devem bloquear o acesso a domínios maliciosos conhecidos, exigir autenticação multifator para extensões de carteiras sempre que possível e monitorar os sistemas em busca de entradas suspeitas no registro Run e processos inesperados do Node.js. As equipes de segurança também devem inspecionar o tráfego para serviços RPC de blockchain pública em busca de comportamentos anômalos e revisar regularmente as extensões do navegador para sinais de adulteração ou abuso.
Resposta
Se esta atividade for detectada, isole imediatamente o host afetado, remova a entrada maliciosa no registro Run, termine os processos não autorizados do Node.js e revogue todas as aprovações de tokens concedidas pelas carteiras impactadas. Os investigadores devem então realizar uma análise forense para identificar quaisquer cargas adicionais ou mecanismos de persistência e atualizar listas de permissão ou bloqueio para evitar mais comunicação com a infraestrutura de comando e controle identificada.
Fluxo de Ataque
Detecções
Possíveis Pontos de Persistência [ASEPs – Hive Software/NTUSER] (via registry_event)
Binário NodeJS Executando de Localização Incomum (via cmdline)
Possível Enumeração de Software de Antivírus ou Firewall (via process_creation)
LOLBAS Conhost (via cmdline)
Uso Suspeito de CURL (via cmdline)
Possíveis Verificações de Evasão (via powershell)
Possível Tentativa de Abuso da Publicnode Ethereum como Canal C2 (via dns_query)
Possível Infiltração de Dados / Exfiltração / C2 via Serviços / Ferramentas de Terceiros (via proxy)
Possível Infiltração de Dados / Exfiltração / C2 via Serviços / Ferramentas de Terceiros (via dns)
Detecção do Mecanismo de Persistência EtherRAT Usando conhost.exe em Modo Headless [Criação de Processo do Windows]
Execução de Comando PowerShell do EtherRAT para Reconhecimento do Sistema [PowerShell do Windows]
Execução de Simulação
Pré-requisito: A Verificação Prévia de Telemetria & Base deve ter passado.
-
Narrativa de Ataque & Comandos
O adversário já colocou um arquivo JavaScript malicioso (
payload.js) no alvo. Para alcançar persistência, eles usam o instaladonode.exebinário para iniciarconhost.exeem modo headless, que então carrega a carga útil JavaScript. Esta técnica evita janelas de console visíveis e se mistura ao uso normalnodeuso.- Coloque a carga útil maliciosa (
payload.js) em um local temporário. - Execute
node.execom um comando que criaconhost.exe --headlessapontando para a carga útil. - Crie uma tarefa agendada que executa o mesmo comando na inicialização do sistema, fornecendo persistência.
- Coloque a carga útil maliciosa (
-
Script de Teste de Regressão
# Simulação de Persistência EtherRAT – PowerShell # ------------------------------------------------- # 1. Prepare a carga útil JavaScript maliciosa $payloadPath = "$env:TEMPpayload.js" @" // JS malicioso minimalista – na realidade isso carregaria o implante EtherRAT const { exec } = require('child_process'); exec('calc.exe'); // Exemplo de efeito colateral "@ | Set-Content -Encoding UTF8 $payloadPath # 2. Localize node.exe (assuma que está no PATH) $node = (Get-Command node.exe).Source if (-not $node) { Write-Error "node.exe não encontrado no PATH." exit 1 } # 3. Construa a linha de comando conhost $conhostCmd = "C:WindowsSystem32conhost.exe --headless `"$payloadPath`"" # 4. Execute via node.exe (isso cria o relacionamento pai-filho) $script = "require('child_process').exec(`"$conhostCmd`")" & $node -e $script # 5. OPCIONAL: Crie tarefa agendada para persistência $taskName = "SystemUpdate" $action = New-ScheduledTaskAction -Execute $node -Argument "-e `"$script`"" $trigger = New-ScheduledTaskTrigger -AtLogOn Register-ScheduledTask -TaskName $taskName -Action $action -Trigger $trigger -RunLevel Highest -Force -
Comandos de Limpeza
# Remover tarefa agendada Unregister-ScheduledTask -TaskName "SystemUpdate" -Confirm:$false # Excluir carga útil Remove-Item -Path "$env:TEMPpayload.js" -Force # Pare quaisquer processos conhost remanescentes gerados pelo teste Get-Process conhost -ErrorAction SilentlyContinue | Where-Object { $_.Path -eq 'C:WindowsSystem32conhost.exe' -and $_.CommandLine -match '--headless' } | Stop-Process -Force