Skip to main content

Cloudsoft Zone Build, deploy and scale with practical guides to PHP, Node.js, React, DevOps and AI automation. Explore the guides

Cloudsoft Zone
PHPDevOpsIndustry update

PHP RCE vulnerabilities: patched versions and upgrade guide

Two critical PHP RCE vulnerabilities are fixed in PHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35. Exposure by server API, interim measures and a safe upgrade plan.

Cloudsoft Zone

4 min read

Blue elePHPant plush toy with the PHP logo, the PHP community mascot, illustrating the PHP security release.
Photograph: Atomic Taco from Seattle, WA, USA / CC BY-SA 2.0, via Wikimedia Commons
In this article

Two critical PHP RCE vulnerabilities were fixed on 21 October 2026 in PHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35. Both can allow unauthenticated remote code execution, and both are rated CVSS v4.0 9.2. The PHP project says updating is the only safe choice.

This guide covers the patched versions, how exposure differs between Apache mod_php, PHP-FPM and other server APIs, and a rollout you can follow today. It contains no exploit details.

Sources checked on 26 October 2026. Advisories, prices and availability can change; confirm the linked primary sources before acting.

PHP RCE vulnerabilities patch matrix: fixed releases 8.5.12, 8.4.27, 8.3.36 and 8.2.35, with the 26 October Windows rebuilds.
Fixed release per supported branch, from the PHP security announcement. Editorial table, not a product screenshot.

Which versions fix the PHP RCE vulnerabilities?

Every supported branch has a fixed release. Anything older than the version below is affected.

BranchFixed releaseWindows rebuild (26 October)
8.58.5.128.5.12-1
8.48.4.278.4.27-1
8.38.3.368.3.36-1
8.28.2.358.2.35-1

The two issues are CVE-2026-109618 (memory exhaustion that corrupts state) and CVE-2026-109619 (stale global state). Their GitHub advisories are GHSA-w8hw-w9fx-j79w and GHSA-6wmf-4rv5-p3rp.

Windows users need one more step. On 26 October the PHP project republished Windows packages with a -1 suffix for a Brotli decompression flaw (CVE-2026-111497). It is reachable through cURL when automatic response decompression is enabled.

Exposure differs by server API

Risk is highest on Apache with mod_php. The PHP project reports a demonstrated unauthenticated path there that runs before any application code.

Exposure of the two PHP vulnerabilities by server API: mod_php validated, PHP-FPM conditional, FrankenPHP and LiteSpeed not established.
Exposure summarised from the two GitHub security advisories. Not demonstrated does not mean safe.

PHP-FPM is conditionally exposed, and one path was validated against it. FrankenPHP and LiteSpeed are described as likely or conditional candidates. The release announcement covers all installations serving web requests, including php-cgi. Not demonstrated is not the same as safe.

Command-line PHP that never handles HTTP requests is not named. Treat every web-facing worker as in scope, including staging servers and forgotten admin hosts.

Interim measures while you schedule the upgrade

Interim settings reduce specific attack paths; they do not make a server safe. Use them only to bridge the hours before patched packages are live.

  • Set session.upload_progress.enabled=0 in php.ini, the FPM pool or server configuration. Do not rely on ini_set() or .user.ini. Restart every worker.
  • Limit request size at the reverse proxy, and lower post_max_size and input limits where the application allows.
  • Block multipart requests at the front end if the application never accepts uploads.
  • Remove diagnostics and fatal-error output from paths an attacker can reach.

The advisory also discusses memory_limit=-1 as a partial measure and warns against RLIMIT_AS or RLIMIT_DATA. Removing the memory limit has its own stability cost, so pair it with container or cgroup limits.

A safe upgrade workflow

Inventory first, then patch, restart and verify. Skipping the restart is the most common way a patch silently fails.

  1. Inventory. Check php -v and php-fpm -v on each host. CLI and FPM packages can differ.
  2. Back up. Snapshot the server or image and the database before changing packages.
  3. Patch. Confirm your package source (distribution, PPA, Docker image or Windows build) already ships the fixed release.
  4. Restart every PHP process. Reload FPM pools and Apache; a long-lived worker keeps the old code in memory.
  5. Verify. Check the version each pool reports, run smoke tests and watch error logs.
Technician with a laptop working at an open server rack in a data centre.
Patching is only finished when every PHP worker has restarted on the fixed binary.

For Docker, rebuild from an updated php base tag and redeploy. Our PHP 8.5.11 security release checklist covers the same restart-and-verify routine.

Laravel and WordPress compatibility checks

These are patch releases within each branch, so code changes are not expected. Test before production anyway.

For Laravel, run the test suite on the new binary, then restart Horizon or queue:work processes so they load it. For WordPress, confirm plugins load, scheduled tasks run and uploads still work. Still on 8.2? Plan the branch move with our PHP 8.2 end-of-life checklist.

Our verdict: patch web-facing PHP today, starting with any mod_php host. If you need a version audit or emergency patching across several servers, our Laravel and PHP development team and maintenance and support service can help.

Sources and further reading

Image credits

Explanatory diagrams: Cloudsoft Zone, CC BY-SA 4.0. Featured photograph: Atomic Taco from Seattle, WA, USA, CC BY-SA 2.0, via Wikimedia Commons. Technician with laptop working on server rack at NERSC: Derrick Coetzee from Berkeley, CA, USA, CC0, via Wikimedia Commons.

Frequently asked questions

  • Does a configuration change replace the upgrade?

    No. The PHP project says there are no complete mitigations and that updating is the only safe choice.

  • Is command-line PHP affected?

    The announcement names installations that serve web requests. CLI scripts are not named, but upgrade the package anyway because CLI and FPM usually come from the same source.

  • Do Windows users need anything extra?

    Yes. Install the rebuilt Windows packages with the -1 suffix, published on 26 October, which also fix a Brotli flaw (CVE-2026-111497).

Advertise on CloudSoftZone

Your next customer could start right here.

Introduce your tool, product or business to readers exploring technology.

Advertise with us

Explore placements and request a private quote

Sources

  1. PHP security announcements, October 2026 — PHP, 2026-10-21
  2. RCE via OOM corruption (GHSA-w8hw-w9fx-j79w) — PHP on GitHub, 2026-10-21
  3. RCE via stale global state (GHSA-6wmf-4rv5-p3rp) — PHP on GitHub, 2026-10-21

Written with substantial AI assistance. Facts checked against cited sources. Editorial policy.

Comments

No comments yet. Be the first to join the conversation.

Leave a comment

Every comment is read by a moderator before it appears. Your email address is never published; it is used only to contact you about this comment.

Never published. Used only to contact you about this comment.

Loading the security check…

Comments are moderated before publication.