CVE-2026-115560
PHP session upload progress RCE vector (unpatched, unusual config only)
PHP warned on 23 October 2026 of an unlikely remote code execution vector in session upload progress. It needs an unusual mix of session config and app code that switches the serialize handler at runtime. Not fixed by the 21 October PHP2Shell releases. No patch yet. Mitigation is session.upload_progress.enabled=0. No CVSS published.
By ThreatWire Desk · Published 23 Oct 2026 · Updated 23 Oct 2026
- CVSS
- Unknown
- Vector
- Not recorded
- Class
- RCE
- Status
- No PoC
- KEV
- Not in CISA KEV
- 0-day
- No
- Vendor
- PHP Group
- Products
- PHP, php-src
- Affected
- Not yet published by PHP. PHP says the 21 October 2026 releases (8.2.35, 8.3.36, 8.4.27 and 8.5.12) do not fix it. Exposure also needs a specific session configuration and application code, plus session upload progress left enabled.
- Fixed
- None yet. PHP plans the fix for the next regular bugfix release, with a full advisory.
- CWE
- Not recorded
- Published
- 23 Oct 2026
- Updated
- 23 Oct 2026
No public PoC is confirmed on this record.
CVE-2026-115560 is a remote code execution vector in PHP's session upload progress feature. PHP announced it on 23 October 2026 in an informational advisory. It is not patched yet.
PHP calls it an unlikely RCE vector. It only appears with an unusual mix of configuration and application code. All of these must be true:
- The configuration sets session.serialize_handler to php_binary or php_serialize.
- The application then switches the handler to php at runtime with ini_set(), before it calls session_start().
- Session upload progress is still enabled. It is on by default.
Apps that never change the serialize handler at runtime are not exposed, per PHP. They can keep the feature enabled.
The 21 October PHP2Shell releases do not fix this issue. Canada's Cyber Centre confirmed that in an update to its PHP alert. PHP will ship the fix in its next regular bugfix release. A full advisory will come with it.
PHP has not published a CVSS score, a CWE or an affected version list yet. ThreatWire leaves those fields empty. The CVE record was not yet live on CVE.org or NVD when we checked.
Mitigation: set session.upload_progress.enabled=0. Set it in php.ini, the FPM pool or server config, then restart PHP workers. This is the same setting PHP listed for CVE-2026-109619 on 21 October. If you applied it then and kept it, PHP says no further action is needed.
Exploitation: none reported for this CVE. The attacks seen since 21 October target the PHP2Shell pair, CVE-2026-109618 and CVE-2026-109619. ThreatWire found no public PoC. It is not in CISA KEV.
Read the full story. For PHP2Shell, see the explainer.
Sources
Related on ThreatWire
- NewsPHP warns of unpatched CVE-2026-115560: an unlikely RCE in session upload progress
- CVE recordCVE-2026-109618: PHP RCE via out-of-memory corruption (PHP2Shell)
- CVE recordCVE-2026-109619: PHP RCE via stale global state (PHP2Shell)
- CVE recordCVE-2026-108097: Drupal core Field UI remote code execution (SA-CORE-2026-014)
- CVE recordCVE-2026-82531: Smarty template cache code injection via extends inheritance