Um ataque à cadeia de fornecimento descoberto pela empresa de segurança Sansec a 13 de junho de 2026 comprometeu os ficheiros JavaScript distribuídos pela rede de entrega de conteúdos (CDN) da Awesome Motive — a empresa responsável pelos plugins WordPress OptinMonster, TrustPulse e PushEngage. O código malicioso injetado nesses ficheiros foi servido automaticamente a todos os sites que carregam esses plugins, expondo potencialmente mais de 1,2 milhões de sites WordPress em todo o mundo. Qualquer site que tenha tido um administrador com sessão iniciada durante a janela de comprometimento deve ser considerado afetado.
Como funcionou o ataque
O ataque não explorou diretamente uma vulnerabilidade dos plugins instalados nos sites das vítimas. Em vez disso, os atacantes comprometeram a infraestrutura upstream da Awesome Motive — concretamente, os ficheiros JavaScript que os plugins carregam a partir dos servidores CDN da empresa. Qualquer site que use OptinMonster, TrustPulse ou PushEngage carrega automaticamente esses ficheiros externos para funcionar. Ao modificar os ficheiros na origem, os atacantes conseguiram que o código malicioso chegasse aos sites de forma transparente, sem que os proprietários tivessem de fazer nada.
Segundo a Awesome Motive, os atacantes acederam ao servidor que aloja o website de marketing da empresa explorando uma vulnerabilidade conhecida no plugin UpdraftPlus — um plugin de backup do WordPress instalado nesse servidor. A partir desse ponto de entrada, encontraram uma chave de API da CDN armazenada no servidor, que lhes permitiu modificar os ficheiros JavaScript servidos aos clientes sem comprometerem os servidores de aplicação principais da empresa.
A janela de comprometimento confirmada foi:
- OptinMonster e TrustPulse: código malicioso ativo entre as 22h17 e as 22h42 UTC de 12 de junho de 2026 (25 minutos);
- PushEngage: código malicioso ativo até às 19h02 UTC de 13 de junho de 2026.
O que o código malicioso fazia
O payload injetado foi concebido para ser furtivo e paciente. Só se ativava quando detetava um administrador do WordPress com sessão iniciada no site, evitando a execução em browsers headless e ambientes de análise automatizada — o que dificultou a deteção por ferramentas de varrimento.
Uma vez acionado, o script executava as seguintes ações:
- Recolhia metadados do site e extraía tokens de autenticação das APIs REST e AJAX do WordPress, usando as credenciais legítimas do administrador;
- Criava contas de administrador não autorizadas — uma fixa com o nome developer_api1 e contas adicionais com nomes aleatórios no formato dev_xxxxxx;
- Instalava um plugin backdoor oculto (disfarçado como “content-delivery-helper” ou “database-optimizer”) que se escondia do painel de administração, das respostas da API, dos mecanismos de atualização e dos registos de atividade — e permitia execução remota de código;
- Enviava as credenciais roubadas, encriptadas, para um servidor de comando e controlo alojado em tidio[.]cc — um domínio deliberadamente semelhante ao serviço legítimo tidio.com, registado a 28 de abril de 2026.
O que a Awesome Motive fez após detetar o ataque
Depois de detetar a adulteração, a Awesome Motive reverteu os ficheiros afetados, purgou a cache da CDN, rotacionou a chave comprometida e as credenciais associadas, e migrou o website de marketing para nova infraestrutura. A empresa confirmou que os seus servidores de aplicação, código fonte e base de dados de clientes não foram comprometidos.
Contudo, como sublinha a Sansec, a reversão dos ficheiros CDN não elimina os danos já causados: as contas de administrador criadas e os backdoors instalados durante a janela de comprometimento permanecem ativos nos sites afetados até serem removidos manualmente.
O que deve verificar no seu site WordPress
Se o seu site WordPress tem — ou tinha — algum dos três plugins instalados, e se um administrador tinha sessão iniciada durante as janelas de comprometimento indicadas, deve verificar imediatamente:
- Contas de administrador suspeitas: procure as contas
developer_api1e qualquer conta com o padrãodev_xxxxxxna lista de utilizadores do WordPress e elimine-as; - Plugins ocultos: verifique se existem plugins com os nomes
content-delivery-helperoudatabase-optimizer— se não os reconhece, elimine-os imediatamente; - Domínio de C2: pesquise nos registos do servidor ligações saídas para
tidio.cc(IP: 84.201.6.54); - String de identificação: o XOR key
jX9kM2nP4qR6sT8vpode ser usado para pesquisar nos ficheiros do site.
Se encontrar qualquer um destes indicadores, considere o site comprometido. A recomendação dos investigadores é restaurar o site a partir de um backup anterior a 12 de junho de 2026 e alterar todas as passwords de administrador.
Porque é que isto importa — a ameaça da cadeia de fornecimento em contexto
Este ataque segue o padrão do ataque Polyfill de 2024, também descoberto pela Sansec — em ambos os casos, os atacantes comprometeram infraestrutura de distribuição de terceiros em vez de atacar diretamente os sites das vítimas. A consequência é que o ataque é invisível do ponto de vista do proprietário do site: os ficheiros são carregados a partir de domínios de confiança, não há alteração nos plugins instalados localmente, e o código malicioso só se ativa quando presente um administrador.
Para os proprietários de sites WordPress em Portugal — desde lojas de e-commerce a sites institucionais e publicações digitais — o caso ilustra um risco que as verificações habituais de segurança não cobrem: os plugins que usam podem carregar código de servidores externos que estão fora do seu controlo. A confiança implícita nessa infraestrutura de terceiros é precisamente o que os atacantes exploraram.
No contexto do Decreto-Lei n.º 125/2025 (transposição da NIS2), as entidades que gerem serviços digitais têm a obrigação de avaliar os riscos da cadeia de fornecimento de software — incluindo dependências de CDNs e serviços externos.
Esta informação tem caráter noticioso e baseia-se em dados divulgados publicamente pela Sansec, pelo Bleeping Computer, pela Patchstack, pelo Cyber Insider, pela Security Affairs e pela Awesome Motive, entre 13 e 16 de junho de 2026.
