Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRegister or log in as Subscriber
-
DeliverySet display_name to malicious shortcode via profile form
-
ExploitVisitor loads member-directory page bound to display_name
-
ExecutionKirki runs do_shortcode() on unfiltered markup
-
ImpactArbitrary shortcode executes in every visitor's request
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Input neutralization, injection prevention
|
| Exploitation Conditions | Exploitation requires (1) an authenticated account with Subscriber-level access or above - satisfied trivially on any site allowing open registration; and (2) a published page containing a Kirki element whose dynamic content is explicitly bound to the |
| Impact | This is a moderate-severity, authentication-gated injection flaw (CWE-74) rather than a top-priority emergency. The provided CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N = 5.4) indicates network-reachable exploitation requiring only low privileges and no user interaction, which is consistent with the description: any Subscriber-level account can set its own |
| Exploit ScenarioDerived | An attacker registers or uses an existing Subscriber account on a WordPress site that runs Kirki and has a published member-directory page binding dynamic content to |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 10, 2026
Arbitrary shortcode execution in the Kirki - Freeform Page Builder, Website Builder & Customizer plugin for WordPress (all versions up to and including 6.3.1) lets any authenticated user with Subscriber-level access or above inject shortcodes by writing them into their own display_name profile field, which the plugin splices unfiltered into composed page markup and then passes through do_shortcode(). The flaw is exploitable as a remote, network-reachable issue requiring only a low-privileged account (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N, 5.4), rated moderate by the independent assessment; the key precondition is that a published page must exist containing a Kirki element whose dynamic content is explicitly bound to the display_name user field - typically a team or member-directory / users-collection page - and on sites without such a page the vulnerable code path is never reached. Where that binding does exist, the injected shortcode executes in the request of every visitor, including unauthenticated ones, so per-victim interaction is not required; no public exploit code or confirmed active exploitation was identified at time of analysis.
RemediationAI
Vendor-released patch: upgrade the Kirki - Freeform Page Builder, Website Builder & Customizer plugin to version 6.3.2, as indicated by the repository changeset that supersedes tag 6.3.1 with tag 6.3.2 (https://plugins.trac.wordpress.org/changeset?reponame=&new=3718900%40kirki%2Ftags%2F6.3.2&old=3697265%40kirki%2Ftags%2F6.3.1); verify the installed version in the WordPress admin plugins screen after updating, and consult the Wordfence advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/bed93040-a843-417e-89b4-5ab3cba788aa?source=cve) for confirmation. If updating immediately is not possible, the most effective compensating control is to remove the exposure condition rather than the plugin: identify and unpublish or edit any published page containing a Kirki element whose dynamic content is bound to the display_name user field (typically team/member-directory or users-collection pages), which eliminates the vulnerable do_shortcode() path - the trade-off is loss of that dynamic front-end feature until the patch is applied. Secondarily, restrict account creation and audit existing Subscriber-level accounts, since exploitation requires an authenticated low-privilege user; disabling open registration or requiring administrator approval reduces the attack surface but does not prevent abuse by legitimate low-privilege users and will impede normal site onboarding. Reviewing WordPress user profiles for suspicious shortcode syntax in display_name can help detect attempted exploitation, and because the injected shortcode is rendered for all visitors on an affected page, purging page caches after remediation is advisable to clear any previously rendered malicious output.
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 root cause is a CWE-74 injection class flaw in how the Kirki plugin assembles front-end markup. According to the referenced 6.3.1 source, TheFrontend::replace_content() (includes/Frontend/TheFrontend.php#L144) builds page output by substituting dynamic WordPress user data - here the display_name field - directly into the composed markup, and the resulting string is then run through WordPress's do_shortcode() engine. Supporting vulnerable logic appears in includes/Frontend/Preview/Utils.php at lines 308, 334 and 408 and in includes/HelperFunctions.php#L1117, with the shortcode registration path in includes/Manager/PluginShortcode.php#L40. Because display_name is a core WordPress profile field that any authenticated user can freely edit on their own account, an attacker with Subscriber-level privileges can place an arbitrary shortcode string into it; when a Kirki element is bound to that user field, the plugin treats the attacker's shortcode as trusted markup and executes it, and because the injection is stored in the page's rendered output the shortcode fires for every subsequent visitor. The affected component per CPE is the Themeum-distributed kirki plugin (cpe:2.3:a:themeum:kirki_-_freeform_page_builder,_website_builder_&_customizer:*:*:*:*:*:*:*:*), i.e. the WordPress plugin named 'Kirki - Freeform Page Builder, Website Builder & Customizer'. The Wordfence-tagged 'RCE' label reflects the shortcode-execution surface, but the assessed impact (limited confidentiality and integrity, no availability impact) is consistent with arbitrary shortcode execution rather than direct host-level code execution.
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
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
Network-reachable with only a self-service Subscriber account so PR:L, no interaction needed; impact limited to whatever registered shortcodes allow, giving C:L/I:L/A:N.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Kirki - Freeform Page Builder, Website Builder & Customizer plugin for WordPress is vulnerable to arbitrary shortcode execution in all versions up to, and including, 6.3.1 This is due to the plugin substituting a user's display_name into the composed page markup unfiltered and then running the whole result through do_shortcode() in TheFrontend::replace_content(). Because display_name is writable by any user on their own account through the core profile form, this makes it possible for authenticated attackers with Subscriber-level access and above to execute arbitrary shortcodes. Where the page is a users collection - an ordinary team or member-directory page - the shortcode runs in the request of every visitor, including unauthenticated ones. Requires a published page with a Kirki element whose dynamic content is bound to the display_name user field.
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
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
More in Wordpress Plugin
View allThe Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in
Remote code execution in the WP Query Console WordPress plugin (versions up to and including 1.0) by Ajit Bohra allows u
EUVD-2026-96287
GHSA-v9xh-p885-r83g
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB