Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft inbound email with matching reply token in References header
-
DeliveryDeliver message with XSS payload in email body to CRM inbox
-
ExploitRouter accepts unvalidated token and stores email
-
ExecutionCRM agent opens email timeline page
-
ImpactScript executes in authenticated CRM user's browser
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 the ERP plugin's inbound CRM email routing / email-sync feature to be enabled and processing incoming mail. The attacker must supply an inbound email whose References header satisfies the router's regex for a reply token; because that token's hash is never cryptographically validated, any external party who received a CRM outbound email - or who can mimic the token format - passes the gate without authentication or a WordPress account. The stored payload is passive: it only fires when an authenticated CRM user (such as an agent or administrator) opens the injected email in the timeline view. Limiting factors are therefore the non-default dependence on configured inbound email processing, the need to know or imitate a valid reply-token format, and the requirement that a logged-in CRM user subsequently view the injected record. |
| Impact | The CVSS 3.1 vector (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N, base 7.2) describes a network-reachable, low-complexity, unauthenticated stored XSS with a changed scope and limited confidentiality/integrity impact - consistent with the description, which shows the inbound email router gates only on a regex match of the References header reply token whose hash is never cryptographically validated, so no WordPress account is needed. vuln.today assigns a 'this_week' priority rather than an emergency label. No CISA KEV listing is present and no EPSS score was supplied, so widespread or confirmed active exploitation cannot be asserted; the only reporting source is Wordfence plus WordPress.org source-code references. The practical risk is a genuine, actionable unauthenticated stored XSS, but it is scoped to environments that actually run the plugin's inbound/email-sync CRM feature and depends on a logged-in CRM user later viewing the injected timeline - so it is a real this-week patching priority, not a mass-exploited internet-wide emergency, and in the absence of EPSS data the exploitation likelihood is unquantified. |
| Exploit ScenarioDerived | An external party who previously received (or can replicate the format of) a CRM outbound email crafts an inbound reply whose References header carries a reply token matching the router's regex, and embeds a malicious script in the email body. Because the token's hash is never validated, the message is accepted and stored without a WordPress account; when a CRM agent or administrator later opens the email in the timeline view, the script executes in their authenticated browser session. No public exploit code was identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
Stored cross-site scripting in the WP ERP (ERP: Complete HR, Accounting & CRM Suite Built for WooCommerce) WordPress plugin affects all versions up to and including 1.17.10, where the inbound email router accepts a References header on a regex match alone without ever cryptographically validating the reply token's hash. That allows any external sender - no WordPress account required - to inject arbitrary script into the CRM timeline via an inbound email body, which then executes when an authenticated CRM agent or administrator opens the injected record. Exploitation depends on the plugin's inbound email routing and CRM email sync being enabled and processing mail, and the payload is passive; no public exploit code was identified at time of analysis and there is no CISA KEV confirmation of active exploitation.
RemediationAI
Vendor-released patch: upgrade the WP ERP plugin to 1.17.11, the version published in the referenced changeset (https://plugins.trac.wordpress.org/changeset?reponame=&new=3769825%40erp%2Ftags%2F1.17.11&old=3728022%40erp%2Ftags%2F1.17.10), which addresses the missing sanitisation/escaping in the CRM timeline email rendering and mail-sync path; review the Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/91e7dba4-e2f6-4b46-bb2b-ee8922b4f86e?source=cve for the vendor's version guidance. If upgrading cannot be done immediately, the actionable compensating control is to disable the plugin's inbound CRM email routing and email-sync processing so untrusted inbound mail is never ingested - the trade-off is loss of email-to-CRM ticket/thread creation and Gmail sync until the patch is applied - and restrict which mailboxes feed the CRM to trusted internal senders. Remediation priority is this_week based on the supplied decision label; no public exploit code was identified at time of analysis.
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 flaw is a classic CWE-79 output-neutralising failure spread across the CRM module of a WordPress plugin: the inbound email body is stored through the customer/CRM functions (modules/crm/includes/functions-customer.php) and rendered in the timeline email view template (modules/crm/views/js-templates/timeline-email.php) without adequate escaping, with GmailSync.php also participating in the mail-ingestion path. The security-relevant design weakness is in the router's authentication gate: it only performs a regex match against the References header for a reply token, and the hash behind that token is never cryptographically validated, so possession of a genuine outbound CRM email - or mere knowledge of the token format - is sufficient to pass the check. Because the injected content is stored and later rendered to a privileged CRM user, the CVSS 3.1 vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N (base 7.2) reflects network reachability, low complexity, no privileges, changed scope and limited confidentiality/integrity impact, matching the assessed vector supplied with this analysis.
Know when Erp 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
Unauthenticated inbound email reaches the router remotely (AV:N/PR:N), the unvalidated token check is trivially satisfied (AC:L), stored script runs in a separate admin browser context (S:C) with limited C/I and no availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The ERP: Complete HR, Accounting & CRM Suite Built for WooCommerce plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Inbound Email Body in all versions up to, and including, 1.17.10 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 inbound email router's only gate is a regex match on the References header for a reply token whose hash is never cryptographically validated, meaning any external party who received or can mimic a CRM outbound email can satisfy the check without a WordPress account.
Executive ViewAI
The WP ERP WordPress plugin, used for HR, accounting, and CRM, contains a high-severity stored cross-site scripting flaw (CVE-2026-96894) that allows any external email sender to inject malicious scripts into the CRM timeline, which then execute when an authenticated agent or administrator views the record. This puts sensitive customer and financial data at risk and could lead to account compromise or data theft. Leadership should prioritize remediation given the plugin's role in core business operations and the potential for reputational and regulatory impact.
No vendor-released patch identified at time of analysis. Disable inbound email routing and CRM email sync; restrict CRM access to essential personnel; deploy WAF rules to sanitize email content; monitor CRM records for injected scripts.
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.
ERP commit 44bd04 was discovered to contain a SQL injection vulnerability via the id parameter at /index.php/basedata/co
An arbitrary file upload vulnerability in ERP commit 44bd04 allows attackers to execute arbitrary code via uploading a c
jerryhanjj ERP 1.0 is vulnerable to SQL Injection in the set_password function in application/controllers/home.php. Rate
Sme.UP ERP TOKYO V6R1M220406 was discovered to contain an arbitrary file upload vulnerability. Rated high severity (CVSS
Sme.UP ERP TOKYO V6R1M220406 was discovered to contain an OS command injection vulnerability via calls made to the XMSer
A vulnerability was found in jerryhanjj ERP. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable,
ERP commit 44bd04 was discovered to contain a SQL injection vulnerability via the id parameter at /index.php/basedata/in
Sme.UP ERP TOKYO V6R1M220406 was discovered to contain an information disclosure vulnerability via the /debug endpoint.
Sme.UP TOKYO V6R1M220406 was discovered to contain an arbitrary file download vulnerabilty via the component /ResourceSe
Unrestricted file upload in the wedevs WP ERP plugin (ERP: Complete HR, Accounting & CRM Suite for WooCommerce) for Word
There is an improper Neutralization of Special Elements used in an SQL Command (SQL Injection) vulnerability in php file
VAT Pro-Rata reports in SAP ERP (SAP_APPL versions 600, 602, 603, 604, 605, 606, 616 and SAP_FIN versions 617, 618, 700,
EUVD-2026-114221
GHSA-gm9j-8479-wxh3
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB