Kirki – Freeform Page Builder, Website Builder & Customizer <= 6.3.1 - Authenticated (Subscriber+) Arbitrary Shortcode Execution via 'display_name'
Strategic Overview
- Status
- Patched in 6.3.2
- Affected Plugin
- Kirki – Freeform Page Builder, Website Builder & Customizer
- Affected Version
<= 6.3.1- CVSS
- 5.4Medium
- Weakness type
- CWE-74 · Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
- CVE
CVE-2026-102291
At a glance
CVE-2026-102291 is a medium-severity Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') vulnerability in the Kirki WordPress plugin, affecting versions <= 6.3.1. It carries a CVSS score of 5.4 (reachable over the network; low attack complexity). Exploitation requires an authenticated account at Subscriber level or above. The issue is fixed in version 6.3.2; sites on affected versions should update now. Disclosed October 2026, reported by Jacek Sowiński (dzaku).
Vulnerability Overview
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.
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no interaction from a victim user.
CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
The product constructs all or part of a command, data structure, or record using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify how it is parsed or interpreted when it is sent to a downstream component.
Remediation
Update to version 6.3.2, or a newer patched version
How does WordSec protect against this?
An attacker needs Subscriber access first, so the firewall sees the attempt as traffic from a logged-in account: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: Kirki 6.3.2 closes this, and updating the plugin is the step that ends it.
- Firewall
- Alerts
External References
Related records
Other vulnerabilities in Kirki – Freeform Page Builder, Website Builder & Customizer
- 9.8CVE-2026-103065: Kirki RCE
CVE-2026-103065 - 9.8CVE-2026-16747: Kirki RCE
CVE-2026-16747 - 9.8CVE-2026-8206: Kirki 6.0.0 - 6.0.6 Privilege Escalation
CVE-2026-8206 - 8.1CVE-2026-12720: Kirki PHP Object Injection
CVE-2026-12720 - 8.1CVE-2026-57724: Kirki PHP Object Injection
CVE-2026-57724 - 7.5CVE-2026-107762: Kirki IDOR
CVE-2026-107762 - 7.5CVE-2026-12721: Kirki <= 6.0.12 SQL Injection
CVE-2026-12721 - 7.5CVE-2026-57726: Kirki SQL Injection
CVE-2026-57726
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C