- Two critical Remote Code Execution (RCE) vulnerabilities, CVE-2026-109618 and CVE-2026-109619 (PHP2Shell), have been added to CISA’s Known Exploited Vulnerabilities (KEV) catalog.
- The flaws allow an unauthenticated attacker to run code on a PHP server with a crafted web request, affecting all PHP versions prior to 8.2.35, 8.3.36, 8.4.27, and 8.5.12.
- Federal agencies are mandated to patch by October 29, with all organizations running PHP strongly urged to update immediately.
The U.S. Cybersecurity and Infrastructure Security Agency (CISA) has officially confirmed the active exploitation of two critical Remote Code Execution (RCE) vulnerabilities in PHP, collectively dubbed PHP2Shell. These vulnerabilities, tracked as CVE-2026-109618 and CVE-2026-109619, have been added to CISA’s Known Exploited Vulnerabilities (KEV) catalog, underscoring their severe risk and the immediate need for action.
PHP2Shell Critical Flaws: Details and Risks
Both vulnerabilities carry a CVSS v4.0 score of 9.2 and reside in the PHP core, not in any specific framework or plugin. This means they impact any system running PHP to serve web requests. No authentication is required for exploitation; an attacker only needs to reach a PHP endpoint over HTTP with a specially crafted request. Affected server setups include PHP-FPM, mod_php, php-cgi, FrankenPHP, and LiteSpeed, with PHP rating mod_php as the highest risk.
Details of the flaws leaked before the planned embargo, prompting the PHP security team to swiftly release fixes on October 21. However, exploitation attempts were observed as early as October 17, four days before public disclosure, as reported by AWS.
Confirmed Exploitation and Indicators of Compromise
CISA’s confirmation means both flaws are actively being exploited, setting an October 29 deadline for federal civilian agencies to address them. While CISA warned of the danger last week, it had not observed successful exploitation in the wild until now. On October 24, Perplexity security researcher Adel Karimi recorded 35 successful shell executions across three honeypots running PHP 8.4.26 under Apache mod_php, leveraging memory exhaustion and disclosure to achieve RCE.
Delft University’s Threat Intelligence Lab has tracked over 50,000 PHP2Shell exploitation requests from more than 600 IP addresses across 70 countries. Of these, 171 addresses went beyond probing for vulnerable servers and began sending exploit code or malware droppers.
Recommended Actions and Mitigation Strategies
To secure systems, it is paramount to update PHP to the patched versions immediately. If immediate patching is not feasible, isolating internet-facing PHP applications and deploying WAF or IDS rules are recommended. A partial mitigation, such as setting session.upload_progress.enabled=0, only blocks one demonstrated path for CVE-2026-109619 and does not address CVE-2026-109618.
Patched PHP Versions:
| PHP Branch | Patched Version |
|---|---|
| PHP 8.5 | 8.5.12 |
| PHP 8.4 | 8.4.27 |
| PHP 8.3 | 8.3.36 |
| PHP 8.2 | 8.2.35 |
For PHP versions 7.4, 8.0, and 8.1, PHP has published minimal source backports, but no official releases are available for these branches. These should be considered a stopgap measure, with a full upgrade planned.
Discovering Vulnerable PHP Installations
Identifying all PHP installations can be challenging, as PHP often resides in various locations, including OS packages, Homebrew, bundled copies on Windows, and within custom applications and containers. It is crucial to inspect the PHP binaries themselves, as the version string (e.g., X-Powered-By: PHP/x.y.z) is embedded, allowing for exact version identification without execution. For organizations utilizing Tanium solutions, specific tools are available to discover and inventory vulnerable PHP installations across the entire infrastructure.
The active exploitation of PHP2Shell means organizations running PHP are under immediate threat of compromise. Urgent patching to the fixed versions is critical. Where immediate updates are not possible, temporary mitigations like isolating vulnerable applications and deploying WAF/IDS are essential. Companies should also conduct retroactive hunting through web server and PHP-FPM logs for unusual crashes or requests. Given PHP’s widespread use, this situation highlights the importance of regular software audits and timely patch management for maintaining robust cybersecurity. As seen with recent major system updates from Apple, consistent patching is foundational to security.
We actually encountered some weird behavior on one of our internal PHP 8.2 servers earlier this week, and this article explains it perfectly. We’ve been trying to keep up with the updates, but these zero-day exploits are brutal. The `session.upload_progress.enabled=0` partial mitigation might buy some time, but it’s really just a band-aid. We’re prioritizing the full patch rollout tonight. My tip would be to always have a rollback plan ready, even for minor PHP updates, because you never know what’s going to break.