PHP2Shell what we know and what your business should do now
Information checked October 21, 2026, before the scheduled 14:00 UTC security release.

If your website, customer portal or business software runs on PHP, confirm who maintains that PHP installation and prepare for an urgent update. The PHP security team has announced two critical vulnerabilities, each rated 9.2 on the CVSS v4.0 scale, with a release scheduled for October 21 at 14:00 UTC, or 10:00 a.m. in Toronto. Its advance notice says affected versions, fixed versions and technical details will accompany the release. PHP security announcement.
The practical work can start now. We need to identify where PHP runs, understand who can update it and decide what evidence will show that the update reached the application people actually use.
What we know about PHP2Shell
Researchers are using the name PHP2Shell for CVE-2026-109618 and CVE-2026-109619, which they describe as remote code execution vulnerabilities. That means an attacker could potentially make an affected server execute code they control. The exact conditions for doing that remain unconfirmed in PHP's advance notice. watchTowr FAQ.
The possible consequences depend on the permissions and access available to the PHP process. Files, application credentials and connected services could be at risk. Code execution does not automatically mean the attacker has administrator access to the entire server. PHP's own security guidance explains why the account running PHP matters. PHP filesystem security.
The early disclosure also created conflicting information. The Hacker News traces how the October 20 leak was followed by PHP's official notice. For release timing and severity, use the vendor announcement rather than the original leak. The Hacker News coverage.
At the time of this review, the claim that every PHP version from PHP 5 onward is affected remains unconfirmed. watchTowr also reports no exploitation in the wild. That is the current reporting status; it cannot establish that every environment is safe. watchTowr FAQ.
Check the PHP runtime behind the application
A website and the PHP installation running it are separate things to maintain. WordPress, for example, depends on PHP supplied by its hosting environment. Updating WordPress or its plugins alone does not establish that the underlying PHP runtime has received a security fix. WordPress requirements.
For a managed website, ask the hosting provider to confirm the PHP version serving your specific site and its plan for these vulnerabilities. For a server your team manages, identify the installed packages and the service handling web requests. Software that bundles its own PHP may require an update from that software vendor.
There is also a support question to resolve:
| PHP branch | Upstream support on October 21, 2026 | What to plan for |
|---|---|---|
| 8.4 and 8.5 | Active support | Follow the security release and your supplier's package guidance. |
| 8.2 and 8.3 | Security fixes only | Confirm patch availability and plan the branch's next upgrade. |
| 8.1 and older | End of life | Plan migration; verify any separate extended-support coverage. |
This table describes maintenance status. It is not a list of confirmed vulnerable or fixed versions. Distribution or commercial support may differ from upstream PHP support. PHP supported versions.
What to do now
Start with a short record for every PHP-backed service: application name, responsible person, hosting provider or server, PHP runtime, public accessibility and update source. Include older portals and software that bundles PHP. An unknown runtime needs an owner and a follow-up, not a checkmark. Huntress specifically highlights these less obvious installations in its response guidance. Huntress analysis.
If you administer the server and have shell access, these read-only commands provide a starting point:
php -v
php --ini
The first reports the invoked PHP binary's version and interface; the second shows its configuration file locations. These are command-line checks. Confirm the runtime serving the website through your hosting panel, authenticated application diagnostics or service configuration as well. If the command is unavailable, PHP may still exist in a container or bundled installation. PHP command-line options.
Prepare the update with the application owner. Confirm the backup and recovery process, who can perform the change and which business functions must work afterward. For an online store, that might mean login, cart and a test checkout. For a customer portal, it might mean authentication and document access. These are examples; use the functions your service depends on.
If you cannot patch promptly, review whether public access can be restricted temporarily. CERT-EU recommends considering isolation of internet-facing applications when immediate remediation is not feasible. Coordinate that decision with the business owner, then verify that an untrusted connection is blocked and required authorized access still works. CERT-EU advisory.
Treat workaround claims carefully
One suggestion circulating online is to disable PHP's Session Upload Progress feature. GMO Flatt Security updated its guidance to say that this setting alone is not expected to prevent attacks. Its investigation also remains conditional on matching the vulnerabilities being discussed. Treat the change as an incomplete mitigation claim, not evidence that a system is fixed. GMO Flatt Security update.
A web application firewall can be part of your response, but its presence alone does not establish protection against these flaws. Ask the provider which advisory its rule covers, whether the rule is enabled for your application and what limitations remain. Keep the PHP update on the action list.
Verify the update and watch for suspicious activity
Once your supplier publishes the fix, record the advisory and package or release that address both CVEs. Follow its installation instructions, including any required service restart or container replacement. Then confirm the running web application's PHP runtime and test the business functions identified earlier. A completed package installation is only part of that evidence.
For example, imagine a portal where the terminal reports an updated PHP version but authenticated application diagnostics still show the previous build. That is an illustrative mismatch, not a completed remediation. Check which service, container or backend is serving the request before closing the task. If the application fails after the change, use the recovery plan and retain temporary access restrictions where needed; restoring a vulnerable build does not resolve the security issue.
Huntress recommends watching for PHP or web-server processes unexpectedly starting shells, interpreters or download tools. Investigate those events against normal application behavior. Its example of a recent PHP intrusion is explicitly unrelated to PHP2Shell, and should not be treated as proof of exploitation of these CVEs. If activity suggests compromise, follow your incident process, isolate as appropriate and preserve logs. Huntress analysis.
Give every PHP installation an owner
For each service, keep a simple answer to three questions: who owns the update, what evidence confirms the running system is covered, and what happens if the update cannot be applied?
That record gives your team a useful way to track the response as the advisory develops. If ownership, older applications or access restrictions are difficult to untangle, contact Router ID to discuss your PHP exposure and update plan.