ZeroHour

CVE-2026-84219

large

Unauthenticated Stored XSS in Kirki WordPress Plugin Before 6.3.0

CVSS 3.1
7.5 high
EPSS
<1%p12
Published
()
Modified
AI analysis

The Kirki WordPress plugin before 6.3.0 fails to consistently re-encode every spelling of the HTML entities it decodes when rendering, which allows unauthenticated users to store JavaScript in a WordPress comment (CWE-79). When anyone views a page that displays that comment, the injected script executes in the viewer's browser session, and if the theme builds its header or footer to show comments, the payload can fire on every page of the site. An attacker gains script execution in the session of any viewer, including logged-in administrators, potentially enabling administrative actions such as content or settings changes, though the high-complexity, user-interaction CVSS vector makes exploitation less reliable. All WordPress sites running a Kirki version prior to 6.3.0 that render comments are affected. There is no known public proof of concept, the plugin is not in CISA KEV, and EPSS is a low 0.2% (percentile 12), indicating no known exploitation to date.

What to do: Update Kirki to version 6.3.0 or later. Until patched, hold new comments for moderation and review recently posted comments for embedded scripts, since administrators are prime targets of the stored payload. Also check whether your theme bundles its own copy of Kirki and update the theme if it ships a fixed version.

Affected
Kirki WordPress pluginall versions before 6.3.0
Estimated exposure
large≈300,000 sites (Kirki has long been listed with roughly 300,000 active installs on WordPress.org) — Estimate based on the plugin's WordPress.org active-install count, with actual exposure likely higher because many themes bundle their own copy of Kirki, which is not counted in those figures.

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

The Kirki WordPress plugin before 6.3.0 does not hold back every spelling of the HTML entities it decodes when rendering, allowing unauthenticated users to store JavaScript in a comment which then runs in the session of anyone viewing a page that displays it, including an administrator, and on every page of the site when its header or footer is built to show comments.

Ecosystems
WordPress
Weakness
CWE-79
Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

In the news

No ingested article mentions this CVE yet.