Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRetrieve public form nonce (WPInv.formNonce)
-
ExploitSubmit payment form with XSS in mmdwqzpoxadd
-
ExecutionPayload stored in invoice record
-
ImpactScript executes in admin browser on metabox view
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 | An unauthenticated attacker reuses the publicly emitted getpaid_form_nonce (exposed to all visitors as WPInv.formNonce via wp_localize_script) to submit a payment form with a malicious 'mmdwqzpoxadd' parameter, which is stored without sufficient sanitization/output escaping on GetPaid versions up to and including 2.8.61. The key limiting factor is that the stored payload only executes when a logged-in administrator opens the specific affected invoice's Payment Form Details metabox in wp-admin, so exploitation requires that privileged victim interaction plus a vulnerable (≤2.8.61) install of the plugin being active. |
| Impact | This is a moderate, not top-tier, priority. The CVSS 3.1 base score of 7.2 is driven largely by the scope change (S:C) combined with PR:N/UI:N; the unauthenticated vector (PR:N) is credibly supported because the description states the required getpaid_form_nonce is publicly emitted to all visitors via wp_localize_script (WPInv.formNonce), removing the usual nonce barrier. However, the input CVSS vector asserts UI:N while the description explicitly states the payload only fires 'when an administrator views the affected invoice's Payment Form Details metabox' - that is administrator interaction, so UI:N understates the real trigger requirement and modestly inflates the score (verify intended UI metric with Wordfence). On the enrichment signals: no CISA KEV entry is present (no active-exploitation signal), no public exploit (POC) is referenced, and no EPSS probability is supplied - so all three exploitation-likelihood signals are either negative or absent. The SSVC-style read is low automatability and partial technical impact: exploitation depends on a privileged victim opening a specific admin screen, which makes this better suited to targeted attacks against a known WordPress admin than to opportunistic mass exploitation. Net: a legitimate stored-XSS admin-takeover vector worth patching promptly, but absent KEV/POC/EPSS it does not rise to emergency status. |
| Exploit ScenarioDerived | An unauthenticated attacker grabs the publicly exposed WPInv.formNonce and submits a crafted payment form where the 'mmdwqzpoxadd' parameter contains a malicious script, which is stored against the invoice. When a site administrator later opens that invoice's Payment Form Details metabox in wp-admin, the script executes in their authenticated session, enabling actions such as admin account or site takeover. No public exploit code was identified at time of analysis, and successful execution depends on an administrator viewing the affected invoice. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 17, 2026
Stored cross-site scripting in the GetPaid WordPress plugin through 2.8.61 allows unauthenticated attackers to submit a payment form containing a malicious 'mmdwqzpoxadd' parameter, which is stored without adequate sanitization or output escaping and later executes when an administrator opens the affected invoice's Payment Form Details metabox. Exploitation is assisted by the plugin publicly exposing the required getpaid_form_nonce to all visitors as WPInv.formNonce, so the nonce does not serve as an authentication barrier, but the stored payload still requires a privileged administrator to view the specific invoice metabox. This is a moderate, not top-tier, priority; no public exploit code or CISA KEV active-exploitation confirmation was identified at time of analysis.
RemediationAI
Apply the upstream fix represented by the WordPress plugin changeset 3750463 (https://plugins.trac.wordpress.org/changeset/3750463/invoicing/trunk/includes/admin/meta-boxes/class-mb-payment-form.php) or update GetPaid to the latest release containing that changeset; the provided data does not state an exact patched version number, so confirm the fixed release in the WordPress plugin repository before upgrading. If an immediate update is not possible, deactivate and remove the GetPaid plugin until it can be patched, or restrict access to wp-admin and the affected Payment Form Details metabox to trusted administrator accounts as a compensating control, recognizing that this does not fix the underlying stored XSS. Because getpaid_form_nonce is publicly exposed as WPInv.formNonce, do not rely on nonce secrecy; consider a WAF rule targeting suspicious 'mmdwqzpoxadd' submissions as temporary virtual patching, accepting possible false positives for legitimate payment form traffic. Follow the vendor advisory at the Wordfence URL above for confirmation of the fixed release.
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 issue is a CWE-79 stored cross-site scripting flaw in the WordPress GetPaid plugin (Payment Forms, Buy Now Buttons, and Invoicing System), affecting versions up to and including 2.8.61 as reflected by the wildcard CPE for the stiofansisland GetPaid package. The vulnerable flow involves the payment form submission/AJAX handling referenced in class-getpaid-payment-form-submission.php, class-getpaid-checkout.php, class-wpinv-ajax.php, and the admin Payment Form Details metabox in class-mb-payment-form.php. The 'mmdwqzpoxadd' parameter is insufficiently sanitized on input and insufficiently escaped on output, allowing script content to be persisted and rendered in wp-admin. The getpaid_form_nonce is emitted to all visitors via wp_localize_script as WPInv.formNonce, which undermines nonce-based protection against unauthenticated submissions. The independently assessed vector is CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N: remote, low complexity, no privileges, but requiring administrator interaction for the stored payload to execute.
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:N/UI:N/S:C/C:L/I:L/A:N
PR:N because the required nonce is public, but UI:R because the script only fires when an administrator opens the invoice metabox; S:C and C/I:L reflect script execution in the admin context.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Payment forms, Buy now buttons, and Invoicing System | GetPaid plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'mmdwqzpoxadd' parameter in all versions up to, and including, 2.8.61 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The required nonce (getpaid_form_nonce) is publicly emitted to all visitors via wp_localize_script as WPInv.formNonce, meaning no authentication or prior nonce leak is needed; the stored payload fires when an administrator views the affected invoice's Payment Form Details metabox.
Articles & Coverage 1
Executive ViewAI
The GetPaid WordPress plugin (versions through 2.8.61) carries a stored cross-site scripting weakness that lets an attacker place malicious content in a payment form, which then executes in an administrator's browser when the related invoice's Payment Form Details metabox is viewed, creating a path to admin-session compromise on affected sites. Leadership should care because this affects any WordPress property using GetPaid for payments and no vendor-released patch was identified at time of analysis, leaving exposure management and interim controls as the primary defenses.
No vendor-released patch identified at time of analysis. Interim mitigations include restricting or disabling the GetPaid Payment Form Details metabox for administrators until patched, limiting public exposure of payment forms, deploying WAF rules to block the 'mmdwqzpoxadd' parameter and similar stored-XSS payloads, enforcing MFA and least privilege on admin accounts, monitoring invoice and form submissions for suspicious content, and considering removal or disabling of the plugin on high-value sites.
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 AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint
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
EUVD-2026-103275
GHSA-xm8j-r35j-8pr2
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB