Falha no plugin Ninja Forms permite invadir sites WordPress

Escrito por
Jardeson Márcio
Jardeson Márcio é Jornalista e Mestre em Tecnologia Agroalimentar pela Universidade Federal da Paraíba. Com 8 anos de experiência escrevendo no SempreUpdate, Jardeson é um especialista...

Alerta de segurança urgente para administradores WordPress.

Uma nova campanha de ataques está mirando sites WordPress por meio de vulnerabilidades de XSS armazenado nos plugins Ninja Forms e WPC Product Bundles para WooCommerce. A falha no plugin Ninja Forms, identificada como CVE-2026-94504, está sendo usada junto com a CVE-2026-93836, presente no WPC Product Bundles, para executar JavaScript malicioso dentro da sessão de administradores.

O cenário é especialmente preocupante porque o ataque não termina na execução do código no navegador. Pesquisadores observaram uma cadeia de comprometimento capaz de instalar um plugin falso, criar contas administrativas ocultas, adicionar mecanismos alternativos de acesso e disponibilizar um gerenciador de arquivos malicioso. A campanha começou a ser observada em 4 de outubro de 2026 e passou a atingir usuários do Ninja Forms no dia seguinte.

O Ninja Forms está presente em mais de 500 mil instalações, ampliando significativamente o potencial de impacto. Por isso, administradores devem tratar essas vulnerabilidades como uma ameaça prática, especialmente se os plugins estiverem em versões antigas.

Como funciona a falha no plugin Ninja Forms

A campanha utiliza uma técnica conhecida como Cross-Site Scripting armazenado, ou Stored XSS. Diferentemente de um ataque que depende apenas de convencer uma vítima a acessar uma página externa, o código malicioso é armazenado dentro do próprio ambiente WordPress e posteriormente executado quando uma pessoa com privilégios elevados acessa o conteúdo contaminado.

No caso do Ninja Forms, a vulnerabilidade CVE-2026-94504 afeta versões até a 3.15.3. O problema está relacionado ao tratamento de determinados dados enviados por formulários no editor legado de submissões. Um invasor consegue inserir conteúdo JavaScript que posteriormente é interpretado no contexto administrativo do WordPress.

Um ponto importante é diferenciar injeção de execução. O atacante pode inserir o conteúdo malicioso sem possuir uma conta administrativa, mas o código precisa ser carregado em uma página visualizada por um administrador autenticado para obter o contexto privilegiado necessário à próxima etapa.

Na campanha observada, o código x.js é carregado a partir de uma infraestrutura controlada pelos invasores. Quando o administrador acessa a submissão comprometida, o JavaScript passa a operar com os privilégios disponíveis naquela sessão.

Imagem com a logomarca do WordPress

Entendendo as vulnerabilidades CVE-2026-94504 e CVE-2026-93836

A CVE-2026-94504 está associada ao Ninja Forms, enquanto a CVE-2026-93836 afeta o WPC Product Bundles para WooCommerce.

No WPC Product Bundles, versões até a 8.6.6 permitem que um valor malicioso seja inserido no parâmetro relacionado à quantidade de produtos. O sistema realiza uma conversão para número durante a validação, mas preserva o conteúdo original, permitindo que uma carga contendo código seja armazenada nos metadados de pedidos.

O problema também é classificado como CWE-79, referente à neutralização inadequada de entrada durante a geração de páginas. A CVE recebeu classificação alta, com pontuação CVSS 3.1 de 7,2 na base de dados consultada.

A partir daí, o princípio é semelhante ao observado no Ninja Forms: o conteúdo malicioso permanece armazenado até que uma página administrativa contendo os dados seja aberta.

A existência de duas portas de entrada diferentes é particularmente relevante. A análise da campanha mostra que os invasores utilizaram o mesmo payload contra os dois plugins, demonstrando que a operação não depende de uma única vulnerabilidade.

Ação do malware e criação de administradores invisíveis

O verdadeiro risco aparece depois que o JavaScript malicioso consegue executar na sessão de um administrador.

O código utiliza recursos legítimos do próprio WordPress, incluindo mecanismos de autenticação e nonces administrativos, para realizar ações que normalmente exigiriam interação direta do administrador. Entre elas está o envio e a instalação de um plugin malicioso que se apresenta como “WP Smart Thumbnails”, atribuído falsamente a “MediaPress Labs”.

O componente funciona como uma porta de entrada persistente. A análise da campanha identificou diferentes mecanismos de acesso, incluindo:

  • Uma conta de administrador visível;
  • Uma conta administrativa oculta, que não aparece normalmente na tela de usuários do WordPress;
  • Um mecanismo de login secreto, capaz de fornecer acesso administrativo;
  • Um gerenciador de arquivos sem autenticação convencional, usado para manipular arquivos do site e introduzir novos códigos maliciosos.

A existência de múltiplos mecanismos de persistência torna a limpeza muito mais complexa. Mesmo que o administrador encontre e remova o plugin falso, outros componentes podem permanecer no servidor e permitir que o invasor volte posteriormente.

Outro detalhe importante para investigações é que alguns arquivos utilizados pelo ataque podem apresentar datas antigas, uma técnica que dificulta análises baseadas exclusivamente no horário de modificação dos arquivos.

Atualização imediata e mitigação de danos

A primeira providência deve ser atualizar os plugins afetados.

Para o Ninja Forms, a versão que corrige a vulnerabilidade é a 3.15.4. Para o WPC Product Bundles, a correção está disponível a partir da 8.6.7. Administradores devem, porém, preferir sempre a versão estável mais recente disponível para cada plugin, em vez de permanecer propositalmente no primeiro lançamento que corrigiu a CVE.

A atualização é essencial, mas existe uma ressalva crítica: atualizar um plugin não remove uma infecção que já tenha ocorrido.

Sites que utilizavam versões vulneráveis durante o período de exploração devem ser tratados como potencialmente comprometidos. É necessário procurar plugins desconhecidos, contas administrativas não autorizadas, arquivos PHP suspeitos, alterações em mu-plugins, modificações recentes no banco de dados e outros mecanismos de persistência.

Também é recomendável revisar logs do servidor e do WordPress, verificar alterações inesperadas em arquivos e usuários, invalidar sessões administrativas e alterar senhas e credenciais importantes quando houver evidências de comprometimento.

Em incidentes confirmados, a investigação deve ir além da exclusão de um usuário suspeito. Backdoors podem permanecer em arquivos aparentemente legítimos, plugins auxiliares ou componentes carregados automaticamente pelo WordPress.

Conclusão e medidas de segurança contínuas

A campanha envolvendo Ninja Forms e WPC Product Bundles mostra como uma vulnerabilidade aparentemente limitada a XSS pode evoluir para um comprometimento completo de um site WordPress. O invasor não precisa necessariamente obter a senha de um administrador: basta conseguir armazenar o código malicioso e esperar que um usuário privilegiado acesse o conteúdo contaminado.

A falha no plugin Ninja Forms, em conjunto com a vulnerabilidade do WPC Product Bundles, demonstra também por que atualizações de segurança não devem ser adiadas. Uma instalação WordPress aparentemente funcional pode estar vulnerável mesmo quando o núcleo do sistema está atualizado.

Administradores devem verificar imediatamente as versões instaladas do Ninja Forms e do WPC Product Bundles, atualizar os componentes vulneráveis e investigar qualquer ambiente que tenha executado essas versões durante o período de exploração.

Se houver sinais de invasão, a prioridade deve ser realizar uma análise completa do servidor, remover todos os mecanismos de persistência identificados e restaurar a confiança do ambiente antes de considerá-lo novamente seguro.

Compartilhe este alerta com outros administradores, desenvolvedores e equipes responsáveis por sites WordPress. Em campanhas de exploração ativa, tempo de resposta pode ser a diferença entre apenas instalar uma atualização e precisar realizar uma investigação completa de incidente.

Compartilhe este artigo
Jardeson Márcio é Jornalista e Mestre em Tecnologia Agroalimentar pela Universidade Federal da Paraíba. Com 8 anos de experiência escrevendo no SempreUpdate, Jardeson é um especialista em Android, Apple, Cibersegurança e diversos outros temas do universo tecnológico. Seu foco é trazer análises aprofundadas, notícias e guias práticos sobre segurança digital, mobilidade, sistemas operacionais e as últimas inovações que moldam o cenário da tecnologia.