O time de segurança do PHP publicou hoje um advisory crítico: duas vulnerabilidades de remote code execution (RCE), ambas com pontuação CVSS v4.0 de 9.2, afetam todas as instalações PHP que servem requisições web — incluindo PHP-FPM, Apache com mod_php, php-cgi, FrankenPHP e LiteSpeed.

O que aconteceu

As versões PHP 8.5.12, 8.4.27, 8.3.36 e 8.2.35 foram liberadas com correções para os dois CVEs:

  • CVE-2026-109618 (GHSA-w8hw-w9fx-j79w): o tratamento de out-of-memory pode interromper o PHP enquanto dados internos da requisição estão parcialmente inicializados. O cleanup da requisição pode tratar esses dados inválidos como válidos, abrindo caminho para RCE.
  • CVE-2026-109619 (GHSA-6wmf-4rv5-p3rp): estado interno da requisição pode sobreviver após a memória que o sustenta ter sido liberada. Uma requisição posterior no mesmo worker pode usar esse estado stale antes da inicialização normal resetá-lo.

O risco é maior em instalações com mod_php, onde um exploit demonstrado permite que uma requisição não autenticada acione o ataque antes de qualquer código da aplicação ser executado.

Como atualizar

Atualize para PHP 8.5.12, 8.4.27, 8.3.36 ou 8.2.35. Os downloads de código-fonte estão disponíveis na página de downloads do PHP. Distribuições Linux e vendors LTS receberam os patches antecipadamente — consulte seu vendor.

Para versões sem suporte oficial, o time de segurança do PHP providenciou backports mínimos para PHP 7.4, PHP 8.0 e PHP 8.1.

Mitigações temporárias

Se não for possível atualizar imediatamente, algumas medidas reduzem a exposição — sem tornar a instalação totalmente segura:

  • Para o CVE-2026-109618: remova limites finitos de memory_limit e defina limites baixos para upload_max_filesize e post_max_size.
  • Para o CVE-2026-109619: desabilite sessions via configuração do servidor e reinicie todos os workers.