Digital Defenders

Famous vulnerabilities · 19

PHP2Shell (CVE-2026-109618 & CVE-2026-109619)

Two bugs in PHP itself, so every PHP website was in scope, not just one app.

  • CVEs CVE-2026-109618 / -109619
  • CVSS v4 9.2
  • Patched 21 Oct 2026
  • Fixed in 8.5.12 · 8.4.27 · 8.3.36 · 8.2.35
  • KEV 26 Oct 2026
Request Aforces an error path(e.g. out of memory)Request Blands on the same workerand uses what was leftOne PHP workerserves request after requestRequest memoryLeftover stateoutlives its requestNext requestCode executionas the web server user,no login neededOnly fix: PHP 8.5.12 · 8.4.27 · 8.3.36 · 8.2.35 (no config change fully closes it)Simplified mental model of the two bugs. PHP's advisories describe the internals.
Request Aforces an error path (e.g. out of memory)One PHP workerleftover state outlives the requestRequest Blands on the same worker and uses what wasleftCode executionas the web server user, no login neededOnly fix: upgrade PHP8.5.12 · 8.4.27 · 8.3.36 · 8.2.35Simplified mental model of the two bugs
Diagram: PHP2Shell

PHP2Shell is the name for two critical flaws in the PHP engine, the language behind roughly 70% of websites. CVE-2026-109618 is memory corruption that happens when PHP hits an out-of-memory condition and leaves internal request data in an unsafe state. CVE-2026-109619 is stale request state: data that outlives the memory it points to, so the next request handled by the same PHP worker can act on it. PHP confirmed both can give an attacker code execution without logging in.

Because the bugs sit in PHP rather than in one application, PHP said all installations serving web requests were at risk (PHP-FPM, Apache with mod_php at highest risk, php-cgi, FrankenPHP and LiteSpeed), including WordPress, Drupal and Joomla sites. Details leaked before the coordinated release on 21 October 2026, and Amazon reported an exploitation attempt dating back to 17 October. CISA added both to KEV on 26 October.

Reports of “successful attacks” came fast and some were premature, which is a good reason to read the primary evidence. The confirmed case, on 24 October, was remote code execution against an intentionally favourable single-worker mod_php honeypot. The fix is simple to state: upgrade to 8.5.12, 8.4.27, 8.3.36 or 8.2.35 (PHP says no configuration change fully closes it), and remember appliances and products that embed their own PHP. Two days later PHP disclosed a separate, still-unpatched flaw (CVE-2026-115560) that needs an unusual session configuration; setting session.upload_progress.enabled=0 blocks it.

Seen in the wild (honeypots)

Honeypots record 35 successful PHP2Shell exploitsSix decoy servers were broken into from two IP addresses, with root access soon after. No named real-world victim yet.bankinfosecurity.com ↗ CISA confirms PHP2Shell exploited in attacksBleepingComputer on the KEV listing, the leaked details and early exploitation.bleepingcomputer.com ↗
Sources

Updated on 12 Nov 2026