CVE-2026-115560 is a further PHP remote code execution flaw added to the advisories on 23 October 2026, two days after the PHP2Shell advisories. The October PHP updates do not fix it. It needs an unusual combination of PHP configuration and application behaviour, and applications that do not change the serialization handler at runtime are not exposed. Disabling session.upload_progress.enabled is the recommended interim mitigation.
How CVE-2026-115560 Fits Into the PHP2Shell Story
CVE-2026-115560 should be read as a related but separate PHP remote code execution issue, not as one of the PHP2Shell flaws themselves. The key operational point is that the October PHP updates did not address it, so teams tracking PHP2Shell still need to check whether this additional advisory changes their exposure or mitigation posture.
The fact pattern also matters for triage. If an application does not change the serialization handler at runtime, it is not exposed in the way this issue requires. That means the practical question is not just “is PHP installed?” but “does this application and configuration actually hit the vulnerable behaviour path?”
That distinction is important because broad version-based assumptions can be misleading. For teams already handling PHP2Shell, CVE-2026-115560 belongs in the same investigation queue, but the decision to treat a system as exposed should be based on the required PHP configuration and application behaviour, not on PHP presence alone. For the broader vulnerability-management context, the CVE, CWE and CPE Guide is useful for separating record-level vulnerability identifiers from product and platform scope.
What Practitioners Should Check First
Start with configuration validation. If the application never changes the serialization handler at runtime, the relevant attack path is absent, which narrows the urgency from blanket emergency patching to targeted exposure review. If the handler can change dynamically, treat that as a materially different risk posture and test the affected code paths immediately.
Then confirm whether the environment still depends on the interim mitigation. The recommended temporary control is to disable session.upload_progress.enabled, so the real decision is whether you can implement that safely without breaking the application’s expected session or upload workflow.
Do not rely on the October PHP updates as proof of safety for this specific issue. A patch cycle that addresses PHP2Shell does not automatically close a later advisory, so your inventory, validation, and change tracking need to stay aligned to the exact advisory set rather than to a generic “PHP updated” status. The PHP2Shell guide is the clearest adjacent reference point for patching, interim mitigations and triage patterns around this family of PHP RCE issues.
Why This Matters for Exploitation, Triage and Recovery
Remote code execution flaws in PHP tend to matter quickly because they can turn a normal web request into system-level impact if the vulnerable path is reachable. In this case, the exposure is conditional rather than universal, which can create a dangerous false sense of safety: teams may see the advisory, apply the wrong update, and assume the environment is covered when it is not.
That makes compromise review more important than usual. If the vulnerable behaviour was present before mitigation, investigate logs, application changes, unexpected script execution, new files, and any signs that web-facing code was used to pivot into the host. Where the application handled secrets, credentials, or session data on the same system, review whether the blast radius extends beyond the web tier.
For vulnerability operations, this is also a prioritisation problem. The fastest safe path is often to combine exposure confirmation with temporary mitigation, then plan a controlled fix once you know which applications truly depend on the risky session behaviour. The Vulnerability Management Guide is useful here because it frames the practical sequencing of scope, prioritisation and exception handling.
Risk and Threat Considerations
The main risk is not just the flaw itself, but the combination of a web-reachable PHP runtime, a configuration-dependent trigger condition, and the possibility that teams assume an update covered more than it did. That creates a window where an exposed application may remain reachable even after routine patching.
Failure mechanism: An application that can change the serialization handler at runtime may enter the vulnerable path, allowing remote code execution when the specific PHP behaviour and configuration align.
Impact: If exploited, the attacker can gain execution in the application context and potentially move toward broader host compromise, data access, or service disruption depending on the deployment.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
CIS Controls v8, NIST CSF 2.0 and OWASP ASVS set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| CIS Controls v8 | CIS-7 — Continuous Vulnerability Management | This advisory requires exposure confirmation, mitigation and tracking of unresolved PHP risk. |
| Recommendation — Validate exposure, apply the interim mitigation, and track remediation until the affected PHP behaviour is removed. | ||
| NIST CSF 2.0 | PR.PS-01 — Configuration Management | The issue hinges on a specific PHP configuration and runtime behaviour. |
| ID.RA-01 — Asset Vulnerability Identification | Teams must identify which applications and hosts are actually exposed to this PHP flaw. | |
| Recommendation — Review PHP configuration baselines and disable the vulnerable session setting where required. Map affected PHP applications and confirm whether the vulnerable runtime condition exists. | ||
| OWASP ASVS | V13 — Configuration | The security outcome depends on application and runtime configuration choices. |
| V16 — Security Logging and Error Handling | Post-exposure triage depends on log evidence and suspicious execution indicators. | |
| Recommendation — Check runtime configuration paths and remove the setting that enables the vulnerable behaviour. Review logs for signs of exploitation and retain evidence for incident investigation. | ||
Practitioner Guidance
What to verify: Confirm whether any PHP application in scope can alter the serialization handler at runtime, then test whether disabling session.upload_progress.enabled is operationally safe before you treat the system as mitigated. If you cannot verify the application behaviour, assume the exposure question is still open.
Decision rule: If the vulnerable behaviour is present, prioritise mitigation and exposure reduction before you spend time debating whether the latest PHP update “should have fixed it.” If the behaviour is absent, document that fact and move the system to monitored review rather than emergency response.
Practitioner takeaway: For configuration-dependent PHP RCE issues, the critical control is not version awareness alone, but proving whether the reachable application behaviour actually exists in production.
Related resources from NHI Mgmt Group
- What breaks when CVE-2026-42945 is not patched in NGINX ingress paths?
- What breaks when a Linux host is still running a kernel vulnerable to CVE-2026-53362 after a low-privilege foothold?
- Why does CVE-2026-53362 create such a high-risk escalation path for container and CI environments?
- How do security teams know if they are still exposed to CVE-2026-53362 in production?
Deepen Your Knowledge
Free weekly newsletter
Subscribe to the NHI & AI Identity Journal
The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.
Bonus 33% off our NHI Course when you subscribe.
Reviewed and updated by the NHIMG editorial team on November 2, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org