Skip to main content

CMB2 CVE-2026-116761

| EUVDEUVD-2026-111602 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-28 Wordfence GHSA-rfx8-wq2m-j436
5.4
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

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

  1. Access
    Locate public CMB2 front-end form with grouped wysiwyg
  2. Delivery
    Submit crafted script in wysiwyg group field
  3. Exploit
    Payload stored without proper sanitization
  4. Execution
    Script executes in visitor's browser
  5. Impact
    Hijack session or act as victim

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

Exploitable ONLY where a site integrator uses CMB2's documented front-end form helper to render a wysiwyg field inside a repeatable group on a publicly accessible page that accepts unauthenticated submissions. This is a non-default, developer-chosen configuration - standard admin-only metabox usage, non-group wysiwyg fields, and the wp-admin editor are not affected. Limiting factors: the specific grouped-wysiwyg-on-public-form deployment must exist, and a victim must subsequently view the injected page for the stored script to fire; sites not using the front-end form helper are not exposed.

Impact

This is a medium-severity stored XSS (CVSS 5.4, CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N) whose real-world risk is substantially lower than a network/unauthenticated vector alone would suggest. The signals are internally consistent rather than conflicting: AC:H reflects that exploitation depends on a specific condition outside the attacker's control, and the description makes that condition concrete - the flaw is 'only exploitable when a site integrator renders the plugin's documented front-end form helper with a wysiwyg field inside a repeatable group on a publicly accessible page.' PR:N is justified because such a front-end form accepts unauthenticated submissions, but the gating configuration is non-default and developer-specific, so the exposed population is a small subset of CMB2 installs. No EPSS score was provided, the CVE is not listed in CISA KEV, and no public exploit was identified; the vuln.today decision label is this_month (not act_now or emergency). Taken together these point to a genuine but non-urgent, configuration-dependent issue rather than a widespread, high-priority emergency - prioritize patching on sites known to use the front-end form helper with grouped wysiwyg fields, and verify whether that pattern is present before treating it as critical.

Exploit ScenarioDerived

A developer has published a public page that uses CMB2's documented front-end form helper containing a repeatable group with a wysiwyg field. An unauthenticated attacker submits the form with a crafted script payload in that wysiwyg field, and because the grouped wysiwyg value is not properly sanitized/escaped, the script is stored and later executes in the browser of any user who views the injected page. No public exploit code was identified at time of analysis; the AC:H vector reflects the non-default configuration prerequisite.

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 28, 2026

Stored cross-site scripting in the CMB2 WordPress plugin affects every version up to and including 2.13.4 and lets unauthenticated visitors plant arbitrary script through a wysiwyg field that sits inside a repeatable group. Exposure is narrow: the flaw only manifests when a site integrator deliberately renders CMB2's documented front-end form helper with a grouped wysiwyg field on a publicly accessible page that accepts unauthenticated submissions, and a victim must then view the injected page for the script to fire - standard admin metabox usage and non-group wysiwyg fields are unaffected. The CVSS 5.4 score (AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N) reflects that non-default integrator configuration, so real-world risk is materially lower than the network/unauthenticated vector suggests; no public exploit code or active exploitation was identified at time of analysis, and the upstream project has committed a fix.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - the correction landed in commit https://github.com/CMB2/CMB2/commit/fbeb7c4688dc5b8635a34978d837f1d458dcac44 and in the plugin repository at https://plugins.trac.wordpress.org/changeset/3767609/cmb2/trunk/includes/CMB2_Field.php, so confirm the current tagged release in the WordPress.org plugin directory rather than assuming 2.13.4 is patched, and update as soon as a release containing that changeset is available. If an update cannot be applied immediately, remove wysiwyg fields nested in repeatable groups from any public, unauthenticated front-end form built with the plugin's documented form helper - the trade-off is losing that field type on public forms, which is acceptable since the grouped-wysiwyg path is the only exposed one. Where the field must stay, gate the form behind authentication or submission moderation so untrusted visitors cannot write the stored value, understanding that this reduces the attack surface without removing the underlying escaping defect, and apply a custom sanitization_cb on the field to strip markup from the wysiwyg value at save time, accepting that legitimate rich-text content will be flattened. Review existing stored entries in affected grouped wysiwyg fields for injected scripts. Per the vendor advisory, updating is the complete fix; the source-level change resets the cached escaped value before the textarea render and escapes the group editor template slot, leaving non-group wysiwyg fields untouched.

Affected VersionsENISA

CMB2 0 ≤2.13.4

Affected Packages

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

CMB2 is a developer-facing library for building WordPress custom metaboxes and field types; the vulnerable code path is the wysiwyg field renderer and the group-template machinery that supports repeatable rows. The root cause class is CWE-79 (improper neutralization of input during web page generation), specifically a mismatch between how the saved value is escaped and where the escaping is applied. In CMB2_Type_Wysiwyg::render(), the field value is read through CMB2_Field::escaped_value() using the 'stripslashes' transform to feed wp_editor(); that accessor caches its first result in the public $field->escaped_value property regardless of which transform a later caller requests, so the parent textarea render could not apply esc_textarea(). The group editor template then placed the value in an unescaped triple-brace slot, '{{{ data.value }}}', meaning saved markup such as a literal </textarea> tag or entity-encoded text could break out of the placeholder textarea and become page markup. The upstream commit fbeb7c4688dc5b8635a34978d837f1d458dcac44 fixes this by nulling $field->escaped_value before the parent render so esc_textarea() takes effect and by switching the template slot to the escaped '{{ data.value }}' form, since cmb2-wysiwyg.js reads that value via .val() and therefore expects decoded text. The change is scoped to grouped wysiwyg content; non-group wysiwyg fields are documented as unchanged.

Know when Cmb2 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 5.4 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 5.4 MEDIUM

Unauthenticated front-end submission gives PR:N; the flaw triggers only under a specific non-default integrator configuration, so AC:H; stored XSS yields C:L/I:L with scope change to the victim's browser (S:C).

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

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

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

DescriptionCVE.org

The CMB2 plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'cmb43ex1_grp[0][txt] (wysiwyg field inside group - field id controlled by integrator config)' parameter in all versions up to, and including, 2.13.4 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 only exploitable when a site integrator renders the plugin's documented front-end form helper with a wysiwyg field inside a repeatable group on a publicly accessible page.

Threat Intelligence Overview

EPSS Score
0.2%
Top 87% exploitable
Prevalence
Medium
popular WordPress developer metabox library, moderate install base
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· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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