Mirage Kitten Desdobra NodeRabbit e PollCat Através de Iscas de Ofertas de Emprego
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
O ator de ameaça vinculado ao Irã, Mirage Kitten, está executando uma campanha de ciberespionagem direcionada a engenheiros de software por meio de personas falsas de recrutadores. Os atacantes distribuem desafios de codificação trôjanizados que entregam dois RATs recém-identificados e multiplataforma, NodeRabbit e PollCat. Ambas as famílias de malware abusam dos ambientes Node.js para estabelecer persistência e acesso remoto em sistemas Windows, Linux e macOS.
Investigação
A Kaspersky identificou a atividade após descobrir uma amostra do NodeRabbit no Afeganistão e posteriormente encontrar variantes mais avançadas no Egito e na Etiópia. A investigação revelou uma cadeia de infecção sofisticada envolvendo pacotes npm maliciosos incorporados em arquivos de aplicativo web com aparência legítima. Os pesquisadores também identificaram o PollCat operando através de um desafio de codificação separado baseado em React.
Mitigação
As organizações devem impor controles rigorosos sobre dependências de pacotes npm de terceiros e usar ferramentas de revisão de código assistidas por IA para identificar importações ou comportamentos suspeitos. Os desenvolvedores devem ser treinados para reconhecer tentativas de engenharia social em plataformas de redes profissionais. As equipes de segurança também devem monitorar extensões não autorizadas do Visual Studio Code e modificações inesperadas nos hooks do Git.
Resposta
Se for detectada atividade maliciosa, as estações de trabalho dos desenvolvedores afetados devem ser isoladas imediatamente para evitar movimentação lateral e comunicação C2 adicional. Os respondedores devem auditar arquivos node_modules diretórios, hooks do Git e extensões do VS Code para arquivos não autorizados ou suspeitos. Logs de infraestrutura em nuvem, particularmente do Azure e Cloudflare, também devem ser revisados para conexões anômalas originadas de ambientes de desenvolvedores.
Fluxo de Ataque
Detecções
Powershell Ejecutando Arquivo Em Diretório Suspeito Usando Política de Execução Bypass (via cmdline)
Possível Node Criado Por Processo Conhecido Abusado (via cmdline)
Node.Js Executando Arquivo Localizado Em Diretório Incomum (via cmdline)
IOCs (HashSha256) para detectar: A Oferta de Emprego Tem Garras: Mirage Kitten Implanta NodeRabbit e PollCat
Inspeção de Variáveis de Ambiente Proxy do NodeRabbit e Tunelamento HTTP CONNECT [Proxy]
Detecção de RAT NodeRabbit e PollCat de Mirage Kitten [Criação de Processo no Windows]
Detecção do RAT NodeRabbit em Desafios de Codificação Trôjanizados [Criação de Processo no Linux]
Execução de Simulação
-
Narrativa de Ataque & Comandos: O adversário conseguiu enganar um desenvolvedor para executar um repositório “desafio de codificação” malicioso. O desenvolvedor executa um script Node.js destinado a simular um ambiente de codificação. No entanto, o script contém o
taskflowargumento, que faz parte da rotina de inicialização do RAT NodeRabbit. O objetivo é estabelecer um ponto de acesso remoto disfarçando-se como uma ferramenta de desenvolvimento legítima. A execução denode taskflow.jsproduzirá a telemetria de linha de comando exata necessária para acionar a regra. -
Script de Teste de Regressão:
# Script de simulação para detecção de RAT NodeRabbit # Este script cria um arquivo javascript dummy e o executa usando Node.js # com o argumento específico 'taskflow' para acionar a regra de detecção. $dummyFile = "challenge_setup.js" "console.log('Iniciando desafio de codificação...');" | Out-File -FilePath $dummyFile -Encoding utf8 Write-Host "[+] Simulando execução do RAT NodeRabbit via argumento taskflow..." -ForegroundColor Cyan # Acionando a detecção: node <filename> <trigger_string> node $dummyFile taskflow Write-Host "[+] Comando de simulação executado." -ForegroundColor Green -
Comandos de Limpeza:
# Script de limpeza para remover artefatos de simulação Remove-Item -Path "challenge_setup.js" -ErrorAction SilentlyContinue Write-Host "[+] Limpeza completa. Artefatos de simulação removidos." -ForegroundColor Yellow