// threat brief

PHP "PHP2shell" CVE-2026-109618: out-of-memory handling corrupts request data and may let unauthenticated attackers run code remotely

CVSS
9.8 CRITICAL
CISA KEV
Not listed
Weakness
CWE-416 · CWE-824 · CWE-755 · CWE-1325 · CWE-1419
Topics
Web apps

PlainCVE Team · Published 2026-10-21 · AI-assisted · Press brief ↓

AI review 2026-10-21 (not human-reviewed)Command tests: none yetReproduced: not yetVerification record ↓

When PHP runs out of memory mid-request, cleanup can misuse half-built data, potentially letting unauthenticated attackers run code over HTTP.

Who is affectedPHP 8.2–8.5 branches before 8.2.35, 8.3.36, 8.4.27 and 8.5.12; 8.6.0 test builds before 8.6.0 RC4 (php.net urges them to update; source php.net). Whether PHP 8.1 and earlier are affected differs between primary sources (maintainer GHSA says "< 8.2.35" with no lower bound; the CVE record lists only 8.2.*–8.5.* and defaults to unaffected); treat them as possibly affected (see below).
What happensThe maintainers' GHSA confirms unauthenticated remote code execution as the web worker account. On Apache mod_php the attack happens before any application code runs, so the application's own login cannot stop it (FrankenPHP is likely the same); on FPM it triggers while the application is running, with no complete exploit shown.
What to do nowUpgrade to PHP 8.2.35, 8.3.36, 8.4.27, 8.5.12 or a later release in the same branch, or install your Linux distribution's / LTS vendor's updated packages. PHP says updating is the only complete mitigation.
Affected versions8.2 before 8.2.35, 8.3 before 8.3.36, 8.4.x before 8.4.27, 8.5 before 8.5.12; 8.6.0 test builds before 8.6.0 RC4 (php.net urges everyone running them to update immediately; source php.net). PHP 8.1 and earlier: the maintainer GHSA says "< 8.2.35" (no lower bound) and the NVD CPE is also everything before 8.2.35 (no start version); the CVE record (CNA) lists only 8.2.*–8.5.* and defaults to unaffected; Datadog says PHP 5–8.1 are affected. Sources differ; unconfirmed.
Fixed versions8.2.35, 8.3.36, 8.4.27, 8.5.12 or later in the same branch; 8.6.0 RC4 (test release) also has the fixes; 7.4, 8.0 and 8.1 get only minimal source backports from PHP, no official releases.
CVSS vector
Show full vectorNVD CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Timeline
  • First public 2026-10-21

Blue team playbook

Check, fix / mitigate, respond, harden. Matching the affected versions does not mean you were compromised, and a check that finds nothing does not prove you are safe; each item says what it can and cannot show. Tagged steps point to where the attack flow below can be stopped.

DETECTCheckAm I affected? Any signs of compromise?
  1. 01Check the PHP version your website actually uses

    Run on the web server host or inside the container. 8.2–8.5 before 8.2.35, 8.3.36, 8.4.27 and 8.5.12 are affected; treat 8.6.0 test builds before RC4 as affected too (php.net urges them to update; source php.net). For 8.1 and earlier (including 7.4 and 8.0): the maintainer GHSA and NVD ranges have no lower bound while the CVE record defaults to unaffected, so take the union, treat them as possibly affected, and use PHP's source backports or vendor packages. PlainCVE note: the command-line php may differ from what Apache mod_php or FPM loads, so check both; if you use distribution packages, go by your vendor's update notice.

    Read-only check
    php -v
  2. 02Look for signs of attack (Datadog suggestion)

    Datadog suggests looking for large form submissions, memory-exhaustion errors during request initialization, and unexpected shell processes. The example only reads logs and is run on the web server (works in bash and zsh, uses no wildcards so a missing path doesn't abort it); the two greps cover the Apache log directory (including subfolders) and files under /var/log with php in the name; log paths depend on your system. Rotated .gz logs are not read by grep; check them separately with zgrep.

    Read-only check
    { grep -rEi 'memory size|out of memory' /var/log/apache2/ 2>/dev/null; grep -rEi 'memory size|out of memory' /var/log/ --include='*php*' 2>/dev/null; } | tail -n 50
MITIGATEFix / mitigatePatch; block it if you cannot patch yet
  1. 01Upgrade PHP (official)

    Upgrade to 8.2.35, 8.3.36, 8.4.27, 8.5.12 or later in the same branch. Linux distributions and LTS vendors got the patches in advance, so check your vendor for updated packages. PHP says updating is the only complete mitigation.

  2. 02Can't update yet: PHP's exposure-reducing measures

    PHP says these only reduce exposure to specific attack paths and do not make an installation safe: set memory_limit=-1 in a way apps can't override (such as php_admin_value) and make sure no other setting restores a finite limit; set post_max_size = 8M if the app has no file uploads; use container or cgroup memory limits as an availability boundary, ideally killing only the affected worker. The command below is a read-only check; run it on the web server. Note that php -i shows only the command-line (CLI) settings, not the values mod_php or FPM actually apply, so seeing memory_limit=-1 does not mean the mitigation is in effect. Verify in the SAPI your site really uses (for example the FPM pool configuration, the Apache configuration, or a value reported by a request to the site itself), and confirm no pool, directory or application setting puts a finite limit back.

    Read-only check
    php -i | grep -E '^(memory_limit|post_max_size)'
  3. 037.4, 8.0, 8.1: use PHP's source backports

    The PHP security team released minimal source backports for these three end-of-life branches for people building from source or without an LTS vendor; these branches get no official releases.

RESPONDRespondIf you find signs of compromise
  1. 01If you find unexpected shell processes, treat the server as possibly compromised

    PlainCVE suggestion: per the maintainers' GHSA, the confirmed impact is code execution as the web worker account, so review the files, configuration and credentials that account can reach, and redeploy on a clean, patched environment. Sansec also says this flaw can leak memory on its own (not confirmed by PHP), so consider whether secrets held in memory may have been exposed. The command below only reads local processes; run it on the web server (or inside the site container) and filter by the web worker account (the example uses www-data; replace it with yours, e.g. apache or nginx). Investigate any sh, bash or dash process under that account.

    Read-only check
    ps -u www-data -o user,pid,ppid,args --forest | grep -E '(^|[ /])(sh|bash|dash)( |$)'
HARDENHardenPrevent the next one
  1. 01Don't rely on disabling upload_progress

    Datadog says the community workaround session.upload_progress.enabled=0 does not protect you; PHP lists that measure only under the other flaw, CVE-2026-109619.

  2. 02Move off end-of-life PHP branches

    PlainCVE suggestion: 7.4, 8.0 and 8.1 get no official releases, and whether PHP 5–8.1 are affected is still disputed; plan to move to a supported branch.

Full remediation steps and notes
  1. Check the PHP your website actually loads. The command-line php -v may not match what Apache mod_php or FPM loads (PlainCVE note), so check both.
  2. Upgrade each branch to the fixed version in the table above or later. If you use Linux distribution or LTS vendor packages, PHP says those vendors got the patches in advance; follow your vendor’s update.
  3. Temporary measures only buy time. PHP says memory_limit=-1, a low post_max_size, and container or cgroup memory limits reduce exposure to specific attack paths but do not make an installation safe; if you set memory_limit=-1, make sure no pool, directory or application setting puts a finite limit back.
  4. Don’t rely on turning off session.upload_progress.enabled. Datadog says it does not protect against this flaw.

Attack flow

Read left to right: this is the order the attack happens in. A blue shield means the step can be stopped; the earlier, the better. Click an icon for details.

Read top to bottom: this is the order the attack happens in. A blue shield means the step can be stopped; the earlier, the better. Tap an icon for details.

PHP "PHP2shell" CVE-2026-109618: out-of-memory handling corrupts request data and may let unauthenticated attackers run code remotely: 1. Sends an HTTP request to any PHP page, with no login → 2. The request drives PHP out of memory (OOM) → 3. PHP aborts the request, leaving request data half set up → 4. Request cleanup treats the invalid data as valid → 5. The attacker runs code on the serverCVE-2026-109618 · PHP "PHP2shell" CVE-2026-109618: out-of-memory handling corrupts request data and may letunauthenticated attackers run code remotelyAttackerYour systemSends an HTTP request to any PHP page, with no login — Datadog says any PHP script exposes the vulnerable path, even one that only prints a response; Sansec says every known trigger is a multipart/form-data (form upload) request. 1Sends an HTTPrequest to any PHPpage, with no loginThe request drives PHP out of memory (OOM) — The CVE record says several OOM strategies can trigger this consistently. On Apache mod_php this happens before application code runs (FrankenPHP is likely the same); on FPM it triggers while the application is running, with no complete exploit shown. 2The request drivesPHP out of memory(OOM)PHP aborts the request, leaving request data half set up — On OOM, PHP uses longjmp() to jump out of the current context; some code paths don't account for this and leave request memory uninitialized before an allocation. 3PHP aborts therequest, leavingrequest data halfset upRequest cleanup treats the invalid data as valid — This corrupts memory; the CVE record lists use after free (CWE-416) and access of an uninitialized pointer (CWE-824). 4Request cleanuptreats the invaliddata as validThe attacker runs code on the server — PHP says this can potentially allow remote code execution, demonstrated over HTTP against Apache mod_php; the maintainers' GHSA confirms the impact is code execution as the web worker account. 5The attacker runscode on the serverAttack pathCan be stopped herePlainCVE · plaincve.date/en/vulns/cve-2026-109618-php-oom-memory-corruption-rce · CC BY 4.0
PHP "PHP2shell" CVE-2026-109618: out-of-memory handling corrupts request data and may let unauthenticated attackers run code remotely: 1. Sends an HTTP request to any PHP page, with no login → 2. The request drives PHP out of memory (OOM) → 3. PHP aborts the request, leaving request data half set up → 4. Request cleanup treats the invalid data as valid → 5. The attacker runs code on the serverCVE-2026-109618 · PHP "PHP2shell"CVE-2026-109618: out-of-memory handlingcorrupts request data and may letunauthenticated attackers run cod…Sends an HTTP request to any PHP page, with no login — Datadog says any PHP script exposes the vulnerable path, even one that only prints a response; Sansec says every known trigger is a multipart/form-data (form upload) request. 1AttackerSends an HTTP request to anyPHP page, with no loginThe request drives PHP out of memory (OOM) — The CVE record says several OOM strategies can trigger this consistently. On Apache mod_php this happens before application code runs (FrankenPHP is likely the same); on FPM it triggers while the application is running, with no complete exploit shown. 2Your systemThe request drives PHP out ofmemory (OOM)PHP aborts the request, leaving request data half set up — On OOM, PHP uses longjmp() to jump out of the current context; some code paths don't account for this and leave request memory uninitialized before an allocation. 3Your systemPHP aborts the request, leavingrequest data half set upRequest cleanup treats the invalid data as valid — This corrupts memory; the CVE record lists use after free (CWE-416) and access of an uninitialized pointer (CWE-824). 4Your systemRequest cleanup treats theinvalid data as validThe attacker runs code on the server — PHP says this can potentially allow remote code execution, demonstrated over HTTP against Apache mod_php; the maintainers' GHSA confirms the impact is code execution as the web worker account. 5AttackerThe attacker runs code on theserverAttack pathCan be stopped herePlainCVE · CC BY 4.0plaincve.date/en/vulns/cve-2026-109618-php-oom-memory-corruption-rce
Free to use in reporting and teaching under CC BY 4.0. Attribution is already on the image.
  1. Attacker

    Sends an HTTP request to any PHP page, with no login

    Datadog says any PHP script exposes the vulnerable path, even one that only prints a response; Sansec says every known trigger is a multipart/form-data (form upload) request.

    Defense: Official temporary measure (reduces exposure only): if the app has no file uploads, set post_max_size = 8M.

  2. Your system

    The request drives PHP out of memory (OOM)

    The CVE record says several OOM strategies can trigger this consistently. On Apache mod_php this happens before application code runs (FrankenPHP is likely the same); on FPM it triggers while the application is running, with no complete exploit shown.

    Defense: Official temporary measures: set memory_limit=-1 in a way apps can't override, and use container or cgroup memory limits. PHP notes a real allocation failure can still reach the bug, so this is not safe on its own.

  3. Your system

    PHP aborts the request, leaving request data half set up

    On OOM, PHP uses longjmp() to jump out of the current context; some code paths don't account for this and leave request memory uninitialized before an allocation.

    Defense: Upgrade to 8.2.35, 8.3.36, 8.4.27, 8.5.12 or later (official).

  4. Your system

    Request cleanup treats the invalid data as valid

    This corrupts memory; the CVE record lists use after free (CWE-416) and access of an uninitialized pointer (CWE-824).

    Defense: Upgrade (PHP says this is the only complete mitigation).

  5. Attacker

    The attacker runs code on the server

    PHP says this can potentially allow remote code execution, demonstrated over HTTP against Apache mod_php; the maintainers' GHSA confirms the impact is code execution as the web worker account.

    Defense: Datadog suggestion: watch for unexpected shell processes.

Who is affected

PHP is the server-side programming language behind a great many websites. Two flaws were patched together and nicknamed “PHP2shell”. This page covers CVE-2026-109618 (PHP’s title is “RCE via OOM corruption”, GitHub advisory GHSA-w8hw-w9fx-j79w); the other one is CVE-2026-109619.

PHP branchAffectedFixedBasis
8.2before 8.2.358.2.35 or laterPHP (oss-security)
8.3before 8.3.368.3.36 or laterPHP (oss-security)
8.48.4.x before 8.4.278.4.27 or laterPHP (maintainer GHSA, oss-security)
8.5before 8.5.128.5.12 or laterPHP (oss-security)
8.68.6.0 test builds before RC4 (php.net urges updating)8.6.0 RC4 (test release, not for production) has the fixesphp.net
7.4, 8.0, 8.1Disputed (see below)Minimal source backports from PHP only; no official releasesBackports: PHP; affected status: see below
PHP 5 through 8.1Sources disagreeNo official releases; PHP provides minimal source backports for 7.4, 8.0 and 8.1 only (Datadog says the older versions won’t be patched)See below

Sources disagree on older versions:

  • Datadog says PHP 5 through 8.1 are also vulnerable but are end of life and won’t be patched. Sansec says the vulnerable code dates back to PHP 5.4.0 (2012); PHP has not confirmed this.
  • The maintainers’ GHSA lists affected versions as ”< 8.2.35, < 8.3.36, < 8.4.27, < 8.5.12”, with no lower bound; the NVD CPE’s first range likewise has only versionEndExcluding 8.2.35 and no start version, which literally includes 8.1 and earlier.
  • The same vendor’s CVE record (CNA) lists only 8.2.–8.5. ranges and marks everything else “unaffected” by default (defaultStatus). This page lists both without picking one; detection and fix advice cover the union, so treat 8.1 and earlier as possibly affected. watchTowr also notes the “PHP 5 onward” scope has not been confirmed by an official advisory.
  • Our analysis: PHP chose to publish backports for 7.4, 8.0 and 8.1, which suggests those branches are affected, but PHP does not say so.

Attack conditions (confirmed by PHP): the attack works over HTTP; PHP says it needs no authentication. It has been demonstrated against Apache mod_php (PHP loaded directly into Apache), where it runs entirely before any application code executes (per the GHSA, FrankenPHP is likely the same). FPM (a separate pool of PHP processes) exits the child when request startup fails; source analysis still suggests it is susceptible, but the trigger happens after normal startup, in application-specific scenarios, and no complete FPM exploit has been shown. Per the GHSA, LSAPI resembles FPM. php.net lists FPM, mod_php, php-cgi, FrankenPHP and LiteSpeed as at risk, and considers mod_php highest.

Researchers add: Datadog says application-level login cannot block the attack (PHP confirms the pre-application path only on mod_php) and that any PHP script exposes the vulnerable path; Sansec says every known trigger is a multipart/form-data (form upload) request.

Sources disagree on whether session upload progress matters: JFrog (that page contains exploit material; we do not link it) lists session.upload_progress.enabled=On (the default) plus accepted multipart uploads as required; Datadog says turning that setting off does not protect you; PHP lists that measure only under CVE-2026-109619.

How it works

When PHP handles a web request, it first builds internal data for that request in memory. If it runs out of memory (OOM) part-way through, PHP uses longjmp() (a C mechanism that jumps straight out of the current flow) to abandon the request.

The trouble is that some code paths don’t account for being jumped out of during an allocation, and leave request data uninitialized beforehand. The request cleanup then treats that invalid data as valid, which corrupts memory. The CVE record’s weakness types include CWE-416 (use after free), CWE-824 (access of uninitialized pointer), CWE-755 (improper handling of exceptional conditions), CWE-1325 and CWE-1419. It says several OOM strategies can trigger this consistently and lead to remote code execution. PHP adds that even with memory_limit=-1, a real underlying allocation failure can still reach the vulnerable code.

The flawed approach (conceptual illustration, not PHP source code):

Show code example(c)
req->data = /* not set yet */;
buf = allocate(size);   // out of memory → jump out; req->data is never set
req->data = buf;
...
cleanup(req);           // treats req->data as valid → memory corruption

A safer approach (conceptual illustration):

Show code example(c)
req->data = NULL;       // set a safe empty value before any allocation that can fail
buf = allocate(size);
req->data = buf;
...
cleanup(req);           // recognises the empty value and doesn't misuse it

The fix mechanism: per the maintainers’ GHSA, the patch removes longjmp() for OOM and replaces it with a delayed, graceful soft OOM triggered at the next VM safe point, plus an immediate hard OOM using _exit() if memory use passes a higher threshold. The commit number 31c0ea7d7ff comes from JFrog (that page contains exploit material; we do not link it). The two snippets above are conceptual only and do not represent PHP’s official fix.

Sources disagree on the root cause: Sansec classifies CVE-2026-109618 as an upload-progress unserializer use-after-free, and JFrog says it stores request-owned pointers in persistent variables. PHP’s own description of this CVE is about half-initialized data during OOM handling; in PHP’s wording, upload progress and stale global state belong closer to CVE-2026-109619. This page follows PHP’s description.

Impact: the maintainers’ GHSA says the confirmed impact is unauthenticated remote code execution as the web worker account. Sansec also says this flaw can leak memory on its own (Heartbleed-style); PHP has not confirmed this.

Timeline

Date (UTC)Event
2026-08-11Per Sansec’s timeline, Calif reports the first bug to PHP and starts coordinated disclosure
2026-10-12CVE ID reserved
2026-10-20PHP announces a security release for 21 October at 14:00 UTC; Aikido says this followed a leak ahead of the planned disclosure date. watchTowr repeats an unconfirmed leaked claim of October 22 at 18:00 CEST, which conflicts with PHP’s schedule
2026-10-21 07:43Sansec relays that Cloudflare saw early attacks before the patch release (CVE not specified; Cloudflare’s own source is outside what we reviewed)
2026-10-21 13:48CVE record published
2026-10-21 14:00PHP’s scheduled security release time
2026-10-21PHP security team announces on the oss-security mailing list; watchTowr says its honeypots observed exploitation

Further reading

  • Scoring differences: The page’s main severity field uses NVD’s CVSS 3.1 score of 9.8 (AV:N/AC:L/PR:N/UI:N), with “low” attack complexity. Reason: NVD is the scoring authority for CVSS 3.1, and 3.1 is the most widely used version, which makes comparison with other flaws easier. PHP’s (CNA) CVSS 4.0 score is 9.2 (AC:H/AT:P), with “high” complexity and attack requirements present; it is equally valid, so read both. SANS ISC (that page contains exploit material; we do not link it) cited 9.4, which differs from PHP’s 9.2.
  • Sources disagree on exploitation: watchTowr says its honeypots saw exploitation on October 21 (the same page still has outdated text saying no fix exists); Aikido says exploitation has been reported but doesn’t say for which CVE; before release, SecurityWeek reported that watchTowr and Huntress had seen none; CISA’s SSVC enrichment (2026-10-21 14:34 UTC) rates exploitation “none”. As of 2026-10-21 it is not in CISA KEV.
  • Public proof-of-concept: SANS ISC (that page contains exploit material; we do not link it) says proof-of-concept (PoC) exploits and technical details are public, but the early PoC it reviewed does not appear reliable. We do not link any exploit material.
  • Credits: per Sansec, both bugs were found by Ryan Austin of Calif, Wiz Research (Sagi Tzadik, Shir Tamari, Nir Ohfeld, Tomer Schwartz) and OpenAI.
  • Related flaw: CVE-2026-109619 (same release). Related weakness types include: CWE-416, CWE-824, CWE-755, CWE-1325, CWE-1419.

Verification Checked item by item against sources by AI under our review rules, all passed; not human-reviewed and not yet reproduced in our lab

AI review2026-10-21 · review rules

Verification records describe the environment and the result only, never reproduction steps or code that could attack other people’s systems. See our policy.

Sources

  1. VendorPHP security release announcement (RCE via OOM corruption, CVE-2026-109618, GHSA-w8hw-w9fx-j79w) · PHP · accessed 2026-10-21
  2. AdvisoryGitHub Security Advisory GHSA-w8hw-w9fx-j79w (php/php-src, CVE-2026-109618) · PHP (php-src maintainers) · accessed 2026-10-21
  3. Advisoryoss-security: PHP security release (CVE-2026-109618, CVE-2026-109619) · PHP security team via oss-security, 2026-10-21 · accessed 2026-10-21
  4. CVE / NVD / OSVCVE-2026-109618 record (CVE Services API) · CVE Program, 2026-10-21 · accessed 2026-10-21
  5. CVE / NVD / OSVNVD API - CVE-2026-109618 · NIST NVD · accessed 2026-10-21
  6. ResearchPHP2shell · Sansec · accessed 2026-10-21
  7. ResearchPHP2shell: critical vulnerabilities in PHP · Datadog Security Labs · accessed 2026-10-21
  8. ResearchPHP CVE-2026-109618 FAQ · watchTowr · accessed 2026-10-21
  9. NewsPHP ships emergency patches for critical PHP2shell flaws · BleepingComputer · accessed 2026-10-21
  10. NewsPHP2shell: mass exploitation looms for leaked critical PHP flaws · SecurityWeek · accessed 2026-10-21
  11. ResearchCritical vulnerabilities in PHP (PHP2shell) · Aikido · accessed 2026-10-21

Press brief

In one sentence

PHP is a server-side programming language used by a huge number of websites. On October 21, 2026, it patched two critical flaws nicknamed "PHP2shell". One of them, CVE-2026-109618, lies in out-of-memory handling: after a request is aborted, cleanup may misuse half-built data, which PHP says can allow unauthenticated remote code execution. Fixed versions are 8.2.35, 8.3.36, 8.4.27 and 8.5.12; sources disagree on whether it has been exploited in the wild.

Key facts

Severity (NVD)
CVSS 3.1 9.8 services.nvd.nist.gov
Severity (CNA: PHP)
CVSS 4.0 9.2 cveawg.mitre.org
Fixed versions
8.2.35, 8.3.36, 8.4.27, 8.5.12 seclists.org
CVE published
2026-10-21 cveawg.mitre.org
GitHub advisory ID
GHSA-w8hw-w9fx-j79w github.com

Confirmed

  • PHP confirms that out-of-memory handling can make cleanup misuse half-built data, potentially allowing unauthenticated remote code execution.
  • PHP says an attack has been demonstrated over HTTP against Apache mod_php, where it runs before application code (FrankenPHP is likely the same); FPM appears susceptible from source analysis, but it triggers while the application is running and no complete FPM exploit has been shown. php.net lists FPM, mod_php, php-cgi, FrankenPHP and LiteSpeed as at risk, with mod_php highest.
  • The maintainers' GHSA confirms the impact is unauthenticated remote code execution as the web worker account.
  • As of 2026-10-21, it is not listed in CISA's Known Exploited Vulnerabilities (KEV) catalog.

Unconfirmed / disputed

  • In-the-wild exploitation: watchTowr says its honeypots saw it on October 21 and Aikido says it has been reported, but CISA's SSVC rates exploitation as "none", and before release watchTowr and Huntress said they had seen none.
  • Whether PHP 8.1 and earlier are affected: the maintainer GHSA (< 8.2.35, no lower bound) and NVD CPE (before 8.2.35, no start version) literally include them; the same vendor's CVE record lists only 8.2.*–8.5.* and defaults to unaffected; Datadog says yes, and watchTowr notes no official confirmation.
  • The root cause: Sansec's and JFrog's descriptions differ from PHP's and are closer to the other flaw, CVE-2026-109619.
  • Sansec says this flaw can also leak memory on its own; PHP has not confirmed this.

Quotable line

This flaw isn't in anyone's website code; it's in the moment PHP runs out of memory and hurriedly cleans up after itself.

Images

Download the share image (PNG) · Attack flow diagram (downloadable)

Please credit "PlainCVE" and link to this page. Full citation format is under "How to cite" below. Found a factual error? Report it.

How to cite this page

This article is CC BY 4.0. Please keep the attribution and link when republishing.

PlainCVE Team (2026). "PHP "PHP2shell" CVE-2026-109618: out-of-memory handling corrupts request data and may let unauthenticated attackers run code remotely". PlainCVE. https://plaincve.date/en/vulns/cve-2026-109618-php-oom-memory-corruption-rce (accessed YYYY-MM-DD)
BibTeX
@misc{cve2026109618phpoommemorycorruptionrce2026,
  title  = {PHP "PHP2shell" CVE-2026-109618: out-of-memory handling corrupts request data and may let unauthenticated attackers run code remotely},
  author = {PlainCVE Team},
  year   = {2026},
  howpublished = {PlainCVE},
  url    = {https://plaincve.date/en/vulns/cve-2026-109618-php-oom-memory-corruption-rce},
  note   = {Updated 2026-10-21}
}