What happened. On October 21 at 14:00 UTC the PHP team released 8.5.12, 8.4.27, 8.3.36 and 8.2.35 to fix two unauthenticated remote code execution bugs, CVE-2026-109618 and CVE-2026-109619, both rated CVSS v4.0 9.2 (PHP advisory). The team had posted advance notice on October 20. Wiz found the bugs on August 19 and reported them August 24; PHP acknowledged on September 21 (Astra timeline).
The mechanism. The first bug is out-of-memory handling: PHP can be interrupted while request data is half-initialised, and cleanup then treats the invalid data as valid. The second is stale global state: request-owned internal state survives after its memory is freed, and a later request on the same worker can use it before initialisation resets it. Everything serving web requests is affected (FPM, mod_php, php-cgi, FrankenPHP, LiteSpeed). PHP rates mod_php highest, because an unauthenticated request can trigger it before any application code runs. Wiz demonstrated RCE against WordPress, Drupal and Joomla, and says frontier models helped chain the bugs.
The leak. The embargo ended early. A user posted on Hacker News before knowing an embargo existed and later apologised (Tell HN, 344 points, 144 comments). Commenters mostly say the breach happened earlier in the chain and blame distributors; the names Chainguard and calif.io come up, but I could not verify that from a primary source. watchTowr publicly confirmed the leaked bugs were real before the patch was out. The tptacek comment calls it a five-alarm fire and says non-public PoCs work, while others say the public PoCs mostly fail and depend on conditions like disabled ASLR. CISA and the FBI both issued advisories (seen on X).
Who is affected, and what is unknown. A commenter in r/ExperiencedDevs (135 points, 58 comments) says Cloudflare's WAF mitigated millions of attempts and that the public php2shell script owns a stock PHP 8.2 plus Laravel install in 35 seconds. Both claims are unverified. Confirmed in-the-wild compromise counts are not public. PHP 8.1 and older get no official fix; PHP published minimal backports for 7.4, 8.0 and 8.1, and some vendors backport silently, so version strings can mislead.
Assessment. HIGH confidence the bugs are real and patchable now. LOW confidence on how many servers were actually hit. The best reaction in the thread came from an engineer who patched hundreds of containers by 8pm because the team upgrades PHP majors yearly, and the business had questioned that habit for years. Expect that to be the argument that finally works for you too.