Skip to main content

CMB2 EUVDEUVD-2026-91241

| CVE-2026-97336 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-10-02 Wordfence GHSA-c4g5-wq6m-xp45
7.2
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

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

  1. Access
    Identify front-end form with file_list field
  2. Delivery
    Submit crafted file_list payload
  3. Exploit
    Bypass insufficient input sanitization
  4. Execution
    Payload stored in post/user meta
  5. Persist
    Victim views injected page
  6. Impact
    Script executes in victim 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 an integrating plugin or theme has registered a CMB2 'file_list' field type on either a publicly accessible front-end form or a user meta box - CMB2 ships no such exposed field by default, so a stock installation using CMB2 only for admin meta boxes is not vulnerable. Given this, the attacker needs no authentication (PR:N) and no privileged access, but the vulnerable front-end surface must already exist. Delivery is through that form's file_list input, which lacks sufficient sanitization/output escaping. The practical limiting factors are: (1) presence of a non-default front-end file_list field, and (2) a victim subsequently viewing the injected page for the stored script to fire.

Impact

This is a high-CVSS (7.2) stored XSS whose real-world risk is substantially lower than the raw score suggests, because the critical exploitation precondition is non-default. The CVSS vector (AV:N/AC:L/PR:N/UI:N/S:C) describes an unauthenticated, network-reachable, low-complexity attack with scope change - which on its face reads as a priority. However, the description explicitly states CMB2 is a developer library that does NOT expose file_list fields by default; exploitation requires a third-party integrating plugin or theme to register a file_list field on a publicly accessible front-end form or a user meta box. This dependency conflicts with the CVSS AC:L rating - the attack is only low-complexity in environments that already satisfy an uncommon configuration, so AC:H is more defensible (see assessed vector). No EPSS score, KEV listing, or POC is provided in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation. Net assessment: a legitimately exploitable stored XSS in a widely-distributed library, but realized risk is gated by whether downstream developers expose the vulnerable field on the front end - most default WordPress installs using CMB2 for admin-only meta boxes are not exposed.

Exploit ScenarioDerived

A site runs a theme or plugin that uses CMB2 to render a file_list field on a public front-end submission form (e.g. a user profile or listing form). An unauthenticated attacker submits crafted input through that form that bypasses CMB2's insufficient sanitization and is stored, so when an administrator or visitor later views the page the injected script executes in their browser. No public proof-of-concept is identified in the provided data.

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

Stored cross-site scripting (XSS) in the CMB2 WordPress library (all versions up to and including 2.13.0) allows unauthenticated attackers to inject arbitrary web scripts via the 'file_list' field type, which execute when a user views an injected page. Exploitation requires that an integrating plugin or theme has registered a file_list field on a publicly accessible front-end form or a user meta box; CMB2 by default does not expose such fields, so a stock installation is not vulnerable. No public exploit identified at time of analysis, and the assessed CVSS vector (AC:H) reflects the non-default configuration prerequisite, making real-world risk lower than the 7.2 base score suggests.

RemediationAI

No vendor-released patched version has been independently confirmed beyond version 2.13.0; however, an upstream fix appears available as a Trac changeset (https://plugins.trac.wordpress.org/changeset?reponame=&old=3712103%40cmb2&new=3712103%40cmb2). Monitor the CMB2 plugin repository for a release after 2.13.0 and upgrade as soon as it is available. As a compensating control, if you maintain an integrating plugin or theme, ensure that 'file_list' fields are not registered on publicly accessible front-end forms or user meta boxes; removing or restricting such fields will break the intended functionality for those forms but eliminates the attack surface. Alternatively, manually sanitize and escape all file_list output using WordPress escaping functions (e.g., esc_html, esc_attr) in your integration, and consider a web application firewall (WAF) to filter XSS payloads, though WAFs may not catch all obfuscated inputs. Refer to the Wordfence advisory for updates.

Affected VersionsENISA

CMB2 0 ≤2.13.0

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 library for WordPress that provides custom meta boxes and fields. The vulnerability is a CWE-79 (improper neutralization of input during web page generation) in the 'file_list' field type, stemming from insufficient input sanitization and output escaping. Affected code includes includes/types/CMB2_Type_File_List.php, CMB2_Field.php, CMB2_Sanitize.php, and helper-functions.php as referenced in the Trac links. The CPE cpe:2.3:a:jtsternberg:cmb2:*:*:*:*:*:*:*:* indicates all versions are affected. The attack vector is network-based (AV:N), requiring no privileges (PR:N) but a high attack complexity (AC:H) because the integrating plugin or theme must have registered a file_list field on a publicly accessible front-end form or user meta box-a non-default configuration. Scope is changed (S:C) because the injected script executes in the context of the vulnerable site.

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

Unauthenticated and network-reachable (PR:N/AV:N), but AC:H because a non-default integrating plugin/theme must expose a file_list field on a front-end form; stored XSS gives S:C with C:L/I:L and no availability impact.

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: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 CMB2 plugin for WordPress is vulnerable to Stored Cross-Site Scripting via 'file_list' Field Type in all versions up to, and including, 2.13.0 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 an integrating plugin or theme registers a file_list field on a publicly accessible front-end form or a user meta box, as CMB2 is a developer library and does not expose these fields by default.

Executive ViewAI

Why It Matters

A stored cross-site scripting weakness in the widely embedded CMB2 library (all versions through 2.13.0) can allow attacker-supplied scripts to persist and run in the browsers of users viewing affected pages, but only where a theme or plugin has deliberately exposed a 'file_list' field on a public-facing form or user profile screen. Organizations running stock or default CMB2 integrations are not exposed; the risk concentrates on sites with custom-built forms or extended user profiles, where a successful attack could hijack authenticated sessions or administrator accounts. Because no vendor patch or public exploit currently exists, leadership should treat this as a targeted, configuration-dependent exposure requiring inventory and interim hardening rather than emergency remediation.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: identify and remove or restrict any 'file_list' CMB2 field registered on publicly accessible front-end forms or user meta boxes; disable or replace the integrating plugin or theme until it sanitizes and escapes field output; enforce strict input validation and output escaping (wp_kses, esc_html, esc_attr) on all CMB2-sourced data; deploy WAF or reverse-proxy rules blocking script tags and event-handler payloads in form submissions; enforce least privilege and multi-factor authentication for administrator accounts to limit session-hijack impact; and monitor site code, logs, and vendor advisories for a CMB2 release above 2.13.0.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
High
widely-used WordPress developer metabox library, bundled in many plugins/themes
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
Medium
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