- Foi encontrado código malicioso na versão mais recente do plugin GravityForms para WordPress
- Trata-se de uma infecção no pacote oficial distribuído devido a uma violação da cadeia de suprimentos (supply chain breach)
- O GravityForms é amplamente usado como construtor de formulários em vários sites
- Pesquisadores de segurança estão investigando o alcance do impacto e a gravidade do risco
- Para sites que usam esse plugin, destaca-se a necessidade de verificação rápida e substituição
Visão geral da violação da cadeia de suprimentos no GravityForms
- Recentemente, foi detectado malware no plugin oficial GravityForms para WordPress
- Este incidente é considerado um caso representativo de violação da cadeia de suprimentos (Supply Chain Breach)
- Como a infecção ocorreu na fonte oficial, tanto instalações novas quanto existentes tiveram sua confiabilidade comprometida
GravityForms e o impacto na segurança
- O GravityForms é um plugin popular que facilita a criação e o gerenciamento de formulários em sites baseados em WordPress
- Como é amplamente utilizado, há grande possibilidade de que o alcance do dano de um ataque à cadeia de suprimentos seja bastante amplo
- O malware inserido desta vez pode se transformar em uma ameaça à segurança de todo o site e dos dados dos usuários
Investigação e resposta
- Especialistas em segurança estão analisando a rota de infecção e também investigando casos adicionais de propagação
- O malware distribuído por canais oficiais por meio de uma violação da cadeia de suprimentos indica que até softwares considerados confiáveis podem estar expostos a riscos
Recomendações para usuários do GravityForms
- Operadores de sites que instalaram ou atualizaram o GravityForms precisam fazer uma verificação imediata da integridade do plugin
- É necessário acompanhar de perto os anúncios de segurança e avisos de atualização dos canais oficiais e, em caso de suspeita, recomenda-se remoção forçada e reinstalação
Conclusão
- Ataques à cadeia de suprimentos ameaçam a própria cadeia de confiança e servem como um alerta importante para empresas e desenvolvedores
- Reforça-se a importância da verificação e do monitoramento contínuo na escolha de plugins e na gestão de segurança no futuro
1 comentários
Comentários no Hacker News
Fico realmente grato por essa violação da cadeia de suprimentos ter sido descoberta por um administrador de sistemas cuidadoso, que estava rastreando requisições HTTP lentas
De forma parecida, no caso do xz, um desenvolvedor estranhou a queda de desempenho nos logins via SSH e, ao investigar com atenção, acabou revelando a invasão
As pessoas mal-intencionadas estão ficando cada vez mais sofisticadas, e nós seguimos montando sistemas com mais componentes vindos de fontes cada vez mais diversas
Preocupa ver, no longo prazo, toda a infraestrutura de TI perdendo confiabilidade como algo cada vez mais inerente
No comunicado oficial do Gravity Forms (https://www.gravityforms.com/blog/security-incident-notice/), é informado que só são afetados os casos em que o Gravity Forms foi baixado diretamente do site ou instalado via Composer
Pelo que verifiquei, o método de instalação via Composer também usa a API do Gravity Forms no processo de obtenção do pacote de instalação, então compartilha o mesmo princípio de funcionamento do recurso de atualização automática dentro do plugin Gravity Forms e de ferramentas como o plugin do WP-CLI
Fico curioso se a equipe do Gravity Forms vai contratar uma empresa de segurança terceirizada para investigar esse incidente
Até agora, não houve menção a isso
Pelo que ouvi de um dos funcionários da RocketGenius, esse malware afeta apenas downloads manuais e instalações via composer
Dá um alívio
Se fosse usado um nonce antes de verificar o form, boa parte desse problema poderia ter sido evitada
Em outras palavras, graças a isso, uma grande quantidade de trabalho manual pode de repente se tornar necessária
Fico me perguntando por quanto tempo isso ficou sem ser detectado
Acho admirável que tenham encontrado o malware e tomado medidas para conter a propagação
Só que havia um erro um pouco confuso na matéria
A data da atualização mais recente no topo aparentemente deveria ser "Update 7-12-2025 06:00 UTC", mas está como 08-11-2025, uma data futura
Parece que o autor provavelmente digitou o dígito errado
Fica como lição do que acontece quando se tenta imitar o formato ISO usando hífens em uma data no estilo americano, mas se erra a ordem e o padding, gerando esse tipo de confusão
Surgiu a pergunta até onde esse incidente afeta
Será que chega a 90% dos sites da internet ou só a uma minoria de sites com pouco tráfego?
Gravity Forms é um plugin premium de WordPress extremamente popular
Eu mantenho vários sites em WordPress (não foi a plataforma que eu escolheria, mas é o que tem para hoje), e acho que o Gravity Forms é melhor que a maioria dos plugins concorrentes em design e funcionalidade (embora consuma bastante CPU)
Também não dá muitos problemas e, como desenvolvedor, tive experiências positivas ao lidar com a Rocket Genius e seu atendimento por tickets
De fato é um plugin bastante instalado em organizações pequenas e médias
Não sei os números exatos, mas as estatísticas oficiais de popularidade do WordPress.org têm a limitação de refletir apenas plugins gratuitos, então na prática há muitos sites e muito tráfego rodando com ele
Ainda assim, o número de sites realmente expostos ao risco é limitado
Como o pacote comprometido não foi incluído no canal principal de distribuição automática, os afetados reais são poucos
A maioria dos arquivos de atualização premium (pagos) é distribuída pelo gateway Gravity API (segundo rumores, com uma estrutura de chamadas de arquivos baseada em AWS), e esse caminho não foi afetado
O serviço Gravity API cuida de licenciamento, atualizações automáticas e instalação de add-ons, e nunca foi comprometido
Todas as atualizações de pacote feitas por esse serviço são seguras
Comentário de alguém que já foi comprometido pelo grupo AB of Ac1dB1tch3z
Houve a opinião de que deveriam escrever claramente qual plugin é esse
Esse problema foi corrigido na v2.9.13, e o changelog oficial não menciona o registro da invasão