108. WordPress 7.0.3: segunda ronda de correções de segurança num mês

·

Depois do lançamento de emergência do WordPress 7.0.2 devido ao wp2shell, chega agora o WordPress 7.0.3 como versão de manutenção de segurança, com 12 correções de segurança que afetam sobretudo o ecrã de início de sessão.

Lembre-se de que pode ouvir este programa no:

Transcrição do programa

Olá, sou José Freitas e estás a ouvir o WPpodcast, com as notícias semanais da comunidade WordPress.

Neste episódio, encontras a informação de 3 a 9 de agosto de 2026.

Matt Mullenweg publicou uma reflexão breve, mas com implicações de grande alcance, sobre como desenhar o WordPress para um futuro com mais agentes de IA a operar nos sites, apresentando uma série de princípios de design de dados “defensivo”:

  • enviar algo para o lixo deve ser fácil, mas eliminá-lo definitivamente deve ser difícil;
  • publicar um rascunho para todo o mundo deve exigir mais do que criá-lo;
  • as alterações devem ser reversíveis e visíveis sempre que possível;
  • e as mensagens de erro devem explicar o porquê, não apenas o que aconteceu, incluindo um botão para copiar a mensagem e colá-la diretamente num motor de pesquisa ou numa IA.

Defende também que tudo o que vem do exterior, seja através da rede, de um formato ou de uma estrutura, deve ser considerado não apenas pouco fiável, mas potencialmente hostil, e que se deve privilegiar uma linguagem simples e direta em vez de jargão técnico.

A publicação gerou bastante debate nos comentários, com membros da equipa do Gutenberg a confirmarem que já estão a atualizar guias de estilo e documentação para agentes de IA com base nestes princípios, e com várias melhorias concretas já integradas nas mensagens de erro relacionadas com a gravação de conteúdos.

Entre as propostas que mais repercussão tiveram está a “2FA (segundo fator de autenticação) humana”: determinadas tarefas seriam classificadas como sensíveis e só poderiam ser concluídas após aprovação explícita de uma pessoa, com um agente intermediário a explicar em linguagem simples o que está prestes a acontecer antes de pedir autorização.

Outro comentário assinala que este princípio de tornar a publicação mais difícil está alinhado com a antiga proposta de um estado de revisão agendada, em que um agente de IA que edite conteúdos já publicados cria, por defeito, um futuro rascunho pendente de revisão, em vez de publicar diretamente a alteração.

Atualização de segurança

Poucas semanas depois do lançamento de emergência da versão 7.0.2 devido à cadeia de exploração wp2shell, o WordPress publica outra atualização de segurança, a 7.0.3, que corrige doze vulnerabilidades de uma só vez.

A que mais se destaca, e a única que dispõe já de um CVE público, é a CVE-2026-64638, uma vulnerabilidade XSS refletida no ecrã de início de sessão que não exige autenticação e que, em determinadas circunstâncias, poderia permitir a execução de código PHP.

As restantes falhas, embora ainda sem CVE próprio, também não são menores:

  • vários problemas de XSS armazenado que exigem, pelo menos, a função de Colaborador, nas definições de emojis, no bloco de conteúdo do artigo, na Edição rápida em sites com muitos utilizadores e no bloco da data do artigo;
  • uma escalada de privilégios em redes multisite com registo aberto que permitia criar um novo site;
  • um SSRF na validação de URLs;
  • uma forma de contornar o filtro de CSS seguro para utilizadores com a função de Autor ou superior, curiosamente reportada pela Anthropic;
  • e vários problemas de divulgação de informação: comentários de artigos protegidos por palavra-passe expostos através do bloco Comentários recentes, notas reveladas nos feeds de comentários e enumeração dos slugs dos artigos.

Ao contrário da versão 7.0.2, que foi um lançamento de emergência fora do calendário devido à gravidade da cadeia de execução remota de código, esta versão 7.0.3 apresenta um perfil mais próximo de uma atualização normal de manutenção de segurança. Ainda assim, a recomendação é a habitual: atualizar o mais rapidamente possível.

O que se destaca é a dimensão do backport: a ficha técnica no HelpHub confirma que foram lançadas 24 versões diferentes de uma só vez, desde a própria 7.0.3 até à 4.7.34, cada uma com o subconjunto de vulnerabilidades que lhe era aplicável. A versão 6.9 recebe 11 das 12 correções, enquanto os restantes ramos ativos até à versão 4.7 recebem entre 7 e 8, dependendo das vulnerabilidades que os afetavam. Ao nível do código, as correções concentram-se em ficheiros muito específicos: wp-login e wp-signup para o XSS no início de sessão e o bypass da confirmação de email, kses para o filtro de CSS reportado pela Anthropic, canonical para a enumeração de slugs, http para o SSRF, e os ficheiros de gestão de utilizadores e Edição rápida para a escalada de privilégios e o respetivo XSS.

O WordPress 7.1 RC2, publicado no mesmo dia, já incorpora todas estas correções, pelo que quem estiver a testar a versão 7.1 não precisa de fazer nada adicional. Mais uma vez, verifica a versão instalada e atualiza todos os sites assim que possível.

WordPress 7.1 em RC2

O WordPress 7.1 entrou oficialmente na fase de Release Candidate, com o RC2 já publicado, o que ativa uma série de regras internas da equipa de Core até ao lançamento da versão final. A mais relevante é que, até ser criado um branch específico para a versão 7.1, algo que foi adiado alguns dias devido aos trabalhos em curso com GitHub Actions, qualquer alteração no desenvolvimento principal necessita da aprovação de dois committers diferentes em vez de apenas um, para minimizar o risco de introdução de regressões numa fase tão delicada do ciclo de desenvolvimento.

O primeiro Release Candidate marca também o string freeze: a partir deste momento, não são permitidos novos textos, salvo em exceções muito específicas e devidamente assinaladas, dando assim luz verde à equipa de Polyglots para começar a traduzir a versão para diferentes idiomas assim que esse branch estiver disponível.

Quanto ao que ainda pode ser alterado antes do lançamento, apenas são aceites dois tipos de tickets: regressões introduzidas durante este ciclo de desenvolvimento e expansões da suite de testes, que podem ser adicionadas em qualquer momento sem restrições.

Acessibilidade faz balanço de um ano

A equipa de Acessibilidade fez o balanço de um ano de trabalho dedicado à reorganização de toda a sua documentação, um projeto que começou depois de se ter concluído, durante a WordCamp Europe em Turim, que a informação sobre acessibilidade estava dispersa, duplicada e incompleta.

O resultado é a nova WP Accessibility Knowledge Base, que passa agora a funcionar como fonte única de referência: inclui desde uma introdução às WCAG e ao programa de temas accessibility-ready até normas para conteúdos, imagens, formulários e código de frontend, incluindo guias para testes manuais e testes com leitores de ecrã. Entretanto, o handbook da equipa no Make WordPress foi reduzido exclusivamente aos assuntos relacionados com a própria equipa e às formas de contribuir, ficando toda a componente técnica concentrada na nova base de conhecimento.

WP Day for AI; venda de bilhetes começa em breve

A organização do WordPress Day for AI, que será realizado em Faro, a 24 de outubro, deve lançar a venda de bilhetes muito em breve.

Os ingressos serão disponibilizados no site oficial do evento. Serão vendidos apenas 100 bilhetes.

Estão ainda abertas as chamadas a patrocinadores e oradores.

Meetup de Lisboa em Agosto

Esta terça-feira, dia 11, há uma nova edição do Meetup WordPress Lisboa. Trata-se da já quase tradicional edição de Agosto, com contornos mais ligeiros. Sem apresentação, sem tema, todos estão convidados a ir jantar e falar sobre WordPress e comer frango.

Como sempre, vai valer a pena. Podes fazer a tua inscrição na página do evento no Meetup .com.

Por fim, este podcast é distribuído sob uma licença Creative Commons como versão derivada do podcast em espanhol; podes encontrar todos os links para mais informações, bem como o podcast noutros idiomas, em WPpodcast .org.

Obrigado por ouvires e até ao próximo episódio.

Comments

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *