PHP2Shell and Node2Shell: Find, Fix, and Verify Across Your Web Apps and APIs
PHP2Shell and Node2Shell vulnerabilities impact web apps and APIs running on vulnerable runtimes.
Two critical runtime flaws, PHP2Shell (CVE-2026-109618, CVE-2026-109619) and Node2Shell (CVE-2026-111497), affect all applications and APIs on vulnerable PHP and Node.js versions, respectively. Both are now on the CISA KEV list, with exploitation observed before patches were available. PHP2Shell is fixed in PHP 8.5.12, 8.4.27, 8.3.36, and 8.2.35, while Node2Shell is fixed in Node.js 22.23.4, 24.22.1, and 26.12.1.
AI summary of the linked source. Not reviewed by an editor. How this works
Run PHP?
Get an email when a new story names PHP, usually within the hour.
Free. Your list stays private and never appears in a subject line. One click stops it. How Vendor Watch worksPrivacy
The lesson from this incident
Full lessonPHP2Shell and Node2Shell represent critical runtime vulnerabilities affecting PHP and Node.js respectively, enabling remote code execution across any application or API built on vulnerable versions. Crucially, exploitation was observed before patches were available, meaning organizations relying on reactive patch cycles were already exposed. This highlights the danger of running internet-facing applications on unvalidated runtime versions without compensating controls. The incidents underscore that web application runtimes are high-value attack surfaces requiring the same rigorous patch and vulnerability lifecycle management as operating systems and network devices.
What helps against this
How we list vendors- Vulnerability scanning and prioritisation
You know which systems are vulnerable, and which ones to fix first.
- Automated patch management
Known holes get closed in days, not months.
- Cyber asset inventory
You cannot patch, monitor or protect the devices, cloud resources and accounts you do not know you have.
Indicators of Compromise
Extracted by AI from the linked source. Not reviewed by an editor. How this works
- cve — CVE-2026-109618
- cve — CVE-2026-109619
- cve — CVE-2026-111497