Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend crafted unauthenticated request to WordPress
-
DeliveryInfluence get_page_template() path resolution
-
ExploitInclude chosen local .php file outside theme dirs
-
ExecutionTrigger PHP execution under server/theme preconditions
-
ImpactAchieve remote code execution
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V5 - File Handling File inclusion prevention, allowlisting
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Command and Control The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation targets WordPress core's get_page_template() page-template resolution and requires the attacker to influence which .php file is included so that a readable local file outside the active theme directories is loaded. Per the description, RCE only follows 'if relevant pre-conditions for both the server and the active theme are met' - i.e., it is gated on both server configuration and the active theme's behavior, which is why CVSS assigns AC:H despite PR:N/UI:N. Limiting factors: the attacker needs a suitable readable local .php file that produces code execution when included, and the specific (unstated) server + active-theme conditions must hold; on hardened or non-matching configurations the impact may degrade to local file inclusion / information disclosure rather than full RCE. No authentication or user interaction is required (PR:N, UI:N). |
| Impact | This is a WordPress core issue (per the WordPress/wordpress-develop GHSA-7hp8-65ch-5whp advisory), affecting the get_page_template() page-template resolution path. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H, score 8.1) reflects an unauthenticated network-reachable flaw with full CIA impact - consistent with the description's claim that it can escalate from local file inclusion (CWE-98) to RCE. The critical counterweight is AC:H, which aligns with the description's explicit gating: 'If relevant pre-conditions for both the server and the active theme are met.' No EPSS score, KEV listing, POC, or SSVC decision data was supplied, so there is no public exploit identified at time of analysis and no evidence of active exploitation. The net picture is a high-severity-on-paper flaw whose real-world exploitability is materially constrained: an attacker must find a readable local .php file that is exploitable when included, and the target must run a server and active theme meeting unstated preconditions. Because WordPress is ubiquitous, even a low exploitation rate translates to a large absolute attack surface, so patching should be prioritized, but the AC:H gating argues this is more opportunistic/target-dependent than a mass-exploitation candidate. Missing signal: the exact server/theme preconditions and whether a reliable RCE gadget is publicly known - verify against the WordPress advisory before assuming trivial exploitability. |
| Exploit ScenarioDerived | An unauthenticated attacker sends a crafted request that influences page-template resolution in get_page_template(), coercing WordPress to include a chosen readable local .php file outside the active theme directories. On a server and active theme meeting the required preconditions, the included file executes attacker-influenced PHP, yielding remote code execution. No public exploit code is identified at time of analysis, and the AC:H rating indicates non-trivial preconditions must line up. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 22, 2026
Unauthenticated remote attackers can manipulate WordPress core's get_page_template() page-template resolution so that it includes a chosen, readable local .php file residing outside the active theme directories; where the required server and active-theme preconditions are both satisfied, that include escalates to remote code execution. The issue carries a CVSS 3.1 score of 8.1 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H), with the high attack complexity reflecting the need for a suitable readable PHP file and matching environment conditions rather than any authentication or user-interaction barrier. No public exploit code has been identified at time of analysis and the flaw is not listed in CISA KEV; on hardened or non-matching configurations the impact degrades to local file inclusion and information disclosure.
RemediationAI
Patch status for CVE-2026-87902 is not confirmed from the available data - no fixed version number is provided - so defensible guidance is to treat the WordPress core advisory GHSA-7hp8-65ch-5whp (https://github.com/WordPress/wordpress-develop/security/advisories/GHSA-7hp8-65ch-5whp) as the authoritative source and upgrade WordPress core to the earliest release it identifies as patched, verifying the fix against that advisory rather than any version number inferred here. Where upgrading is not immediately possible, compensating controls should target the include sink and the set of locally readable .php files: restrict which page-template values can reach get_page_template() (for example by disabling or constraining front-end page-template selection behavior via theme code or a tightly scoped WAF rule matched to template-resolution parameters), and reduce the pool of includable files by enforcing PHP open_basedir so the process cannot read .php files outside the intended theme and webroot paths - noting that open_basedir frequently breaks plugins and themes that legitimately reach outside the webroot and must be validated in staging. Additionally, disable the built-in theme and plugin file editors via DISALLOW_FILE_EDIT so that any attacker-touched PHP content cannot be introduced through the admin surface, run PHP under a least-privilege account with no read access to unrelated application or backup files, and monitor template-resolution requests and PHP include errors for anomalous paths outside wp-content/themes. Each of these mitigations is a partial reduction of exploitability rather than a substitute for the vendor fix, because the underlying issue is in core template resolution and can only be fully closed by the patched release cited in the advisory.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability sits in WordPress core's page-template resolution logic, specifically the get_page_template() function, which maps a requested page to a template file. CWE-98 (Improper Control of Filename for Include/Require Statement in PHP Program) describes the root cause class: attacker-influenced input reaches a PHP include/require sink without adequate constraint of the resulting path. Here the attacker does not need to upload anything - they only need to steer template resolution toward an already-readable local .php file that lies outside the active theme directories, causing WordPress to include it as a template. Because the sink is a PHP include, any readable PHP file on the filesystem becomes a candidate payload, so the boundary between 'information disclosure / LFI' and 'RCE' is determined purely by what locally readable PHP content exists and by server and theme preconditions - which is why the vector assigns AC:H while remaining PR:N and UI:N. The CPE string cpe:2.3:a:wordpress:wordpress:*:*:*:*:*:*:*:* confirms this is WordPress core (not a plugin or theme) and does not constrain the affected version range in the supplied data.
Know when PHP gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Unauthenticated network request (AV:N/PR:N/UI:N) but exploitation depends on specific server and active-theme preconditions (AC:H); successful inclusion yields code execution with full CIA impact.
Primary rating from Vendor (hackerone).
CVSS VectorVendor: hackerone
Lifecycle Timeline
3DescriptionCVE.org
An unauthenticated attacker can make get_page_template() page-template resolution include a chosen readable local .php file outside the active theme directories. If relevant pre-conditions for both the server and the active theme are met, this can lead to RCE.
Articles & Coverage 2
Technical POC Analysis
Advisory: GHSA-7hp8-65ch-5whp (WordPress/wordpress-develop).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Latest POC
3 public PoC links from exploitdb, nuclei
Sign in to open the public PoC links collected for this CVE.
Executive ViewAI
WordPress core is affected by a high-severity flaw (CVE-2026-87902) that lets an unauthenticated remote attacker abuse page-template resolution to load and execute an arbitrary readable PHP file, escalating to full remote code execution on sites that meet specific server and active-theme preconditions. Because WordPress typically sits on our public-facing web tier, a successful exploit could yield complete control of the hosting server, exposing customer data and enabling defacement or downstream lateral movement. Leadership should note that no vendor patch is currently available, so risk must be managed through configuration hardening and detection until a fix ships.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict PHP file access with open_basedir and a hardened PHP-FPM user/chroot; remove or relocate readable .php files outside theme directories (uploads, backups, cache, staging); disable inactive themes and file editing via DISALLOW_FILE_EDIT/DISALLOW_FILE_MODS; deploy WAF or reverse-proxy rules blocking traversal and attacker-controlled template parameters (virtual patching); enforce least-privilege filesystem permissions; and enable monitoring/alerting on unexpected include and template-resolution paths. Unauthenticated remote exploitation is possible (CVSS PR:N) but requires high attack complexity and specific server/active-theme preconditions; no public exploit identified at time of analysis. Where controls cannot be applied, consider taking the instance offline until a vendor patch is released.
Threat Model
7 threats: Elevation of Privilege, Information Disclosure, Tampering and 3 more
5-step attack chain with trust boundaries and controls
Full threat model - attack chain, trust boundaries, controls per stage and evidence - is part of the Pro and Business plans.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Local File Inclusion vulnerabilities occur when an application accepts user-controlled input to specify which file should be loaded or executed, typically through functions like PHP's `include()`, `require()`, or `fopen()`.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
EUVD-2026-84555
NVD
CVE.org
CISA KEV
EPSS
Vulnrichment
Exploit-DB
GitHub
VulDB