Banco de Dados de Ameaças Malware Malware CanisterWorm

Malware CanisterWorm

Um ataque sofisticado à cadeia de suprimentos, inicialmente direcionado ao amplamente utilizado scanner Trivy, escalou para uma violação mais ampla que afeta diversos pacotes npm. Os agentes da ameaça por trás da campanha são suspeitos de terem implantado um worm autopropagável, até então desconhecido, chamado CanisterWorm, aumentando significativamente a escala e o impacto da intrusão.

O malware deriva seu nome do uso de um canister do Protocolo de Computador da Internet (ICP), contratos inteligentes resistentes a adulteração hospedados em um blockchain descentralizado, como parte de sua infraestrutura de comando. Este é o primeiro caso documentado publicamente de canisters ICP sendo usados como arma para recuperar endpoints de Comando e Controle (C2), introduzindo uma tática inovadora e resiliente que complica os esforços tradicionais de mitigação.

Pacotes comprometidos e vetor de acesso inicial

O ataque afetou vários pacotes npm em diferentes âmbitos, demonstrando um amplo raio de impacto em toda a cadeia de suprimentos de software:

  • 28 pacotes sob o escopo @EmilGroup
  • 16 pacotes sob o escopo do @opengov
  • Pacotes adicionais, incluindo @teale.io/eslint-config, @airtm/uuid-base32 e @pypestream/floating-ui-dom.

Esta campanha surge logo após uma violação de credenciais que permitiu aos atacantes publicar versões maliciosas de ferramentas relacionadas ao Trivy, especificamente trivy, trivy-action e setup-trivy, que continham funcionalidades de roubo de credenciais embutidas. Acredita-se que a operação esteja ligada a um grupo de cibercriminosos focado em computação em nuvem, identificado como TeamPCP.

Fluxo de trabalho de infecção e infraestrutura de comando descentralizada

A cadeia de infecção começa durante o processo de instalação do pacote npm, onde um script de pós-instalação executa um carregador. Este carregador implanta um backdoor baseado em Python, projetado para se comunicar com o canister do ICP. O canister atua como um resolvedor de dead drop, retornando uma URL que direciona o sistema infectado a baixar e executar o payload da próxima etapa.

A natureza descentralizada da infraestrutura ICP proporciona uma vantagem significativa aos atacantes. Como o canister pode atualizar dinamicamente a URL do payload, os agentes de ameaças podem distribuir novos binários maliciosos por todos os sistemas infectados sem modificar o malware implantado. Essa arquitetura também torna os esforços de remoção consideravelmente mais desafiadores.

Mecanismo de Persistência e Técnicas de Camuflagem

A persistência é alcançada através da criação de um serviço de usuário systemd configurado para reiniciar automaticamente o processo malicioso. As principais características incluem:

  • Reinicialização automática imposta através da diretiva Restart=always
  • Um atraso de 5 segundos antes de relançar o backdoor caso seja encerrado.
  • Disfarçar o serviço como um software legítimo de monitoramento do PostgreSQL sob o nome 'pgmon'.

Essa abordagem garante a operação contínua, minimizando a probabilidade de detecção, ao se integrar aos serviços legítimos do sistema.

Entrega adaptativa de carga útil e comportamento do interruptor de segurança

O backdoor comunica-se periodicamente com o canister ICP a cada 50 minutos, usando um User-Agent de navegador falsificado para evitar suspeitas. A URL retornada determina a próxima ação:

  • Se a URL apontar para uma carga útil válida, o malware a baixa e a executa.
  • Se o URL contiver 'youtube.com', o malware entrará em estado inativo.

Esse mecanismo funciona como um interruptor remoto. Ao alternar a URL do canister entre um link benigno do YouTube e um payload malicioso, o atacante pode ativar ou desativar o malware em todos os sistemas infectados. É importante ressaltar que os payloads executados anteriormente continuam rodando em segundo plano, já que o malware não encerra os processos anteriores.

Um mecanismo de desativação semelhante, baseado no YouTube, também foi observado em um binário do Trivy infectado por um trojan (versão 0.69.4), que se comunica com a mesma infraestrutura do ICP por meio de um dropper em Python separado.

Capacidades dos vermes e propagação automatizada

Inicialmente, a propagação dependia de um script executado manualmente chamado deploy.js, que utilizava tokens de autenticação npm roubados para injetar código malicioso em pacotes acessíveis. Esse script não era executado durante a instalação, mas servia como uma ferramenta independente para ampliar o alcance do ataque.

As variantes subsequentes do CanisterWorm evoluíram significativamente. Em versões mais recentes, como as encontradas em @teale.io/eslint-config (versões 1.8.11 e 1.8.12), o worm incorpora a autopropagação diretamente no processo de instalação do pacote. O mecanismo atualizado inclui:

  • Extração de tokens de autenticação npm do ambiente infectado
  • Execução imediata da rotina de propagação como um processo em segundo plano independente.
  • Publicação automatizada de pacotes comprometidos usando credenciais coletadas.

Essa mudança transforma o ataque de uma campanha operada manualmente em um sistema de propagação totalmente autônomo.

Escalada para uma ameaça autossustentável na cadeia de suprimentos

A introdução da coleta automatizada de tokens e da autopropagação representa uma escalada crítica. Qualquer estação de trabalho de desenvolvedor ou pipeline de CI/CD que instale um pacote comprometido e contenha credenciais npm acessíveis torna-se um nó de propagação ativo. Isso cria um efeito cascata no qual pacotes infectados levam a mais infecções em dependências subsequentes.

Nessa fase, a ameaça evolui de uma simples invasão de conta para um ecossistema autossustentável de distribuição de malware. Cada novo ambiente infectado contribui para a disseminação, permitindo um crescimento exponencial e tornando o controle significativamente mais difícil.

Para agravar a preocupação, os artefatos de teste, como uma carga útil provisória ('hello123'), indicam que os atacantes estão refinando e validando ativamente a cadeia de ataque antes de implantar binários maliciosos totalmente operacionais.

Tendendo

Mais visto

Carregando...