Critical 9.2 Actively Exploited

PHP RCE actively exploited in the wild (CVE-2026-109619) [PoC]

CVE-2026-109619

By Yazoul AI · automated

CVE-2026-109619: PHP global state reuse across requests lets attackers trigger remote code execution (CVSS 9.2), now actively exploited. Update PHP to the latest patched release.

Affected: Php Siemens Ruggedcom Ape1808 Firmware Siemens Ruggedcom Ape1808 Paloaltonetworks Pan-Os Paloaltonetworks Panorama M-200

Actively exploited in the wild - CVE-2026-109619 is a critical remote code execution flaw in PHP (all versions that reuse global state across requests, including server module and persistent-process builds) that lets a remote, unauthenticated attacker execute arbitrary code on the server. No official patch is confirmed yet - apply the mitigations below immediately.

Overview

PHP keeps a set of global variables that briefly point into per-request memory. When a request finishes, that memory is freed, but in certain scenarios the global state is not fully reset, or it gets repopulated afterward. The result is a dangling pointer: for the next request, PHP may still read or branch on data that lives in memory the process no longer owns.

Multiple strategies can trigger this condition. An attacker who can reach the interpreter - through a web request on a typical PHP-FPM, Apache mod_php, or long-running worker setup - can shape the heap and steer that stale state. Because the stale data is attacker-influenced, the interpreter can be induced to execute attacker-controlled code. That makes this a remote, unauthenticated code execution issue, which is why it carries a CVSS score of 9.2 and is being tracked as actively exploited by CISA.

Impact

Any deployment that shares an interpreter process across requests is in scope. An attacker who lands this bug gains code execution in the web server’s context, which typically means full access to application secrets, database credentials, session data, and the ability to pivot into internal networks. Because exploitation abuses state left over between requests, one request can poison the next, so even low-value endpoints on a shared worker pool can become entry points. The high attack complexity reflects the need for heap shaping rather than reliable one-shot exploitation, but real-world attacks have confirmed it is achievable.

Remediation and Mitigation

  • Update PHP to the latest release from php.net as soon as a patched version is published in your branch (8.2, 8.3, 8.4, and 8.5). Treat this as urgent given active exploitation.
  • If you cannot patch immediately, run PHP in a mode that does not share interpreter state across requests where feasible, and isolate worker pools so a single compromised process has less reach.
  • Segment PHP-FPM workers with per-pool permissions, and restrict the filesystem and network access available to the web user.
  • Rotate any credentials or secrets that lived in memory reachable by a web worker, and review logs for anomalous requests to low-traffic endpoints.
  • Track the vendor advisory and CISA KEV entry for the authoritative fixed-version list.

Security Insight

This bug is a reminder that long-lived interpreter processes are a shared-memory surface, and cross-request state hygiene is a hard promise to keep. It echoes earlier PHP and engine-level use-after-free episodes, but the active-exploitation status raises the stakes: a flaw that only matters across requests is exactly the kind attackers can test cheaply on public services. Expect copycat variants to surface as researchers probe other language runtimes with persistent worker pools. For related persistence risks, see Apple fixes iOS CoreGraphics zero-day CVE-2026-86950 and LangChain, LangGraph Flaws Expose Files, Secrets,.

Further Reading

Share:

Never miss a critical vulnerability

Get real-time security alerts delivered to your preferred platform.

Public PoC References

Unverified third-party code

These repositories are publicly listed on GitHub and have not been audited by Yazoul Security. They may contain malware, backdoors, destructive payloads, or operational security risks (telemetry, exfiltration). Treat them as hostile binaries. Inspect source before execution. Run only in isolated, disposable lab environments (offline VM, no credentials, no production data).

Authorized use only. This information is provided for defensive research, detection engineering, and patch validation. Using exploit code against systems you do not own or do not have explicit written permission to test is illegal in most jurisdictions and violates Yazoul's terms of use.

Repository Stars
aarsaputra/php2shell

Unauthenticated RCE toolkit for PHP 5.4–8.4.26 (CVE-2026-109619/109618) — pure-HTTP chain, JA3 impersonation, prpenetration-testingoof-of-access design

★ 87
unlimit0118/CVE-2026-109619-php2shell-poc

Minimal PHP session upload progress use-after-free PoC and Docker lab.

★ 5
cozybear-dev/cve-2026-109619 ★ 4
LordX404/php2shell-exploit

this is a exploit for CVE-2026-109619

★ 2
dev-maple/php2shell-CVE-2026-109619

CVE-2026-109619 (PHP2Shell): Pre-Auth Remote Code Execution (RCE) via PHP-FPM Stale Global State Deserialization UAF. Reproducible Docker lab, interactive shell, reverse shell & WAF/IDS rules.

★ 2

Showing 5 of 17 known references. Source: nomi-sec/PoC-in-GitHub.

Related Advisories

Other Php Vulnerabilities

View all Php vulnerabilities →

Never Miss a Critical Alert

CVE advisories, breach reports, and threat intel — delivered daily to your inbox.