CyberzSOC

Publication detail
← Back to advisories & guidance

VA-26-295-01: PHP insecure error handling and state management ↗ source

October 22, 2026 CISA Vulnerability Advisory

Summary

PHP insecurely handles multiple combinations of memory allocations and error conditions. These behaviors can allow a remote attacker to cause a denial of service or execute arbitrary code. Successful exploitation depends on a number of factors including the specific PHP application being targeted, the SAPI and web server, error handling and memory resource configuration, and platform or OS-level memory protections. Without significant analysis effort to prove otherwise, any application running on a vulnerable version of PHP should be considered vulnerable and exploitable. CVE-2026-109618: PHP uses longjmp() for out-of-memory (OOM) errors to exit the current context and abort handling of the request. In some contexts, the code before the allocation does not properly account for a early exit and leaves reachable request memory in an uninitialized or otherwise invalid state. The request shutdown procedure may then read or branch on the uninitialized memory. Multiple OOM strategies can consistently trigger this condition and lead to remote code execution (RCE). Application-independent, complete remote code execution has been validated over HTTP against mod_php with default PHP input and memory limits and normal prefork workers. Fixed in PHP 8.2.35, 8.3.36, 8.4.27, and 8.5.12.

Advisory Details CISA IT CSAF feed

Advisory ID
VA-26-295-01
Status
Final · version 1.0.0
Initial release
2026-10-21
Last revised
2026-10-21
Vendor
PHP
Critical infrastructure sectors
Information Technology
Deployed
Worldwide
Vendor headquarters
United States

These vulnerabilities are addressed in PHP versions 8.2.35, 8.3.36, 8.4.27, and 8.5.12. Additional details and mitigations can be found in this PHP advisory: [https://www.php.net/archive/2026.php#2026-10-21-5](https://www.php.net/archive/2026.php#2026-10-21-5) as well as GHSA-w8hw-w9fx-j79w and GHSA-6wmf-4rv5-p3rp.

Affected products (1)
  • php-src — 8.2.35, 8.3.36, 8.4.27, 8.5.12, <8.2.35, <8.3.36, <8.4.27, <8.5.12

From CISA's machine-readable CSAF 2.0 advisory (JSON).

Vulnerabilities as Stated by the Advisory

CVEWeaknessCVSS v3Details
CVE-2026-109618 KEV CWE-755 Improper Handling of Exceptional Conditions 8.1 High PHP multipart/form-data insecure out-of-memory error handling
PHP uses longjmp() for out-of-memory (OOM) errors to exit the current context and abort handling of the request. In some contexts, the code before the allocation does not properly account for a early exit and leaves reachable request memory in an uninitialized or otherwise invalid state. The request shutdown procedure may then read or branch on the uninitialized memory. Multiple OOM strategies can consistently trigger this condition and lead to remote code execution (RCE). Application-independent, complete remote code execution has been validated over HTTP against mod_php with default PHP input and memory limits and normal prefork workers. Fixed in PHP 8.2.35, 8.3.36, 8.4.27, and 8.5.12. CISA SSVC — Exploitation: None · Automatable: No · Impact: Total

Vendor fix: Fixed in PHP 8.2.35, 8.3.36, 8.4.27, and 8.5.12. ↗

Affected, fixed & timeline

Affected:

  • php-src <8.2.35
  • php-src <8.3.36
  • php-src <8.4.27
  • php-src <8.5.12

Fixed in:

  • php-src 8.2.35
  • php-src 8.3.36
  • php-src 8.4.27
  • php-src 8.5.12
CVE-2026-109619 KEV CWE-416 Use After Free 8.1 High PHP insecure state initialization use-after-free
PHP contains error handling, Session, object and extension state that is retained by a worker but points to memory owned by one request. That state must be reset before the request memory is released. Some input, configuration, Session and error handling operations run before normal initialization of the next request. They can trust stale state left by the previous request before initialization has a chance to replace it, causing a use after free. Fixed in PHP 8.2.35, 8.3.36, 8.4.27, and 8.5.12. CISA SSVC — Exploitation: None · Automatable: No · Impact: Total

Vendor fix: Fixed in PHP 8.2.35, 8.3.36, 8.4.27, and 8.5.12. ↗

Affected, fixed & timeline

Affected:

  • php-src <8.2.35
  • php-src <8.3.36
  • php-src <8.4.27
  • php-src <8.5.12

Fixed in:

  • php-src 8.2.35
  • php-src 8.3.36
  • php-src 8.4.27
  • php-src 8.5.12

Scores and weakness types are as CISA or the republishing vendor stated them in this advisory; the linked CVE pages carry the independently enriched CVSS and SSVC assessments.

News Coverage

DateSourceArticle
2026-10-27 The Hacker News CISA Confirms Active Exploitation of Two PHP2Shell Flaws Enabling Remote Code Execution CVE-2026-109618
2026-10-26 BleepingComputer PHP2Shell security flaws now sucessfully exploited in the wild CVE-2026-109618
2026-10-26 ESET WeLiveSecurity PHP2Shell: What to know about two critical PHP flaws CVE-2026-109618
2026-10-26 Check Point Research 26th October – Threat Intelligence Report CVE-2026-109618
2026-10-23 The Hacker News PHP2Shell Exploit Attempts Hit Millions as Attackers Try to Deploy Mirai Malware CVE-2026-109618
2026-10-22 FortiGuard Labs Threat Signal PHP2Shell Remote Code Execution Vulnerabilities CVE-2026-109618
2026-10-21 SANS Internet Storm Center Critical PHP Vulnerability (CVE-2026-109618, CVE-2026-109619) &#x5b;infocon yellow&#x5d;, (Wed, Oct 21st) CVE-2026-109618
2026-10-21 BleepingComputer PHP ships emergency patches for critical PHP2Shell flaws CVE-2026-109618
2026-10-21 Kaspersky Securelist Critical RCE vulnerabilities in PHP (CVE-2026-109618, CVE-2026-109619) CVE-2026-109618
2026-10-21 Unit 42 (Palo Alto Networks) Threat Brief: Critical Vulnerabilities in PHP: CVE-2026-109618, CVE-2026-109619 CVE-2026-109618

Articles from the monitored vendor research blogs and security news feeds that reference a CVE cited in this publication, or name the campaign it covers. Coverage begins when feed monitoring started; earlier articles are not indexed.

CVEs Referenced in This Publication

CVECVSSAffected
CVE-2026-109618 9.2 Critical PHP Group PHP PHP contains an out-of-memory corruption vulnerability that allows for unauthenticated remote code execution.
CVE-2026-109619 9.2 Critical PHP Group PHP PHP contains a stale internal request-state vulnerability that allows for unauthenticated remote code execution.

Named by the advisory itself. Each CVE links to its tracked detail page.

Vendors Named in This Publication

Each vendor links to its Known Exploited Vulnerabilities catalog page. Only vendors that appear in the KEV catalog are listed, either because the publication cites one of their KEV entries or because it names them directly.