Skip to main content

Complianz Consent Extension EUVDEUVD-2026-100908

| CVE-2026-107631 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-10-14 Wordfence GHSA-xg3v-9795-mp3p
7.2
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

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

  1. Access
    Read leaked nonce from frontend
  2. Delivery
    Submit crafted 'uid' consent record
  3. Exploit
    Payload stored unsanitized
  4. Execution
    Admin views records page
  5. Impact
    Script executes in admin 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 that the 'Record of Consent Extension for Complianz' plugin (version 2.5 or earlier) be installed and active on the target WordPress site. The specific enabling weakness is that the enforcing nonce is emitted via wp_localize_script on wp_enqueue_scripts, making it readable by any unauthenticated frontend visitor, and the consent write path performs no capability or role check - so no authentication, special configuration, or user interaction by the attacker is needed. The stored payload executes when a victim (notably an administrator reviewing the consent records admin tab) subsequently loads the injected page, so the practical impact depends on a privileged user later viewing the tainted data. The main limiting factor is deployment: the dependency on this specific, relatively uncommon Complianz add-on narrows the real-world attack surface.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N, base 7.2 HIGH) describes a remotely reachable, low-complexity, unauthenticated stored XSS with a scope change, consistent with the description: the enforcing nonce is leaked to unauthenticated frontend visitors via wp_localize_script and no capability/role check gates the write path, so any anonymous visitor can persist a payload. This is a genuinely attacker-favorable profile for a WordPress flaw because it removes the usual authentication/nonce barrier. However, the real-world risk is tempered by three signals: no EPSS score was provided, there is no CISA KEV listing, and no public POC was supplied - so there is no public exploit identified at time of analysis and no evidence of active or widespread exploitation. Impact is also bounded (C:L/I:L/A:N) - this is script injection in a browser context, not server compromise. Net: a legitimately high-priority patch for sites running this specific extension due to the unauthenticated stored vector, but not an emergency on the level of a KEV-listed RCE; prioritize based on whether the affected extension is actually installed.

Exploit ScenarioDerived

An unauthenticated attacker reads the exposed nonce emitted to frontend visitors, then submits a crafted consent record with a malicious 'uid' value containing JavaScript. The payload is stored without sanitization and later rendered unescaped (e.g., on the admin records tab), executing in the browser of an administrator or any user who views the injected page. No public exploit code was identified at time of analysis, but the low attack complexity and lack of authentication make exploitation straightforward.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 14, 2026

Stored cross-site scripting in the 'Record of Consent Extension for Complianz' WordPress plugin (all versions up to and including 2.5) lets unauthenticated attackers persist arbitrary JavaScript into stored consent records via the 'uid' parameter, which then executes in the browser of any user - including an administrator reviewing the consent records admin tab - who later loads the tainted page. The write path is anonymously reachable because the enforcing nonce is emitted through wp_localize_script on wp_enqueue_scripts, making it readable by any frontend visitor, and no capability or role check gates the write path. It carries a CVSS 3.1 base score of 7.2 (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N); no public exploit code or confirmed active exploitation was identified at time of analysis.

RemediationAI

Upgrade the 'Record of Consent Extension for Complianz' plugin beyond version 2.5. A fix appears to be published in the plugin's 2.6 tag, as shown by the Trac changeset comparing tags/2.5 to tags/2.6 (https://plugins.trac.wordpress.org/changeset?reponame=&new=3736545%40record-of-consent-extension-for-complianz%2Ftags%2F2.6&old=3736488%40record-of-consent-extension-for-complianz%2Ftags%2F2.5); this is an upstream fix available via the plugin repository, and administrators should update through the WordPress dashboard or fetch the current release rather than relying on the 2.5 code. Where the update cannot be applied immediately, the most reliable compensating control is to deactivate the extension until patched, accepting the loss of consent-record functionality for Complianz; because the nonce is leaked to anonymous visitors, nonce-based hardening is not a viable mitigation and must not be relied upon. Additional measures include restricting or blocking unauthenticated requests to the plugin's consent write path (for example, a WAF or reverse-proxy rule rejecting anonymous POSTs to the plugin's AJAX/REST handlers), though this can break legitimate consent logging performed by anonymous site visitors; and virtual-patching any rule that filters the 'uid' parameter on input. Note that a WAF cannot sanitize records already stored, so existing consent-record entries should be reviewed and purged after patching, and the administrator records tab should be treated as previously compromised until that cleanup is completed. The Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/8f56e7de-5a85-4b99-95d3-596af7694394?source=cve should be monitored for updated fixed-version confirmation.

Affected VersionsENISA

Record of Consent Extension for Complianz 0 ≤2.5

Affected Packages

euvd record_of_consent_extension_for_complianz 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

The flaw is a classic CWE-79 stored cross-site scripting weakness in a WordPress plugin component, identified by the CPE cpe:2.3:a:davidevalerio:record_of_consent_extension_for_complianz. The 'uid' parameter accepted by the plugin's consent handling code is insufficiently sanitized on input and insufficiently escaped on output, so attacker-supplied markup is written verbatim into the plugin's consent record storage and later rendered into pages. The reference source lines show the vulnerable sinks in includes/class-rocext-consent-handler.php (lines 105 and 289), the rendering path in includes/admin-tab-records.php (line 643), and client-side handling in js/admin.js (line 701). What elevates this from a trivial stored XSS to a high-severity issue is the access-control design: the nonce intended to protect the consent write path is emitted via wp_localize_script on the wp_enqueue_scripts hook, which runs for ordinary frontend page loads, so the nonce is exposed to any anonymous visitor and provides no meaningful protection. Combined with the absence of any capability or role check (capability checks that a normal REST/AJAX handler would use), the write endpoint is effectively public. The CVSS scope change (S:C) reflects that the injected script executes in the administrative context of the WordPress dashboard, where it can reach interfaces and data beyond the original vulnerable component.

Know when Record Of Consent Extension For Complianz 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 7.2 HIGH
AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 7.2 HIGH

Unauthenticated remote write via leaked nonce and no capability check justifies AV:N/AC:L/PR:N/UI:N; stored XSS crossing into another security context is S:C with C:L/I:L and no availability impact.

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

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

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

DescriptionCVE.org

The Record of Consent Extension for Complianz plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'uid' parameter in all versions up to, and including, 2.5 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. This is possible because the enforcing nonce is emitted via wp_localize_script on wp_enqueue_scripts and is therefore readable by any unauthenticated frontend visitor, and no capability or role check gates the write path.

Executive ViewAI

Why It Matters

Organizations running the Complianz consent-record extension for WordPress (versions up to 2.5) face a high-severity web application risk because an unauthenticated actor can alter stored consent data in a way that executes code in the browsers of staff who review it. This could undermine administrator sessions, enable unauthorized actions, and damage customer trust in privacy-consent workflows. With no vendor-released patch identified at time of analysis and no public exploit identified at time of analysis, leadership should prioritize inventory, virtual patching, and monitoring.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: deactivate or remove the 'Record of Consent Extension for Complianz' plugin where feasible; if it must remain, block unauthenticated writes to the consent-record 'uid' parameter using WAF/virtual patching, restrict the consent-records admin tab, enforce CSP, sanitize/validate consent data at output, and monitor logs for injected JavaScript or unexpected consent-record changes.

Threat Intelligence Overview

EPSS Score
0.3%
Top 77% exploitable
Prevalence
Low
niche consent add-on extending the Complianz WordPress plugin
Data Quality
4 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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
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.

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