O projeto PHP publicou nesta semana um lote de atualizações de emergência para corrigir duas vulnerabilidades críticas. Ambas receberam nota 9.2 na escala CVSS 4.0, a faixa mais alta de gravidade, e uma delas permite, segundo a análise da empresa de segurança runZero, execução remota de código sem autenticação. Para quem mantém sites, lojas virtuais ou sistemas internos escritos na linguagem, a recomendação é direta: conferir a versão em uso e atualizar.
O aviso prévio da equipe do PHP
Na terça-feira, 20 de outubro de 2026, às 19h33 (UTC), Jakub Zelenka enviou à lista oficial de anúncios do PHP uma mensagem sobre uma versão crítica de segurança que seria publicada na quarta-feira, 21 de outubro, às 14h (UTC). O texto informava que havia duas vulnerabilidades, cada uma com nota 9.2 no CVSS v4.0, e que a equipe se reservava o direito de antecipar a publicação caso os detalhes se tornassem públicos ou houvesse indício de exploração ativa.
O aviso não trazia números de CVE, versões afetadas nem detalhes técnicos. Esses dados vieram depois, com a publicação das correções. Um banner no próprio site php.net passou a exibir a mensagem “Security advisory: Critical remote code execution vulnerabilities, update now”.
As duas falhas
Segundo o levantamento da runZero, atualizado em 21 de outubro com informações do comunicado do PHP, as falhas são estas:
- CVE-2026-109618: o tratamento de falta de memória pode interromper a inicialização de uma requisição, o que abre caminho para execução remota de código sem autenticação. Nota 9.2.
- CVE-2026-109619: um estado global obsoleto, ligado a memória de requisição que já foi liberada, pode ser aproveitado por uma requisição posterior no mesmo processo de trabalho (worker). Nota 9.2.
O changelog oficial do php.net também lista, entre as correções do núcleo das versões 8.5.12 e 8.4.27, dois avisos de segurança do GitHub (GHSA) relacionados a corrupção de estado após um “bailout”.
Quais versões atualizar
De acordo com a runZero, estão vulneráveis as versões anteriores a estas:
| Ramo | Versão corrigida |
|---|---|
| PHP 8.2 | 8.2.35 |
| PHP 8.3 | 8.3.36 |
| PHP 8.4 | 8.4.27 |
| PHP 8.5 | 8.5.12 |
O PHP 8.1 e as versões anteriores não recebem mais atualizações do projeto e devem ser tratadas como vulneráveis, a menos que a distribuição Linux ou um fornecedor de suporte estendido tenha incorporado a correção por conta própria. A mesma fonte informa que as distribuições e os fornecedores de suporte estendido receberam os patches com antecedência e que a equipe de segurança do PHP disponibilizou backports mínimos para as versões 7.4, 8.0 e 8.1 destinados a quem compila o PHP a partir do código-fonte.
Uma observação sobre datas: o aviso e a runZero tratam 21 de outubro como o dia da publicação, mas o changelog do php.net lista as versões 8.5.12 e 8.4.27 com a data de 22 de outubro de 2026. Na prática, o que importa é que as versões corrigidas já estão disponíveis.
O que fazer enquanto a atualização não chega
A runZero afirma que atualizar é a única correção completa. As medidas abaixo reduzem a exposição, mas não tornam a instalação segura:
- Para a CVE-2026-109618: definir
memory_limit=-1de modo que as aplicações não consigam alterá-lo, usar um valor baixo depost_max_sizee aplicar limites de tamanho de requisição, de partes multipart, de cabeçalhos e de aninhamento no servidor web ou no proxy. - Para a CVE-2026-109619: definir
session.upload_progress.enabled=0. No PHP 8.5, definir tambémfatal_error_backtraces=0, reiniciar todos os workers e remover configurações inválidas ou obsoletas que emitam diagnósticos antes da inicialização da requisição.
Quem precisa se preocupar
A reportagem do TechStartups, que cita a Reuters, afirma que a equipe de resposta a emergências da União Europeia e o Centro de Cibersegurança da Austrália pediram que as organizações se preparassem para aplicar o patch imediatamente, e que a Cloudflare relatou sinais iniciais de tentativas de ataque e atualizou as regras de seu firewall como medida temporária. A mesma matéria lembra que o PHP é a base de sistemas como WordPress, Drupal, Joomla e Magento.
Há um ponto que costuma gerar confusão. Atualizar plugins ou temas do WordPress não atualiza o interpretador PHP. Quem hospeda o site em um provedor compartilhado ou gerenciado normalmente depende da empresa de hospedagem para trocar a versão da linguagem, e vale abrir um chamado perguntando qual versão está ativa e quando a correção será aplicada. Em servidores próprios, a atualização passa pelo gerenciador de pacotes da distribuição ou por uma nova compilação.
Para descobrir o que está em uso, o comando php -v mostra a versão instalada no servidor. Equipes com muitos ambientes podem usar inventários de software, como o que a própria runZero descreve em seu artigo, para localizar instalações potencialmente vulneráveis.
Contexto
O PHP 8.5, lançado em novembro de 2025, trouxe novidades como o operador pipe, tema que a Estupendo já tratou em PHP 8.5 Adiciona Operador Pipe. Agora, a atenção volta-se à parte menos glamorosa do ciclo de vida da linguagem: manter as instalações em ramos ainda suportados. Quem ainda roda a versão 8.1 ou anterior em produção tem, a partir deste episódio, um motivo concreto para planejar a migração, em vez de depender de backports de terceiros.
Os detalhes técnicos completos das duas falhas e eventuais atualizações sobre exploração em ambiente real devem ser acompanhados nos comunicados oficiais do projeto e nos alertas das empresas de segurança.