Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as subscriber-level user
-
ExploitSubmit malicious script via 'data' parameter to REST API
-
ExecutionPayload stored without sanitization
-
ImpactScript executes when victim views injected page
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 | Requires an authenticated account with subscriber-level privileges or higher (PR:L) on a site running Retainful ≤1.0.10; the attacker injects arbitrary web script through the 'data' parameter handled by the plugin's REST API (RestApi.php), which fails to sanitize input and escape output. The stored payload fires only when a user subsequently accesses the injected page, so impact depends on a higher-privileged victim (e.g., an administrator) viewing that content. Key limiting factors: no unauthenticated path (a valid low-privilege login is mandatory), so sites that disable open user registration substantially reduce exposure; exploitation also depends on a victim loading the affected page. |
| Impact | This is a moderate-severity 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 should be treated as a patch-soon issue rather than a drop-everything emergency. The CVSS vector confirms network attack vector, low complexity, and - critically - PR:L, meaning an attacker must hold at least a subscriber-level account; this is NOT an unauthenticated flaw. The scope-changed (S:C) rating reflects that injected script executes in the browser context of other users/admins who view the poisoned page, which is the real danger: privilege escalation via admin session theft or CSRF-style actions. No EPSS score was provided in the input, there is no CISA KEV listing, and no public exploit code was referenced - the only source is the Wordfence vulnerability advisory. Signals are internally consistent (authenticated, low-complexity, web-script injection) with no contradictions to flag, but the absence of EPSS data means widespread-exploitation probability cannot be quantified from the input. Net: a genuine but authentication-gated web vulnerability whose real-world risk is amplified on sites that allow open user registration and dampened on sites that restrict account creation. |
| Exploit ScenarioDerived | An attacker registers or obtains a subscriber-level account on a WordPress site running Retainful ≤1.0.10, then sends a crafted value in the 'data' parameter to the plugin's REST API endpoint, storing a malicious script. When an administrator or other user later views the affected page, the script executes in their browser, enabling session/cookie theft or actions performed as the victim. No public exploit code was identified at time of analysis, and exploitation requires a valid low-privilege account. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 10, 2026
Stored cross-site scripting (XSS) in the Retainful Email Marketing for WordPress and WooCommerce plugin (versions ≤1.0.10) allows authenticated attackers with subscriber-level access to inject malicious scripts via the 'data' parameter in the plugin's REST API, which execute when a victim views the affected page. This vulnerability requires a low-privilege account and user interaction, and no public exploit code or active exploitation has been identified. It is a moderate-severity (CVSS 6.4) issue that should be patched promptly.
RemediationAI
A fix is available in the plugin's trunk via changeset 3728354 (https://plugins.trac.wordpress.org/changeset/3728354/retainful/trunk/App/Controllers/RestApi.php), but a tagged release incorporating this fix has not been independently confirmed. Users should apply the latest trunk version or wait for the next official release and update to a version after 1.0.10. As a mitigating control, disable open user registration to prevent subscriber-level accounts from being created by untrusted users, which reduces the attack surface but may impact site functionality. Additionally, consider implementing a web application firewall (WAF) rule to block XSS attempts targeting the Retainful REST API endpoint, though this is not a substitute for patching. Refer to the Wordfence advisory for further details.
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 is a Stored Cross-Site Scripting (CWE-79) in the Retainful plugin's REST API endpoint, specifically in the 'data' parameter handled by App/Controllers/RestApi.php. The plugin fails to sanitize this input and escape output, allowing an authenticated attacker with subscriber-level privileges (PR:L) to store malicious JavaScript that executes in the context of other users' browsers when they access the affected page. The CPE identifies the affected product as the Retainful Email Marketing plugin for WordPress and WooCommerce. The referenced Trac links point to the vulnerable code in version 1.0.9 (lines 991, 68, 382, and 62 in various files), and a changeset (3728354) in trunk likely contains the fix. The CVSS vector CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N indicates network exploitability, low attack complexity, low privileges required, no user interaction for the attacker, but scope change and low confidentiality and integrity impact.
Know when Wordpress Plugin 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:L/PR:L/UI:N/S:C/C:L/I:L/A:N
Remotely reachable REST endpoint (AV:N/AC:L) but requires a subscriber account (PR:L); stored payload needs no attacker UI, executes in a victim's browser causing scope change (S:C) with limited C/I impact and no availability effect.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Email Marketing for WordPress and WooCommerce - Retainful plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'data' parameter in all versions up to, and including, 1.0.10 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
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
More in Wordpress Plugin
View allThe Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in
Remote code execution in the WP Query Console WordPress plugin (versions up to and including 1.0) by Ajit Bohra allows u
EUVD-2026-96280
GHSA-cxvw-p5qh-8cw3
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB