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

CVE-2026-109618 · GHSA-w8hw-w9fx-j79w

CVE-2026-109618: PHP RCE via out-of-memory corruption

The PHP security team describes CVE-2026-109618 as a critical vulnerability in PHP core: out-of-memory handling can interrupt PHP while internal request data is only partially initialized, and request cleanup may then treat that invalid data as valid. The team rates it CVSS v4.0 9.2 and says updating is the only complete mitigation.

Last updated

Identifiers reported by the PHP project and secondary advisories.
FieldWhat the cited sources say
CVECVE-2026-109618
GitHub advisoryGHSA-w8hw-w9fx-j79w
SeverityCritical. CVSS v4.0 base 9.2, stated by Jakub Zelenka on oss-security for the PHP security team.
VectorAV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H, as printed by the University of Toronto advisory. The oss-security note we reviewed states the 9.2 score and not this vector string.
Fixed releases8.2.35, 8.3.36, 8.4.27, 8.5.12, and later releases in those branches.
CWEThe Canadian Centre for Cyber Security groups both PHP2Shell CVEs as use-after-free (CWE-416). The PHP project’s own label for this CVE is out-of-memory corruption, which is the wording used here.

What goes wrong, at the level the vendor published

On oss-security, Jakub Zelenka wrote that PHP uses longjmp() to abort request handling on out-of-memory errors, that an allocation failure can interrupt initialization while incomplete request state is already reachable, and that request shutdown may then access that invalid state, potentially allowing remote code execution. The PHP Foundation’s account matches: if a request reached memory_limit at the wrong moment, PHP could leave partially initialized internal data and later treat it as valid.

That is the mechanism description we will publish. We are not describing how to force the allocation failure.

What has been demonstrated

Impact

Successful exploitation, where it works, is unauthenticated remote code execution as the PHP worker’s operating-system account. Wiz and Cloudflare also describe crash and disclosure of process memory. Reach depends on build, extensions, and server layout; the University of Toronto advisory says exploit reliability varies and that PHP has validated full RCE. There is no trustworthy single “works everywhere” claim in the sources we reviewed, and no reason to wait for one before patching.

Fix

Upgrade to 8.2.35, 8.3.36, 8.4.27, or 8.5.12 or later, and restart the workers that serve traffic. The oss-security note says updating is the only complete mitigation. Interim settings published by PHP, including memory_limit=-1 and a low post_max_size, are incomplete: the project says an underlying allocation failure can still reach the vulnerable path even if the controllable memory limit is removed. NVD’s record was reported by Tanium as published on 21 October 2026 and marked “Undergoing Analysis.” Use the PHP advisory as the operational source if NVD’s text is still catching up.

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. Today’s PHP security release, and how we’re strengthening PHP security — The PHP Foundation
  3. CVE-2026-109618: PHP 8.2–8.5 RCE via OOM corruption — oss-security (Jakub Zelenka, PHP security team)
  4. GHSA-w8hw-w9fx-j79w — CVE-2026-109618 — PHP (GitHub Security Advisory)
  5. Security advisory: critical unauthenticated RCE in PHP (“php2shell”) — University of Toronto Information Security
  6. Notice: php2shell, critical PHP vulnerabilities (status as of 21 October 2026, 20:00 UTC) — Expel
  7. Critical vulnerabilities in PHP require immediate patching (21 October 2026) — CISA
  8. Responding to core PHP vulnerabilities CVE-2026-109618 and CVE-2026-109619 — Google Cloud
  9. CVE-2026-109618 — NVD
  10. PHP2Shell: AI uncovers critical RCE vulnerabilities affecting 70% of the Internet — Wiz Research