SOC Prime Bias: Crítico

31 Mar 2026 14:31 UTC

Ataque à Cadeia de Suprimentos no Axios Puxa Dependência Maliciosa do NPM

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Seguir
Ataque à Cadeia de Suprimentos no Axios Puxa Dependência Maliciosa do NPM
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Um pacote npm malicioso, plain-crypto-js@4.2.1, foi publicado e depois incluído como uma dependência transitiva por meio de lançamentos comprometidos do cliente HTTP JavaScript amplamente usado Axios. O pacote usa um script pós-instalação para entregar um trojan de acesso remoto em múltiplas etapas, direcionado a Windows, macOS e Linux. O ataque parece ter se baseado em tokens npm de longa duração, permitindo que os agentes de ameaça liberassem versões maliciosas fora do fluxo de lançamento habitual do projeto. Detectar a dependência alterada cedo pode impedir o RAT antes da execução nos sistemas afetados.

Investigação

A pesquisa da Socket realizou uma análise estática do setup.js dropper e desofuscou strings codificadas para expor o domínio C2, lógica de entrega de carga e caminhos do sistema de arquivos alvo. Os pesquisadores identificaram três versões comprometidas do Axios e dois pacotes npm adicionais que continham o mesmo código malicioso. Eles também extraíram indicadores de rede, caminhos de arquivos e strings de agente de usuário que podem ser usados para engenharia de detecção e criação de regras.

Mitigação

As organizações devem revogar qualquer token npm de longa duração e girar as credenciais de todas as contas potencialmente afetadas. As versões comprometidas do Axios e quaisquer pacotes que dependem de plain-crypto-js@4.2.1 devem ser removidos ou rebaixados imediatamente. As equipes também devem revisar lockfiles, pipelines CI/CD e controles de segurança da cadeia de suprimentos de software para identificar atividades de publicação não autorizadas e reduzir a chance de compromisso de pacotes futuros.

Resposta

As equipes de segurança devem monitorar os logs de instalação do npm para referências a plain-crypto-js@4.2.1 e as versões afetadas do Axios. Regras de detecção devem ser criadas para execução do hook de pós-instalação, acesso à rede para sfrclak.com, e a string de agente de usuário malicioso. Se o compromisso for confirmado, os sistemas afetados devem ser isolados, a memória volátil deve ser coletada para análise, e o host deve ser reformatado se o RAT for encontrado.

Fluxo de Ataque

Detecções

MacOS Suspeito – Localizações e Nomes Plist (via file_event)

Equipe SOC Prime
31 Mar 2026

Processos Filhos Suspeitos do NodeJS [Windows] (via cmdline)

Equipe SOC Prime
31 Mar 2026

Upload/Download de Arquivo Remoto via Ferramentas Padrão (via cmdline)

Equipe SOC Prime
31 Mar 2026

Modificação de Permissões de Arquivos na Pasta Tmp Suspeita no MacOS (via cmdline)

Equipe SOC Prime
31 Mar 2026

Uso Suspeito de CURL (via cmdline)

Equipe SOC Prime
31 Mar 2026

Possível Execução por Uso de chmod e nohup em Comando Único (via cmdline)

Equipe SOC Prime
31 Mar 2026

Downloads para Pastas Suspeitas (via cmdline)

Equipe SOC Prime
31 Mar 2026

LOLBAS WScript / CScript (via process_creation)

Equipe SOC Prime
31 Mar 2026

Possibilidade de Execução Através de Linhas de Comando PowerShell Ocultas (via cmdline)

Equipe SOC Prime
31 Mar 2026

Uso de Nohup (via cmdline)

Equipe SOC Prime
31 Mar 2026

IOCs (SourceIP) para detectar: Ataque à Cadeia de Suprimentos no Axios Puxa Dependência Maliciosa do npm

Regras SOC Prime AI
31 Mar 2026

IOCs (DestinationIP) para detectar: Ataque à Cadeia de Suprimentos no Axios Puxa Dependência Maliciosa do npm

Regras SOC Prime AI
31 Mar 2026

IOCs (Emails) para detectar: Ataque à Cadeia de Suprimentos no Axios Puxa Dependência Maliciosa do npm

Regras SOC Prime AI
31 Mar 2026

Táticas de Evasão PowerShell e VBScript em Ataque à Cadeia de Suprimentos (Criação de Processo Windows)

Regras SOC Prime AI
31 Mar 2026

Detecção de Execução de Hook de Postinstall de Pacote npm Malicioso (Criação de Processo Linux)

Regras SOC Prime AI
31 Mar 2026

Detecção de Script Python Malicioso e Arquivo Temporário em Ataque à Cadeia de Suprimentos Linux (Evento de Arquivo Linux)

Regras SOC Prime AI
31 Mar 2026

Terminal do Windows Renomeado e VBScript Autodeletante Detectado (Evento de Arquivo Windows)

Regras SOC Prime AI
31 Mar 2026

Execução de Script PowerShell com Flags Ocultas e de Bypass (Windows PowerShell)

Regras SOC Prime AI
31 Mar 2026

Execução de Simulação

Pré-requisito: O Check Pré-voo de Telemetria & Baseline deve ter passado.

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 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 invasor que obteve privilégios de usuário limitados em uma estação de trabalho comprometida deseja baixar uma carga útil VBScript maliciosa via um pacote npm legítimo (cenário de cadeia de suprimentos). Para evitar a detecção genérica de PowerShell, o invasor copia powershell.exe para um novo arquivo chamado powershell_renamed.exe mas mantém a substring “powershell” no nome do arquivo (para que a verificação do Imagem|contendo ainda corresponda). Em seguida, o invasor executa uma busca “onde powershell” para enumerar o caminho do binário renomeado e finalmente inicia a carga VBScript com cscript //nologo para suprimir o banner do logotipo.

  • Script de Teste de Regressão:

    # -------------------------------------------------
    # Passo 1: Criar uma cópia renomeada de powershell.exe
    # -------------------------------------------------
    $src = "$env:SystemRootSystem32WindowsPowerShellv1.0powershell.exe"
    $dst = "$env:Temppowershell_renamed.exe"
    Copy-Item -Path $src -Destination $dst -Force
    
    # -------------------------------------------------
    # Passo 2: Usar 'onde' para referenciar o binário renomeado
    # -------------------------------------------------
    $whereOutput = & where.exe powershell_renamed
    Write-Host "PowerShell renomeado localizado em: $whereOutput"
    
    # -------------------------------------------------
    # Passo 3: Criar uma carga VBScript maliciosa simples
    # -------------------------------------------------
    $vbsPath = "$env:Tempmalicious.vbs"
    @"
    Set objShell = CreateObject("WScript.Shell")
    objShell.Run "cmd.exe /c echo pwned > $env:Temppwned.txt", 0, False
    "@ | Set-Content -Path $vbsPath -Encoding ASCII
    
    # -------------------------------------------------
    # Passo 4: Executar o VBScript silenciosamente usando cscript //nologo
    # -------------------------------------------------
    & $dst -Command "cscript //nologo `"$vbsPath`""
    # -------------------------------------------------
    # Fim da simulação
    # -------------------------------------------------
  • Comandos de Limpeza:

    # Remover o binário PowerShell renomeado
    Remove-Item -Path "$env:Temppowershell_renamed.exe" -Force -ErrorAction SilentlyContinue
    
    # Excluir o arquivo VBScript malicioso
    Remove-Item -Path "$env:Tempmalicious.vbs" -Force -ErrorAction SilentlyContinue
    
    # Remover evidência de execução
    Remove-Item -Path "$env:Temppwned.txt" -Force -ErrorAction SilentlyContinue