Skip to main content

Kirki Page Builder CVE-2026-102173

| EUVDEUVD-2026-94167 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-10-07 Wordfence GHSA-7vc3-qmp9-p8w8
7.2
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

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

  1. Access
    Register via public registration
  2. Delivery
    Inject payload into bound registration meta field
  3. Exploit
    Value concatenated unescaped into img src attribute
  4. Execution
    Victim loads page rendering Kirki users collection
  5. Impact
    Script executes in victim browser context

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

Three concrete preconditions must all hold: (1) WordPress 'anyone can register' (public user registration) must be enabled so an unauthenticated attacker can create an account and populate user-meta; (2) a published page must carry a kirki-register element, which prints the required element nonce into public markup; and (3) a Kirki users-collection image element must be bound to one of the nine registration meta fields, which is then concatenated into an <img src="…"> attribute without escaping. Limiting factors: the bug is unreachable when registration is closed or when no page exposes the kirki-register element/bound image field, and execution only occurs when a user actually views the rendering page - so default installations without open registration are not exploitable.

Impact

Signals are consistent but moderate. The provided CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N = 7.2 High) indicates a network-reachable, low-complexity, unauthenticated stored XSS with a scope change (script executes in other users' browser context), which is the realistic ceiling for this bug class. However, real-world exploitability is gated by three non-default preconditions stated in the description: public user registration must be enabled, a page must publish a kirki-register element (which exposes the required element nonce), and an image element must be bound to one of the nine registration meta fields. These conditions meaningfully lower effective risk versus the raw 7.2. No EPSS score, no CISA KEV listing, and no public exploit code were provided in the intelligence, so this is not demonstrably under active exploitation - it reads as a credible but not yet weaponized issue. Net: a genuine stored-XSS vulnerability worth patching promptly on affected sites that allow open registration, but a lower operational priority than a default-config unauthenticated RCE. The PR:N rating reflects attacker self-registration rather than pre-existing privilege; defenders should note the vulnerability cannot be reached at all when registration is closed.

Exploit ScenarioDerived

An attacker self-registers on a WordPress site running Kirki ≤6.3.1 that has open registration and a published page containing a kirki-register element whose image element is bound to a registration meta field. During or after registration the attacker places a malicious payload into that meta value, which is concatenated unescaped into an <img src="…"> attribute; the script then fires in the browser of any visitor or administrator who views the page rendering the Kirki users collection. No public exploit code was identified in the provided data, but the attack is low-complexity once the required configuration is present.

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

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

Alert me

AnalysisAIv1 – Oct 07, 2026

Stored cross-site scripting (XSS) in the Kirki - Freeform Page Builder, Website Builder & Customizer WordPress plugin through version 6.3.1 allows unauthenticated attackers to inject arbitrary web scripts into registration metadata that executes when a user views a page rendering a Kirki users collection with an image element bound to one of nine registration meta fields. Exploitation requires that public user registration is enabled, that a published page contains a kirki-register element (which exposes the necessary nonce in public markup), and that an image element is bound to a registration meta field; default installations without open registration are not affected. A vendor patch is available in version 6.3.2, and no public exploit code has been identified at the time of analysis.

RemediationAI

Vendor-released patch: 6.3.2. Upgrade the Kirki plugin to version 6.3.2 or later, as indicated by the changeset at https://plugins.trac.wordpress.org/changeset?reponame=&new=3718900%40kirki%2Ftags%2F6.3.2&old=3697265%40kirki%2Ftags%2F6.3.1. If immediate patching is not possible, disable public user registration (WordPress Settings > General > Membership > uncheck 'Anyone can register'), which prevents attackers from populating user metadata; this may disrupt membership sites. Additionally, unpublish or restrict access to any pages containing kirki-register elements, and ensure that no image element is bound to a registration meta field. These mitigations reduce functionality but effectively block the attack vector. A web application firewall rule that blocks XSS payloads in user meta could provide supplementary protection. Always verify that user-supplied data is properly escaped on output as a defense-in-depth measure.

Affected VersionsENISA

Kirki – Freeform Page Builder, Website Builder & Customizer 0 ≤6.3.1

Affected Packages

euvd kirki_freeform_page_builder_website_builder_customizer 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 vulnerability resides in the WordPress plugin Kirki - Freeform Page Builder, Website Builder & Customizer, which allows site builders to create custom pages. The flaw is a classic stored cross-site scripting (CWE-79) caused by insufficient escaping in the ExceptionalElements::image_element() method (see includes/Frontend/Preview/ExceptionalElements.php lines 1079 and 1184). User-supplied metadata from registration fields is concatenated directly into an <img src="…"> attribute without HTML attribute encoding, allowing an attacker to break out of the attribute and inject arbitrary JavaScript. The nonce required to render the kirki-register element is printed into public markup, lowering the barrier for unauthenticated attackers. The affected component is identified by CPE cpe:2.3:a:themeum:kirki_-_freeform_page_builder,_website_builder_&_customizer:*:*:*:*:*:*:*:*, covering all versions up to and including 6.3.1.

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

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 self-registration (PR:N) injects a stored payload reachable over the network (AV:N/AC:L); XSS executing in another user's browser is a scope change (S:C) with limited C/I 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:N/VI:N/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 Kirki - Freeform Page Builder, Website Builder & Customizer plugin for WordPress is vulnerable to Stored Cross-Site Scripting via registration metadata in all versions up to, and including, 6.3.1 This is due to insufficient escaping in ExceptionalElements::image_element(), which concatenates a user-meta value straight into an <img src="…"> attribute. This makes it possible for unauthenticated attackers to inject arbitrary web scripts that execute whenever a user accesses a page rendering a Kirki users collection whose image element is bound to one of the nine registration meta fields. Requires public user registration to be enabled and a published page carrying a kirki-register element, which prints the required element nonce into the public markup.

Executive ViewAI

Why It Matters

Sites running the Kirki Freeform Page Builder WordPress plugin through version 6.3.1 are exposed to a stored cross-site scripting flaw that can be triggered by anyone able to submit a public user registration. Exposure is limited to sites that have enabled open registration and published a page containing a kirki-register element with an image element bound to one of nine registration meta fields; default installations without open registration are not affected. Because injected scripts persist in registration metadata and execute in the browsers of every visitor to the affected page, potentially including administrators, leadership should treat this as a priority remediation item.

Business Impact: High
Compensating Controls

Apply vendor patch (version 6.3.2).

Threat Intelligence Overview

EPSS Score
0.4%
Top 72% exploitable
Prevalence
Medium
popular WordPress customizer/builder plugin, but exploitable config not universal
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.4%
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
Yes
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.

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

CVE-2024-5084 CRITICAL POC
9.8 May 23

The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil

CVE-2024-44000 CRITICAL POC
9.8 Oct 20

Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote

CVE-2020-36847 CRITICAL POC
9.8 Jul 12

The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner

CVE-2025-27007 CRITICAL POC
9.8 May 01

The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut

CVE-2016-1209 CRITICAL POC
9.8 May 14

The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via

CVE-2024-4443 CRITICAL POC
9.8 May 22

The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based

CVE-2024-1698 CRITICAL POC
9.8 Feb 27

SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a

CVE-2023-6875 CRITICAL POC
9.8 Jan 11

The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i

CVE-2024-1512 CRITICAL POC
9.8 Feb 17

The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base

CVE-2024-4295 CRITICAL POC
9.8 Jun 05

The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in

CVE-2024-50498 CRITICAL POC
10.0 Oct 28

Remote code execution in the WP Query Console WordPress plugin (versions up to and including 1.0) by Ajit Bohra allows u

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