Not php.net · Not NVD · Not CISA

PHP Vulnerability Tracker

Unofficial briefing on PHP security vulnerabilities

English简体中文

Security alert

PHP2Shell: upgrade PHP. That is the only complete fix.

CVE-2026-109618 and CVE-2026-109619 are critical, unauthenticated remote-code-execution bugs in PHP itself. The PHP project shipped fixes on 21 October 2026 for the supported 8.2–8.5 branches. Restart PHP after you upgrade. A firewall is not a substitute.

Remediation steps

PHP 8.5

Is PHP 8.5 vulnerable to PHP2Shell?

The PHP security team names PHP 8.5 before 8.5.12 in the affected list for both CVEs. PHP 8.5.12 is the first upstream release in this branch that closes them. A version string at or above 8.5.12 is the comparison the project published; it does not prove the web server has been restarted onto that binary.

Last updated

Facts for the PHP 8.5 branch. The source column is the page that states the cell, not a second opinion from this site.
FactWhat the source saysSource
Affected rangePHP 8.5 before 8.5.12oss-security
Upstream fix8.5.12 on 21 October 2026, or a later 8.5 releasephp.net
Both CVEsOne release closes CVE-2026-109618 and CVE-2026-109619. There is no second patch number.php.net
SeverityCVSS v4.0 9.2 for each CVE, as stated by the PHP security teamoss-security
Where it appliesInstallations that serve web requests. Apache mod_php is the highest risk named by PHP. PHP-FPM is also in scope.php.net
What to doUpgrade to 8.5.12 or later and restart the workers. CISA says to patch immediately. A firewall is not the complete fix.CISA; php.net

How to read a version string

Compare the major.minor.patch triplet with 8.5.12. Anything in the 8.5 branch below that triplet is the range the security team listed. The version checker does that comparison in the browser and does not see whether a distribution kept an older number and shipped a backport under a package suffix. On this supported branch the upstream fix is itself a version bump, so a triplet below 8.5.12 is not the php.net fix.

After the package is installed, check the SAPI that answers HTTP, not only `php -v` on an admin shell. Restart php-fpm or Apache so the new binary is the one serving traffic. Steps for apt, dnf, Docker, cPanel, and Plesk are on the remediation page. 宝塔面板 has a separate click path on the BT Panel page.

Other branches

Is PHP 8.5 vulnerable?

Yes, before 8.5.12. Jakub Zelenka’s oss-security note lists PHP 8.5 below 8.5.12 among the affected versions for CVE-2026-109618, in the same release window as CVE-2026-109619. The php.net advisory treats the pair together.

Which PHP 8.5 version fixes it?

PHP 8.5.12, released on 21 October 2026, or a later release in the 8.5 branch. That is the upstream fix for both CVE-2026-109618 and CVE-2026-109619. Install it, then restart Apache, PHP-FPM, or whichever SAPI serves the site.

Does 8.5.12 fix both CVEs?

The PHP project published one set of releases for both bugs. There is no separate 8.5 patch for CVE-2026-109618 and another for CVE-2026-109619.

Is a firewall or a php.ini change enough?

No. The PHP project says updating is the only complete fix. Interim settings reduce specific paths and are copied on the remediation page. They are not a substitute for PHP 8.5.12.

Sources

Outbound links leave this site. We do not host exploit code.

  1. News archive 2026: security advisory, 21 October 2026 — PHP project (php.net)
  2. CVE-2026-109618: PHP 8.2–8.5 RCE via OOM corruption — oss-security (Jakub Zelenka, PHP security team)
  3. Today’s PHP security release, and how we’re strengthening PHP security — The PHP Foundation
  4. Critical vulnerabilities in PHP require immediate patching (21 October 2026) — CISA
  5. GHSA-w8hw-w9fx-j79w — CVE-2026-109618 — PHP (GitHub Security Advisory)
  6. GHSA-6wmf-4rv5-p3rp — CVE-2026-109619 — PHP (GitHub Security Advisory)