Node.js é usado para executar malware em ataques direcionados a empresas

5 минут чтения

Node.js passa a ser explorado para executar malware em ataques direcionados

O Node.js, conhecido por permitir a execução de aplicações JavaScript fora do navegador, passou a ser usado por cibercriminosos como uma ferramenta para distribuir malware e garantir acesso prolongado a redes corporativas. A estratégia explora um componente legítimo, assinado digitalmente e presente em muitos ambientes de desenvolvimento, para dificultar a identificação de atividades maliciosas.

Os ataques começaram a ser observados com maior frequência desde fevereiro de 2026. Entre os alvos estão órgãos governamentais, empresas de tecnologia, redes hoteleiras e instituições financeiras. O uso do runtime não indica uma falha específica no Node.js, mas sim o abuso de um software confiável para executar códigos perigosos.

Por que os invasores utilizam o Node.js

O principal elemento explorado é o arquivo `node.exe`. Por ser um binário legítimo, ele pode passar por verificações que priorizam a identificação de arquivos desconhecidos ou não assinados. Em vez de lançar diretamente um executável malicioso, o invasor utiliza o Node.js para interpretar scripts JavaScript armazenados localmente ou baixados durante a invasão.

Essa abordagem pode contornar mecanismos de defesa baseados exclusivamente em assinaturas. Como o processo em execução pertence a uma aplicação reconhecida, a atividade pode parecer compatível com tarefas administrativas ou de desenvolvimento. Ainda assim, o comportamento do processo – como conexões externas, gravações no Registro e execução de comandos – pode revelar a intrusão.

Engenharia social abre caminho para a infecção

Em um incidente envolvendo uma empresa asiática do setor de tecnologia, as primeiras tentativas dos criminosos foram bloqueadas por soluções de segurança quando eles tentaram instalar ferramentas conhecidas, como AdaptixC2 e Cobalt Strike. Diante da barreira, os atacantes mudaram de estratégia e recorreram ao Node.js.

O acesso inicial ocorreu por meio do ClickFix, uma técnica de engenharia social que apresenta à vítima uma falsa mensagem de erro, verificação ou atualização. O usuário é orientado a copiar e executar comandos no sistema, acreditando que está corrigindo um problema. Na prática, o procedimento concede aos criminosos uma porta de entrada para instalar componentes adicionais.

Depois que a vítima executou as instruções, os invasores baixaram o instalador oficial do Node.js. A partir dele, executaram um implante desenvolvido em JavaScript, evitando depender de um binário desconhecido que poderia ser bloqueado imediatamente pelos mecanismos de proteção.

Persistência garantida no Windows

O malware instalado modificou o Registro do Windows para criar um mecanismo de inicialização automática. Dessa forma, o Node.js era acionado novamente sempre que o usuário fazia login no computador. A persistência permitia que os criminosos retomassem as operações mesmo após uma reinicialização.

Esse método também pode dificultar a investigação quando a equipe de segurança procura apenas executáveis suspeitos em pastas temporárias. O arquivo legítimo pode permanecer instalado em seu diretório habitual, enquanto o código malicioso é carregado por parâmetros, scripts ou arquivos armazenados em locais menos evidentes.

Além da chave de inicialização, ameaças desse tipo podem utilizar tarefas agendadas, serviços, atalhos modificados e extensões de navegador para manter o acesso. Por isso, a análise deve considerar a relação entre processos, arquivos, comandos executados e conexões realizadas.

Comunicação escondida em contratos inteligentes

Outro aspecto da campanha foi a comunicação com gateways associados à blockchain Ethereum. Aparentemente, os operadores utilizaram contratos inteligentes para localizar instruções ou obter cargas adicionais. Essa técnica cria uma camada extra de dificuldade para o bloqueio, pois o conteúdo pode ser consultado por meio de uma infraestrutura distribuída.

Ao utilizar a blockchain como ponto de apoio, o criminoso reduz a dependência de um servidor tradicional, que poderia ser identificado, derrubado ou bloqueado. O contrato pode funcionar como um repositório público de comandos, endereços ou informações codificadas. A infraestrutura, porém, não torna o malware invisível: consultas frequentes, padrões incomuns de rede e execução de scripts fora do contexto esperado continuam sendo indicadores relevantes.

A mesma abordagem foi relacionada a ferramentas e famílias de malware como ModeloRAT, Mistic, EtherRAT e uma variante do AsukaStealer. Esses códigos podem ser usados para roubar informações, controlar o computador comprometido, coletar credenciais e preparar novas etapas da invasão.

Relação com grupos de acesso inicial

Parte das campanhas foi associada ao operador de acesso inicial Woodgnat, também conhecido como KongTuke. Esse ecossistema já apareceu relacionado a operações que envolveram grupos e famílias de ransomware como Qilin, Interlock, Rhysida, Akira, 8Base, Black Basta e Embargo.

A presença do Node.js, entretanto, não permite atribuir todos os ataques a um único grupo. O software é uma ferramenta disponível publicamente e pode ser incorporado por diferentes operadores, desde intermediários que vendem acesso a redes até grupos responsáveis por roubo de dados e extorsão.

Como as empresas podem reduzir o risco

A proteção começa pelo controle de aplicações autorizadas. Organizações devem manter um inventário de versões do Node.js instaladas, identificar quais usuários realmente precisam do runtime e remover cópias não utilizadas. Em ambientes corporativos, a instalação de novos componentes deve depender de políticas administrativas e não de decisões individuais.

Também é importante monitorar a execução do `node.exe`. O processo merece atenção quando é iniciado por aplicativos do Office, navegadores, clientes de e-mail, scripts desconhecidos ou diretórios temporários. A execução de JavaScript por contas sem função de desenvolvimento, especialmente em servidores e estações administrativas, deve ser investigada.

Soluções de detecção e resposta podem estabelecer regras baseadas em comportamento. Entre os sinais de alerta estão a criação de chaves de inicialização, conexões com redes externas logo após a execução do Node.js, download de arquivos codificados e lançamento de comandos do sistema por meio de scripts.

A defesa contra ClickFix exige treinamento contínuo. Funcionários devem ser orientados a não copiar comandos fornecidos por páginas, janelas de erro ou supostos atendentes. Mensagens que pedem o uso de PowerShell, Prompt de Comando ou ferramentas de execução merecem verificação por canais oficiais.

Por fim, equipes de segurança devem combinar bloqueios de rede, autenticação multifator, privilégios mínimos, correções atualizadas e registros detalhados de processos. O abuso de uma ferramenta legítima mostra que a confiança no nome ou na assinatura de um arquivo não é suficiente: é necessário avaliar o contexto, a origem e o comportamento de cada execução.