Segurança

Ataque à cadeia de suprimentos à BdThemes envenena JSON para criar administradores fraudulentos no WordPress

Pesquisadores de cibersegurança alertam para um ataque à cadeia de suprimentos que afetou o fornecedor de plugins do WordPress BdThemes, levando a equipe de plugins da plataforma de CMS a desativar temporariamente os downloads. Diferente de ataques tradicionais, nenhum arquivo de código-fonte foi modificado no repositório oficial do WordPress.org.


Ravie Lakshmanan Terça - 11 de Agosto de 2026 às 05:42
The Hacker News

Pesquisadores de cibersegurança alertam para um ataque à cadeia de suprimentos que afetou o fornecedor de plugins do WordPress BdThemes, levando a equipe de plugins da plataforma de sistemas de gerenciamento de conteúdo (CMS, na sigla em inglês) a desativar temporariamente os downloads.

"Diferente dos ataques tradicionais à cadeia de suprimentos de software, nenhum arquivo de código-fonte foi modificado no repositório oficial do WordPress.org", afirmou o pesquisador da Wordfence, Paolo Tresso. "Em vez disso, os agentes de ameaça envenenaram um fluxo de dados JSON remoto e estático, buscado por um componente administrativo de banner promocional".

A lista de plugins afetados é a seguinte:

  • Element Pack Addons for Elementor – Elementor Widgets, Elementor Templates, Elementor Addons [bdthemes-element-pack-lite] - mais de 100.000 instalações ativas
  • Live Copy Paste for Elementor – Cross Domain Copy Paste & Page Duplicator [live-copy-paste] - mais de 6.000 instalações ativas
  • Pixel Gallery Addons for Elementor – Easy Grid, Creative Gallery, Drag and Drop Grid, Custom Grid Layout, Portfolio Gallery [pixel-gallery] - N/D
  • Prime Slider Addons for Elementor – Widgets, Templates & Elementor Addons [bdthemes-prime-slider-lite] - N/D
  • Smart Admin Assistant – Dashboard and Site Enhancements [smart-admin-assistant] - N/D
  • Ultimate Post Kit Addons for Elementor [ultimate-post-kit] - N/D
  • Ultimate Store Kit – Addon For WooCommerce, EDD and Elementor [ultimate-store-kit] - mais de 6.000 instalações ativas

Usuários que visitam as páginas de listagem de cada um dos plugins mencionados no diretório de plugins do WordPress visualizam uma mensagem informando que eles foram fechados em 7 ou 8 de agosto de 2026 e que não estão disponíveis para download enquanto aguardam uma "revisão completa".

O problema, segundo a empresa de segurança do WordPress, está enraizado em um componente interno chamado Biggopti, distribuído junto com os plugins. O sistema foi projetado para buscar banners promocionais em seu servidor de API e renderizá-los no painel administrativo do WordPress, buscando arquivos JSON relevantes em um bucket do DigitalOcean Spaces.

A biblioteca foi considerada vulnerável a uma falha de cross-site scripting (XSS) no código de análise da resposta JSON, por meio do parâmetro "display_id" da API Sigmative, devido ao escape insuficiente no lado do cliente. Como resultado, um invasor que consiga comprometer a API pode injetar scripts web arbitrários em páginas, que são executados toda vez que um usuário acessa essas páginas.

Como o script é executado em cada carregamento de página do "wp-admin", o código injetado é ativado silenciosamente no navegador de qualquer administrador conectado. A vulnerabilidade recebeu nota 5,4 no sistema de pontuação CVSS (Common Vulnerability Scoring System), indicando gravidade média.

Segundo relatos, a alteração teria sido introduzida pela primeira vez em 1º de março de 2026, no "bdthemes-prime-slider-lite", antes de ser aplicada aos demais. O ataque se destaca por ser totalmente conduzido por meio da API e não exigir atualizações de plugins nem modificação de arquivos em disco.

"Agentes maliciosos obtiveram acesso de escrita a esse bucket, substituindo as respostas JSON legítimas por cargas úteis (payloads) elaboradas para explorar essa vulnerabilidade", afirmou a Wordfence. "O XSS é acionado dentro do navegador de cada administrador conectado, de forma silenciosa, em cada carregamento de página do wp-admin. A partir daí, o script injetado cria contas de administrador fraudulentas, faz upload de um plugin de web shell e contata um servidor de comando e controle (C2)".

A carga útil principal é entregue aos plugins usando o endpoint da API "api-data-all-records". Um arquivo JavaScript chamado "w2.js" realiza as seguintes ações:

  • Contata o servidor C2 ("ia-cdn[.]com/fz/c") com a origem do site da vítima para buscar instruções de direcionamento. A execução é abortada se o servidor C2 retornar um status "skip" ou "done".
  • Cria um novo administrador fraudulento por meio da API REST do WordPress.
  • Baixa um arquivo ZIP de plugin falso do servidor C2 e o instala por meio do formulário padrão de upload de plugins, resultando na implantação de um web shell PHP ("emer-run.php").
  • Aciona o web shell para instalar dois módulos de persistência no diretório de plugins Must-Use (mu-plugins): um é um "backdoor magic-login" que permite a entrada administrativa não autenticada por meio de um parâmetro de URL (?_wplogin=<token>), mirando o administrador cadastrado há mais tempo no site, e o outro é um módulo stealth de antianálise que se conecta às consultas do banco de dados do WordPress para ocultar a presença das contas de usuário fraudulentas na lista de usuários administrativos e exibir a contagem total de usuários excluindo-as.

Uma carga útil alternativa ("x.js"), encontrada hospedada na infraestrutura do desenvolvedor do plugin, é servida às vítimas usando o endpoint da API "api-data-records". Ela foi projetada para gerar credenciais administrativas "determinísticas", derivadas matematicamente do nome de host (hostname) do site da vítima.

"Esse algoritmo produz nomes de usuário previsíveis (bd_ seguido por um hash base36 de 6 caracteres) e senhas (Bd@26! seguido pelo hash e x), associando-os a um endereço de e-mail @wordpress.org", afirmou a Wordfence. "Como as credenciais são determinísticas, os agentes de ameaça não precisam armazenar listas de sites comprometidos de forma centralizada, e os times de resposta a incidentes podem calcular o nome de usuário e a senha exatos para investigar em domínios suspeitos".

As credenciais geradas são então utilizadas para criar um usuário administrador malicioso, e os resultados do ataque são exfiltrados de volta para o servidor C2.

Avalia-se que o servidor C2 utilizado na campanha está relacionado a outros dois ataques à cadeia de suprimentos de software envolvendo o Advanced Responsive Video Embedder (CVE-2026-18072) e o OptinMonster nos últimos meses. Nos dois casos, os plugins do WordPress foram backdooreados para conceder acesso administrativo total a invasores não autenticados, seja por meio de um único token codificado, seja por meio de uma conta de administrador oculta e um plugin disfarçado que eram criados e instalados somente quando um administrador do site fazia login.

Isso indica que o objetivo final da campanha é estabelecer persistência administrativa encoberta e execução remota de código em ambientes WordPress.

"O fato de registros JSON maliciosos e da carga útil secundária x.js terem sido enviados diretamente para o bucket do próprio fornecedor indica um grave comprometimento upstream das credenciais de armazenamento em nuvem ou da infraestrutura interna da BdThemes", afirmou a Wordfence.

O caso ocorre poucos dias depois de o WordPress ter corrigido uma falha de XSS refletido com pré-autenticação (CVE-2026-64638, também conhecida como XSS2Shell, com pontuação CVSS de 8,9) que pode ser explorada para obter execução de código PHP no servidor quando um administrador conectado interage com uma página controlada pelo invasor.

Article The Hacker News thehackernews.com