Dos días después del parche de PHP2Shell, el 23 de octubre de 2026, el equipo de PHP publicó un aviso sobre un tercer fallo en el manejo de sesiones: CVE-2026-115560. También permite ejecución remota de código, pero con una diferencia importante: todavía no hay parche. Llegará en la próxima versión regular.

Por qué no hay parche urgente

Porque solo es explotable con una combinación poco habitual de configuración y código. Tienen que darse las tres condiciones a la vez:

  1. session. serialize_handler está configurado como php_binary o php_serialize.
  2. El código de la aplicación lo cambia a php con ini_set() antes de llamar a session_start().
  3. session. upload_progress. enabled sigue activado (el valor por defecto).

Es raro, pero no imposible: aparece en código heredado y en aplicaciones que mezclan librerías con distintos formatos de sesión.

La mitigación sí es sencilla

Desactivar el progreso de subida de sesiones protege por completo frente a este fallo:

session. upload_progress. enabled = 0

Ponlo en php. ini o en la configuración de cada pool de PHP-FPM y reinicia los workers. Si ya lo hiciste tras el aviso de PHP2Shell, estás cubierto para este vector.

Cómo comprobar si tu código está expuesto

  • Busca cambios del manejador de sesión en tiempo de ejecución:
    grep -rn "serialize_handler" --include=*. php.
  • Comprueba el valor efectivo en el servidor:
    php -i | grep -E "serialize_handler|upload_progress. enabled"
  • No olvides que cada pool de FPM y cada contenedor puede tener su propia configuración.

No hay informes de explotación ni prueba de concepto pública por ahora. Aun así, con dos fallos graves en la misma zona en una semana, merece la pena dejar esta opción desactivada si tu aplicación no muestra barras de progreso de subida.

Fuentes