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_handlerdefinido comophp_binaryouphp_serializena configuração. - A aplicação precisa alterar o handler para
phpem runtime comini_set()antes desession_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=0até 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:
session.serialize_handlerconfigurado comophp_binaryouphp_serialize;- alteração desse handler para
phpem runtime, comini_set(), antes desession_start(); session.upload_progress.enabledhabilitado.
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_handlerdefinido comophp_binaryouphp_serializeemphp.ini, pools FPM, configuração do Apache ou arquivos de configuração da aplicação. - Procure alterações em runtime para
phpantes desession_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
- Inventarie a configuração de sessão. Identifique aplicações e pools
que usam
php_binaryouphp_serializee que alteram o handler em runtime. - Desative o upload progress até o próximo release. Aplique
session.upload_progress.enabled=0emphp.ini, pool FPM ou configuração do servidor, para todos os pools que atendem aplicações PHP. Reinicie os workers. - 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.
- Elimine a troca dinâmica quando possível. Se a aplicação não precisa
alternar
session.serialize_handlerem runtime, remova essa lógica. Não useini_set()antes desession_start()para trocar o handler sem necessidade. - 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.
- 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.
- 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.
- 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(). - Verifique a exposição: confirme se a aplicação usa
php_binary/php_serializee troca paraphpviaini_set(), com upload progress habilitado. - Contenha: aplique a mitigação, restrinja o acesso ao serviço se necessário e preserve os logs antes de reiniciar.
- 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).
- 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.
- PHP · Informational advisory: Session upload progress PHP.net · 23 out. 2026
- PHP Manual · Session Upload Progress PHP.net · documentação
- PHP Manual · session.serialize_handler PHP.net · documentação
- PHP Manual · session.upload_progress.enabled PHP.net · documentação
- GHSA-6wmf-4rv5-p3rp · advisory da CVE-2026-109619, que já recomendava a desativação do upload progress PHP Security Advisories · 21 out. 2026
- PHP · Security advisories PHP.net · consulta em 23 out. 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.