Falar com a gente
Menu
#segurança #infraestrutura

Nova falha no PHP CVE-2026-115560: o que fazer

A CVE-2026-115560 só atinge uma configuração rara de sessão no PHP. Veja como saber se a sua aplicação está exposta e a configuração que fecha a falha.

Publicado em · por Wilson Molin Junior · 3 min de leitura

Em resumo

Em 23 de outubro de 2026, o PHP divulgou a CVE-2026-115560, uma nova falha que pode levar à execução de código no servidor. Ela é diferente das falhas do PHP2Shell e bem mais restrita: só aparece quando a aplicação troca o formato das sessões em tempo de execução. Ainda não há versão corrigida. Até lá, desligar o progresso de upload da sessão (session.upload_progress.enabled=0) fecha o caminho, e quem seguiu as orientações do PHP2Shell já fez isso.

O que aconteceu

Dois dias depois das correções de emergência do PHP2Shell, o PHP publicou um aviso sobre outra falha, a CVE-2026-115560. Ela também passa pelo progresso de upload da sessão, o recurso que acompanha o andamento de um envio de arquivo, mas é um problema separado, e as versões de 21 de outubro não a corrigem.

O próprio PHP chama o caminho de execução de código de improvável, e não há relato de ataques. Parte do noticiário trata o caso como “outra falha crítica sem correção”. O risco real é bem menor.

Quem está exposto

A falha exige três condições ao mesmo tempo:

  • a configuração define session.serialize_handler, o formato em que o PHP grava a sessão, como php_binary ou php_serialize;
  • a aplicação troca esse valor para php com ini_set() antes de chamar session_start();
  • o progresso de upload da sessão está ligado, como vem por padrão.

Segundo o PHP, a aplicação que nunca troca o formato da sessão em tempo de execução não é afetada.

Como verificar

Procure a troca no código da aplicação, incluindo plugins e bibliotecas:

grep -rn "serialize_handler" /caminho/do/site

Se nenhuma linha aparecer junto de um ini_set(), a aplicação não faz a troca.

Depois, confira se o progresso de upload está desligado na configuração que o servidor web usa, não só na linha de comando. Uma página com phpinfo(), apagada logo em seguida, mostra o valor de session.upload_progress.enabled.

O que fazer

  • Desligue o progresso de upload da sessão. Defina session.upload_progress.enabled=0 no php.ini, no pool do PHP-FPM ou na configuração do servidor, nunca por ini_set() ou .user.ini, e reinicie os workers do PHP. É a mesma orientação do PHP2Shell: se você já aplicou, mantenha.
  • Se o site mostra barra de progresso de upload, confira se ela depende desse recurso. Hoje essa barra costuma ser feita no navegador, com os eventos de progresso do próprio envio, e continua funcionando.
  • Se a aplicação troca o formato da sessão, defina o formato direto na configuração e tire a troca do código. Sem a troca, a falha não tem por onde passar.
  • Acompanhe o próximo lançamento do PHP. Ele traz a correção e o aviso completo, com as versões afetadas. Quando sair, atualizamos este texto.

Se você ainda não corrigiu o PHP2Shell

Essa é a prioridade. As falhas do PHP2Shell são críticas, valem para qualquer instalação que atende requisições web, e já há tentativas de ataque. O passo a passo, para quem pode e para quem não pode atualizar, está no nosso post sobre o PHP2Shell. Se quiser ajuda para aplicar as correções nos seus servidores, veja a nossa gestão de servidores.

Fontes