# Kirki <= 6.4.0 - Authenticated (Subscriber+) Arbitrary Shortcode Execution via User Profile Fields in Dynamic SEO Values

- **ID:** WPSEC-2026-1934
- **Plugin:** Kirki – Freeform Page Builder, Website Builder & Customizer (`kirki`), https://wordpress.org/plugins/kirki/
- **Affected versions:** all versions before 6.4.1
- **Fixed in:** 6.4.1 (Update to 6.4.1 or later.)
- **Severity:** Medium 4.2 (CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N)
- **Weakness:** CWE-94
- **Usage among sites WPSec scans:** plugin Low, affected versions Low (as of 2026-10-29)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/kirki
- **Fix released:** 2026-10-28
- **Published:** 2026-10-29
- **URL:** https://wpsec.com/vuln/WPSEC-2026-1934/

## Description

The Kirki plugin for WordPress is vulnerable to arbitrary shortcode execution via dynamic SEO values in all versions up to, and including, 6.4.0, due to user-editable values such as display names, user profile fields, term names and CMS fields being concatenated into the SEO title and description string that is passed to do_shortcode() without stripping shortcode brackets. This makes it possible for authenticated attackers with subscriber-level access and above to execute arbitrary shortcodes by placing them in their profile fields, when a page's SEO settings use those dynamic user values, for example on an author archive or user template.

## References

- https://wpsec.com/vuln/WPSEC-2026-1934/
- https://plugins.svn.wordpress.org/kirki/tags/6.4.1/
- https://wordpress.org/plugins/kirki/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-1934/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
