Skip to main content

Graphene WordPress Theme CVE-2026-17025

| EUVDEUVD-2026-96115 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-10 Wordfence GHSA-ccpv-ph2f-3cx3
6.4
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Register or use Subscriber-level account
  2. Delivery
    Inject script into 'Current location'/'Author profile image URL' field
  3. Exploit
    Payload stored unsanitized in profile
  4. Execution
    Victim loads author/profile page
  5. Persist
    Script executes in victim browser session
  6. Impact
    Session hijack or privileged action

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an authenticated account with Subscriber-level access or above (PR:L) that can edit the Graphene-specific 'Current location' and 'Author profile image URL' profile fields; the injected payload is stored and fires when any user - typically an admin or visitor - loads a page rendering that profile/author data, so no interaction from the attacker is needed at trigger time (UI:N). Key limiting factors: the site must run the Graphene theme at version 2.9.4 or earlier, and the attacker must obtain at least Subscriber privileges - a low bar on sites with open registration but a hard stop on sites that disable self-registration or restrict account creation.

Impact

This is a moderate-risk, authenticated stored XSS (CVSS 6.4, CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N) that realistically sits well below top-priority despite its network attack vector. The CVSS vector confirms low attack complexity and no user interaction to trigger the payload once stored, but PR:L means an attacker must first hold a valid account at Subscriber level or higher - a meaningful barrier on sites that do not allow open or untrusted registration. The scope change (S:C) and limited confidentiality/integrity impact (C:L/I:L) are consistent with classic WordPress stored XSS that executes in other users' browser sessions rather than compromising the server directly. There is no CISA KEV listing and no public exploit was supplied in the intelligence, so this is 'no public exploit identified at time of analysis' - do not treat it as actively exploited. No EPSS score was provided, so exploitation-probability data is MISSING and cannot be weighed here. The signals are internally consistent (network-reachable but privilege-gated, low impact), so there is no contradiction to flag; the practical priority is elevated mainly on sites that permit self-registration, where a low-privilege Subscriber can reach the vulnerable profile fields.

Exploit ScenarioDerived

On a Graphene-themed WordPress site that allows self-registration, an attacker registers a Subscriber account and injects a malicious script into the 'Current location' or 'Author profile image URL' profile fields, which are stored without sufficient sanitization or output escaping. When an administrator or other visitor views a page rendering that profile data (e.g., the author loop), the script executes in their browser, enabling session/cookie theft or admin-context actions. No public exploit code was identified in the provided intelligence.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 10, 2026

Stored cross-site scripting in the Graphene theme for WordPress through version 2.9.4 allows any authenticated user holding Subscriber-level access or above to plant persistent JavaScript in the theme's 'Current location' and 'Author profile image URL' profile fields, which then executes in the browser of every user who loads a page rendering that author data - including administrators. The flaw stems from insufficient input sanitization and output escaping (CWE-79) and was reported by Wordfence; the CVSS 3.1 score is 6.4 (AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N), reflecting that the attacker needs only a low-privilege account but the injected script can run in a scope beyond the vulnerable component. There is no KEV listing and no public exploit code identified at time of analysis, and the fixes appear in the WordPress theme Trac changesets comparing 2.9.4 against 2.9.6.

RemediationAI

The primary fix is to upgrade the Graphene theme to version 2.9.6 or later, the release in which the sanitization and escaping corrections to admin/user.php and loop-author.php were published in the WordPress theme Trac (see the changeset links above); verify the applied version in the WordPress Themes screen or via wp-cli after updating. Because the payload is stored in the database rather than only in code, patching alone does not remove already-injected scripts - after upgrading, audit and clean the user meta for 'Current location' and 'Author profile image URL' across all accounts, paying particular attention to Subscriber-role users, and consider temporarily deactivating the theme if a prompt update is not possible. As compensating controls where immediate upgrade is blocked: disable open/self-registration and restrict account provisioning so untrusted users cannot obtain the Subscriber-level access required to reach the vulnerable profile fields (trade-off: not viable for public community sites and only reduces, not eliminates, exposure from existing accounts); drop or sanitize the two affected profile fields via a small mu-plugin or by overriding the theme templates so the raw values are never rendered (trade-off: removes legitimate author-location and avatar-url functionality and must be maintained across theme updates); and front a WAF rule set that filters script-bearing payloads in profile submissions and blocks inline script output on author pages (trade-off: signature-based, bypassable, and can break legitimate markup). Note that this is an authenticated, moderate-severity issue with no KEV listing and no public exploit code identified at time of analysis, so remediation should be scheduled through normal patch cycles rather than emergency response.

Affected VersionsENISA

Graphene 0 ≤2.9.4

Affected Packages

euvd graphene no fix

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

Graphene is a third-party WordPress theme distributed through the official theme repository by vendor 'silverks'. The issue is a classic stored/persistent XSS (CWE-79) arising from user-supplied profile metadata that is saved without adequate sanitization and later emitted into HTML without output encoding. Two specific vectors are implicated by the patched source files: the 'Current location' field and the 'Author profile image URL' field. The changesets show edits to loop-author.php (the front-end author byline/loop template that renders the stored values on posts and archive pages) and admin/user.php (the admin-side profile handling where the value is accepted and stored), confirming the vulnerability spans both the write path and the render path. Because WordPress profiles are editable by any user with an account, and the theme renders author metadata across public-facing pages, a payload placed by a low-privileged Subscriber is reflected into the admin dashboard and public site for higher-privileged viewers. The CVSS scope change (S:C) reflects this cross-boundary execution: Subscriber-controlled input executes in the security context of administrative sessions. The CPE cpe:2.3:a:silverks:graphene:*:*:*:*:*:*:*:* identifies the affected product family, with the version ceiling of 2.9.4 stated in the description.

Know when Graphene 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

Vendor (Wordfence) PRIMARY 6.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 6.4 MEDIUM

Stored XSS reachable over the network with low complexity but requires a Subscriber account (PR:L); payload executes in other users' context (S:C) with limited C/I impact and no availability effect.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
Red Hat 5.4 MEDIUM

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionCVE.org

The Graphene theme for WordPress is vulnerable to Stored Cross-Site Scripting via 'Current location' and 'Author profile image URL' Profile Fields in all versions up to, and including, 2.9.4 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Low
free but niche WordPress theme, modest active-install footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy