Every PHP engine CVE with a fixed release, by branch (and which are exploited)

PHP backports fixes per branch, so 'upgrade to the latest' is the wrong check. Here is each engine CVE in the feed with the fixed release for 8.1, 8.2, 8.3, 8.4 and 8.5, which SAPI it needs, and which four are in CISA KEV, including the two October 2026 use-after-frees.

Published 2026-10-28 · data: phpwarden feed 2026.10.28.1 (generated 2026-10-27) · sources: OSV.dev, FriendsOfPHP, NVD, CISA KEV, FIRST EPSS

8engine CVEs tracked
4in CISA KEV
5branches with fixed releases
6CVSS 9.0+

Why "upgrade to the latest PHP" is the wrong check

PHP ships security fixes to every supported branch at once. A CVE fixed in 8.3.36 is also fixed in 8.2.35 and 8.4.27 — and not fixed in 8.3.35. So the question for a host is never "are you on 8.5" but "is your 8.3.x at or above the 8.3 fix". And a branch that is end-of-life (7.1, 7.2, 7.3, 8.0, 8.1) has no fixed release at all: a host on it is exposed to every CVE published after its last release, forever.

Several of these also only apply to one SAPI. CVE-2019-11043 needs PHP-FPM behind nginx with a specific misconfiguration; the CGI ones need php-cgi, and CVE-2024-4577 needs Windows. phpwarden reports those as possibly exposed with the condition to check rather than as a certain hit.

Every engine CVE in the feed, with the fixed release per branch

"—" means the branch has no fix: either it was not affected, or it was already end-of-life when the CVE was published.

CVEWhatSAPI8.18.28.38.48.5
CVE-2026-109618 KEV
critical 9.2 · EPSS 100%
Upload-progress use-after-free and remote process-memory disclosureany—8.2.358.3.368.4.278.5.12
CVE-2026-109619 KEV
critical 9.2 · EPSS 100%
Fatal-error backtrace use-after-free and OPcache type confusionany—8.2.358.3.368.4.278.5.12
CVE-2024-4577 KEV
critical 9.8 · EPSS 100%
PHP-CGI argument injection to RCE on Windows via Best-Fit encodingcgi / windows8.1.298.2.208.3.8——
CVE-2019-11043 KEV
critical 9.8 · EPSS 100%
PHP-FPM remote code execution via env_path_info buffer underflowfpm—————
CVE-2023-3824
critical 9.8 · EPSS 22%
Stack buffer overflow / RCE when loading a crafted PHAR archiveany8.1.228.2.8———
CVE-2024-8926
high 7.5 · EPSS 4%
PHP-CGI cgi.force_redirect bypass on non-standard code pages (incomplete CVE-2024-4577 fix)cgi / windows8.1.308.2.248.3.12——
CVE-2024-11236
critical 9.8 · EPSS 2%
Integer overflow causing out-of-bounds write in DB quoters / ldap_escapeany8.1.318.2.268.3.14——
CVE-2024-8927
high 7.5 · EPSS 1%
cgi.force_redirect bypass via HTTP_PROXY-style environment variable collisioncgi, fpm8.1.308.2.248.3.12——

The 4 in CISA KEV

Two of them were published on 2026-10-21 and were in KEV within a week. Both are use-after-frees reachable remotely on common FPM setups, both have fixes in every supported branch, and neither has a fix for 8.1 or older.

What to do

  1. Check the branch, not the major. phpwarden scan auto-detects version, SAPI and OS on the host and compares against the fixed release for that branch; phpwarden scan --version 8.2.34 --sapi fpm --os linux does it for a version you type in.
  2. Get off end-of-life branches first. It is the only item on this page with no patch.
  3. For FPM hosts you cannot patch today, the guard daemon watches workers for in-progress memory-corruption exploitation and recycles them — a stopgap, not a fix.

Check your own project in one command

Zero dependencies, offline, Apache-2.0. Ranks by KEV → EPSS → CVSS.

pipx install phpwarden
phpwarden deps composer.lock        # Composer
phpwarden scan                      # PHP engine on this host
phpwarden wordpress /var/www/html   # WordPress core, plugins, themes

In CI: uses: primeagent001-bot/phpwarden-action@v1 with fail-on: exploited. Or composer require --dev phpwarden/phpwarden.

Method: see the full-feed analysis for sources and caveats. EPSS is a 30-day exploitation probability as of the feed date; KEV membership as of the feed date. Browse everything at /advisories.