Campanha PhantomSub usa 101 pacotes do npm para inscrever desenvolvedores em grupos e canais do WhatsApp
Uma operação identificada como PhantomSub reuniu 101 pacotes maliciosos publicados no npm. Eles podem usar sessões autenticadas do WhatsApp para adicionar contas a grupos ou inscrevê-las em canais sem que os usuários autorizem a ação. A campanha já soma aproximadamente 490 mil downloads, dos quais cerca de 116 mil ocorreram em um período de 30 dias.
De acordo com pesquisadores da OX Security, os pacotes se aproveitam do Baileys, uma biblioteca de código aberto que permite interagir com o WhatsApp por meio de programas. Quando um desenvolvedor conecta uma conta ou sessão válida a um projeto, o código pode executar inscrições automáticas que não fazem parte do funcionamento esperado da biblioteca.
Entre os nomes associados à campanha estão `ourin-baileys`, `@nexustechpro/baileys`, `neuralwhatsapp`, `cloud-baileys`, `my-auto-follow`, `eliteprotech-baileys` e `chromestaff-baileys`. As variações de nome fazem referência ao Baileys, o que pode dar a impressão de que se trata de ferramentas legítimas ou de versões modificadas para finalidades comuns de desenvolvimento.
A atividade não surgiu de forma isolada. Em agosto de 2026, a SafeDep identificou versões derivadas do Baileys que faziam contas usadas por desenvolvedores seguirem, sem aviso, canais controlados pelos autores dos pacotes. Algumas também adicionavam endereços publicitários dos responsáveis a imagens e vídeos enviados pelos bots.
No mês seguinte, pesquisadores da Xygeni relataram outro caso: o pacote `@dappaoffc/baileys-mod` inscrevia a sessão autenticada de um bot em canais de newsletter operados pelos responsáveis pela biblioteca. Esses episódios mostram como dependências de software podem ser usadas para manipular contas de mensagens quando recebem acesso a uma sessão ativa.
A análise da PhantomSub identificou três formas de distribuir os identificadores dos grupos e canais. Em 19 pacotes, os dados eram consultados remotamente no GitHub durante a execução. Em outros 60, os identificadores estavam gravados em texto aberto no código. Já 14 pacotes usavam informações codificadas e ofuscadas, dificultando a inspeção manual.
Os destinos incluem canais ligados à promoção e venda de contas, ferramentas para jogos, aplicativos e serviços digitais. Um grupo analisado parece operar na Indonésia e divulga produtos associados a jogos como Mobile Legends: Bang Bang e ao TikTok. As publicações também exibem um número vinculado a uma conta comercial do WhatsApp chamada “Dan”.
Entre os canais identificados estão Neural, com 798 seguidores; MONTE – BMG, com cerca de mil; CORTANA TECH, com aproximadamente 1,3 mil; e Fyxzpedia.ID – Utama, com perto de 4,8 mil. O canal Neural, por exemplo, promove a venda de recursos para jogos em um marketplace.
Segundo os pesquisadores, parte desses espaços divulga bots, scripts, serviços de criação de bots, arquivos APK apresentados como versões “premium” e ações para aumentar o alcance em redes sociais. Nesse tipo de atividade, um número elevado de seguidores pode ser usado como prova social para tornar as ofertas mais atraentes.
A equipe também encontrou sinais de que pacotes diferentes podem estar ligados à mesma infraestrutura. Identificadores de canais, listas remotas e contas do GitHub aparecem associados a bibliotecas com nomes e responsáveis distintos. Essa repetição indica que pacotes aparentemente independentes podem direcionar novos seguidores para os mesmos destinos.
Por que esse tipo de pacote representa um risco
O problema vai além de instalar uma dependência com código indesejado. Ao conectar uma conta do WhatsApp a uma biblioteca, o desenvolvedor pode conceder acesso a uma sessão autenticada. Se o pacote executar ações ocultas, a conta poderá participar de grupos ou seguir canais sem consentimento, expondo o usuário a mensagens, publicidade e possíveis tentativas de fraude.
O risco também alcança empresas. Um pacote comprometido pode entrar em um projeto por meio de um desenvolvedor, de um sistema automatizado de integração ou de uma dependência indireta – isto é, outra biblioteca instalada pelo projeto. Por isso, conferir apenas o nome do pacote principal nem sempre basta.
Para reduzir a exposição, é recomendável verificar quem mantém a biblioteca, quando ela foi publicada, se há histórico consistente de versões e se as permissões solicitadas são compatíveis com a finalidade do projeto. Pacotes que pedem a conexão de uma conta pessoal sem explicar claramente por que precisam dela devem ser tratados com cautela.
Também é útil fixar versões conhecidas das dependências, revisar alterações antes de atualizar bibliotecas e monitorar os pacotes usados nos projetos. Em organizações, equipes de segurança podem bloquear os nomes identificados na campanha e criar alertas para detectar dependências suspeitas ou alterações inesperadas no código.
Quem já utilizou um dos pacotes associados à PhantomSub deve conferir se sua conta entrou em grupos ou canais desconhecidos e sair deles. Também vale revisar as sessões e os dispositivos conectados ao WhatsApp, encerrar acessos que não sejam reconhecidos e substituir a biblioteca comprometida por uma alternativa confiável.
A inspeção do código pode ajudar a identificar consultas a listas remotas de canais, identificadores embutidos ou funções de inscrição automática. Ainda assim, como algumas variantes escondem esses dados, uma revisão manual não garante que todo comportamento malicioso seja encontrado. Em projetos críticos, a análise deve incluir ferramentas de segurança para dependências e testes em ambiente isolado, sem vincular contas pessoais.
A principal medida preventiva é limitar o acesso concedido a bibliotecas externas. Uma ferramenta de automação deve receber apenas as permissões indispensáveis e ser conectada a uma conta de teste sempre que possível. Assim, mesmo que uma dependência se comporte de maneira inesperada, o impacto sobre contas pessoais, equipes e sistemas de produção tende a ser menor.
