Alerta de segurança · AR-2026-003

Informativa AR-2026-003

PHP: execução remota de código condicionada à configuração de sessão

O projeto PHP publicou em 23 de outubro de 2026 um comunicado sobre a CVE-2026-115560, um vetor de execução remota de código que exige uma combinação incomum de configuração e código de sessão. O PHP considera o cenário improvável na prática e informou que a correção virá no ciclo regular, não em um novo patch emergencial.

CVE
CVE-2026-115560
Severidade
Não classificada · advisory informativo
CVSS
Não divulgado
Produto
PHP (runtime web)
Exploração
Nenhum relato público
Correção
Pendente · próximo release regular
Publicado
23 de outubro de 2026
Última revisão
23 de outubro de 2026

Advisory incompleto

Este é um comunicado informativo do PHP. Até a publicação deste alerta, não havia CVSS, lista de versões afetadas, versão corrigida ou detalhes técnicos completos. O PHP informou que publicará o advisory completo para a CVE-2026-115560 no próximo release regular. Este alerta registra apenas o que foi confirmado oficialmente.

Ação recomendada

Defina session.upload_progress.enabled=0 em php.ini, pool FPM ou configuração do servidor, e reinicie os workers, até o próximo release regular do PHP. Se a medida já foi aplicada como mitigação da CVE-2026-109619, mantenha-a.

  • Verifique se alguma aplicação altera session.serialize_handler em runtime com ini_set() antes de session_start().
  • Aplicações que nunca alteram o handler em runtime podem manter o upload progress habilitado, segundo o PHP.
  • Não há correção emergencial nem versão corrigida divulgada; acompanhe o comunicado oficial e o próximo release.

Resumo

Em 23 de outubro de 2026, o projeto PHP publicou o comunicado Informational advisory: Session upload progress, no qual cita a CVE-2026-115560 como um vetor improvável de execução remota de código. O problema exige uma combinação específica de configuração de sessão e comportamento da aplicação; não é uma falha que afete todas as instalações PHP de forma indiscriminada.

O PHP não publicou o advisory completo junto com o comunicado. Até a última verificação deste alerta, não havia CVSS, lista de versões afetadas, versão corrigida ou detalhes técnicos públicos. O projeto afirmou que publicará o advisory completo para a CVE-2026-115560 no próximo release regular.

É uma CVE distinta das CVE-2026-109618 e CVE-2026-109619 (PHP2Shell). As atualizações emergenciais de 21 de outubro de 2026 — PHP 8.2.35, 8.3.36, 8.4.27 e 8.5.12 — foram publicadas para aquelas falhas; não há versão corrigida divulgada para esta CVE.

O que foi confirmado pelo PHP

  • O vetor de RCE é considerado improvável na prática pelo projeto.
  • A falha exige session.serialize_handler definido como php_binary ou php_serialize na configuração.
  • A aplicação precisa alterar o handler para php em runtime com ini_set() antes de session_start().
  • O recurso session upload progress precisa permanecer habilitado.
  • Aplicativos que nunca alteram o handler em runtime podem manter o recurso habilitado, segundo o comunicado.
  • A mitigação indicada é session.upload_progress.enabled=0 até o próximo release regular.

Gravidade e status

Item Status em 23/10/2026 Observação
CVSS / severidade Não divulgados O PHP classificou o cenário como improvável; não há pontuação publicada.
Exploração Nenhum relato público Não há confirmação de exploração em ambiente real até a publicação.
Correção Pendente O PHP informou que tratará a correção no ciclo regular e publicará o advisory completo no próximo release.
Versões afetadas Não divulgadas Não é possível afirmar quais versões são afetadas sem o advisory completo.
Registro público Não localizado Na verificação de 23/10/2026, o CVE ainda não tinha registro público no CVE Program nem no NVD; o identificador é citado pelo próprio PHP.

A ausência de CVSS não significa risco nulo: a falha é um vetor de RCE, ainda que condicionado. A ausência de classificação e de lista de versões reflete o estágio incompleto do advisory, não uma avaliação de risco favorável.

Não há relato público de exploração; o PHP considera a combinação improvável. Ainda assim, a mitigação é simples e já havia sido recomendada para a CVE-2026-109619; não há motivo para aguardar o próximo release para aplicá-la em ambientes que usam o recurso de upload progress.

Condições de exposição

O PHP descreve a falha como dependente de uma combinação de configuração e código. O cenário exige, simultaneamente:

  1. session.serialize_handler configurado como php_binary ou php_serialize;
  2. alteração desse handler para php em runtime, com ini_set(), antes de session_start();
  3. session.upload_progress.enabled habilitado.

O comunicado não detalha o mecanismo interno que leva à execução de código. A causa técnica completa será publicada no advisory do próximo release; este alerta não especula sobre a cadeia de exploração.

O recurso de upload progress é habilitado por padrão no PHP (session.upload_progress.enabled=1). Ele permite acompanhar o envio de arquivos e pode ser desnecessário em aplicações que não exibem barra de progresso. O manual do PHP recomenda considerar sua desativação nesses casos.

Versões e correção

Item Informação disponível
Versões afetadas Não divulgadas pelo PHP até a publicação deste alerta.
Versões corrigidas Não divulgadas. O PHP informou que a correção será publicada no próximo release regular.
Relação com PHP2Shell CVE distinta. As versões 8.2.35, 8.3.36, 8.4.27 e 8.5.12 foram publicadas em 21/10/2026 para CVE-2026-109618 e CVE-2026-109619; não há versão corrigida divulgada para a CVE-2026-115560.
Prazo Próximo ciclo regular de correções do PHP, conforme o comunicado.

Como não há lista de versões, não presuma que uma versão específica está corrigida apenas por ser recente. A condição de exposição é de configuração e código; o advisory completo deverá trazer o alcance exato.

Inventário e detecção

Não há, até o momento, assinatura de exploração específica publicada pelo PHP. A verificação inicial é de configuração e código:

  • Procure session.serialize_handler definido como php_binary ou php_serialize em php.ini, pools FPM, configuração do Apache ou arquivos de configuração da aplicação.
  • Procure alterações em runtime para php antes de session_start():
grep -RIn "session.serialize_handler" /caminho/da/aplicacao
grep -RIn "ini_set.*session.serialize_handler" /caminho/da/aplicacao
  • Confirme o valor efetivo no runtime web, não apenas no CLI:
php -i | grep -E 'session.serialize_handler|session.upload_progress.enabled'
  • Verifique cada pool FPM e cada serviço que executa PHP; a configuração pode variar entre pools.
  • Revise logs de upload e de sessão, mas sem tratar a ausência de alerta como prova de segurança: não há IOC específico divulgado.

Aplicativos que nunca alteram o handler em runtime não são afetados por este vetor específico, segundo o PHP. Ainda assim, a configuração deve ser inventariada para confirmar essa condição.

Recomendações

  1. Inventarie a configuração de sessão. Identifique aplicações e pools que usam php_binary ou php_serialize e que alteram o handler em runtime.
  2. Desative o upload progress até o próximo release. Aplique session.upload_progress.enabled=0 em php.ini, pool FPM ou configuração do servidor, para todos os pools que atendem aplicações PHP. Reinicie os workers.
  3. Mantenha a medida se já foi aplicada. Se você já havia desativado o recurso para a CVE-2026-109619, não é necessário alterar nada; mantenha a configuração até a correção regular.
  4. Elimine a troca dinâmica quando possível. Se a aplicação não precisa alternar session.serialize_handler em runtime, remova essa lógica. Não use ini_set() antes de session_start() para trocar o handler sem necessidade.
  5. Mantenha as atualizações de 21/10. PHP 8.2.35, 8.3.36, 8.4.27 e 8.5.12 continuam necessárias para as CVE-2026-109618 e CVE-2026-109619; elas não são a correção desta nova CVE.
  6. Acompanhe o próximo release. O advisory completo deve trazer CVSS, versões afetadas, correção e detalhes técnicos. Planeje a atualização quando a versão corrigida for publicada.
  7. Registre a decisão. Documente onde o upload progress foi desativado e quando a medida deve ser revista, para evitar que a configuração permaneça esquecida após a correção.

Mitigação temporária

Paliativo até o próximo release

O PHP não publicou correção emergencial. A desativação do upload progress é a mitigação indicada pelo projeto; ela reduz a exposição ao vetor descrito, mas não corrige a falha no runtime.

Medida Efeito Limite
session.upload_progress.enabled=0 Remove a condição de upload progress necessária ao vetor descrito. Paliativo; reavalie após a correção. Aplique a todos os pools e reinicie os workers.
Revisar ou remover a troca do handler em runtime Elimina uma das condições de exposição quando a aplicação não precisa dessa troca. Exige teste da aplicação; não corrige o runtime.
Manter PHP 8.2.35/8.3.36/8.4.27/8.5.12 Protege contra as CVE-2026-109618 e CVE-2026-109619. Não é a correção da CVE-2026-115560.
Monitorar o próximo release Permite aplicar a correção e o advisory completo. Não protege enquanto a atualização não for aplicada.

Aplicativos que nunca alteram o handler em runtime podem manter o upload progress habilitado, segundo o PHP. A decisão de desativar deve considerar o uso real do recurso e o inventário de aplicações.

Resposta a incidentes

Não há relato público de exploração desta CVE. Se houver suspeita, a investigação deve começar pela configuração de sessão e pelo código que altera o handler em runtime.

  1. Preserve evidências: colete configurações efetivas, logs de acesso, logs de erro, arquivos de sessão e o código das rotas que chamam session_start().
  2. Verifique a exposição: confirme se a aplicação usa php_binary/php_serialize e troca para php via ini_set(), com upload progress habilitado.
  3. Contenha: aplique a mitigação, restrinja o acesso ao serviço se necessário e preserve os logs antes de reiniciar.
  4. Trate comprometimento: se houver sinais de execução de código, rotacione credenciais e segredos, reconstrua o serviço a partir de uma versão confiável e acione o SOC da GigaCandanga e os canais oficiais (CISC, CTIR Gov, CERT.br).
  5. Avalie obrigações legais: se houver acesso ou vazamento de dados pessoais, avalie notificação no âmbito da LGPD.

Referências

Links externos abrem em nova aba. O comunicado do PHP é a fonte primária deste alerta; o registro público da CVE ainda não estava disponível na verificação de 23/10/2026.

Outras fontes de consulta para resposta e investigação estão em Links úteis.

Revisão

Revisão 1.0 — 23 de outubro de 2026 — Publicação inicial a partir do comunicado informativo do PHP. O alerta será revisado quando o PHP publicar o advisory completo, com CVSS, versões afetadas e correção.

Este alerta consolida informações oficiais disponíveis até 23 de outubro de 2026. Não substitui o advisory do fornecedor nem a avaliação da equipe responsável por cada ambiente. Teste as ações em ambiente controlado antes de aplicá-las em produção.