Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain or compromise WordPress Editor account
-
DeliveryCraft ZIP archive containing PHP webshell
-
ExploitUpload archive via Kirki customizer interface
-
InstallPlugin extracts archive without file-type validation
-
C2Webshell persists in web-accessible directory
-
ExecuteSend HTTP request to webshell path
-
ImpactExecute arbitrary commands on server
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 | Exploitation requires a valid WordPress user account with at minimum the Editor role - anonymous or Subscriber/Contributor-level accounts cannot trigger the vulnerability. The Kirki plugin must be installed and active on the target WordPress installation. The archive upload functionality within the Kirki customizer must be reachable by the Editor user. RCE specifically requires that the server permit PHP execution within the directory where Kirki extracts uploaded archives (a non-default but common misconfiguration); Stored XSS is achievable on all affected configurations regardless of server hardening. Exploitation is not automatable without first obtaining Editor credentials. Factors limiting exploitation: high-privilege requirement (Editor role), no unauthenticated attack path, and RCE conditional on server-side PHP execution policy in upload directories. |
| Impact | The CVSS 6.8 score with vector AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:H correctly reflects the high-privilege prerequisite (Editor role) and user-interaction requirement for the Stored XSS path, which collectively suppress the score from what the C:H/I:H/A:H impact metrics would otherwise imply. SSVC rates Exploitation as 'none' and Automatable as 'no,' consistent with the authenticated prerequisite - mass automated exploitation is not feasible without first obtaining or creating Editor accounts. However, SSVC rates Technical Impact as 'total,' aligning with the RCE potential. The most significant risk amplifier is the publicly available proof-of-concept from WPScan: organizations running Kirki where Editor accounts are shared, delegated to contractors, or otherwise outside tight administrative control face meaningful exposure. WordPress multisite environments or agencies granting Editor access to clients represent elevated attack surfaces. The absence of a CISA KEV listing and the 'automatable: no' SSVC rating suggest this is not currently being mass-exploited, but the POC lowers the skill bar for targeted abuse. Immediate patching is warranted; deferral is defensible only in environments with strict Editor-role governance and monitored upload directories. |
| Exploit ScenarioDerived | An attacker with a compromised or legitimately held WordPress Editor account crafts a ZIP archive containing a PHP webshell with a benign-looking filename. The archive is uploaded through the Kirki plugin's customizer interface; the plugin extracts the contents without validating file extensions or removing the PHP file, leaving the webshell in a web-accessible upload subdirectory. The attacker then sends an HTTP GET request directly to the extracted file path to execute arbitrary commands on the server. A publicly available POC from WPScan demonstrates this technique. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 20, 2026
Arbitrary file upload via malformed archive in the Kirki WordPress customizer plugin (all versions before 6.2.3) allows users holding the Editor role to place executable and web-accessible files on the server, enabling Stored XSS against any visitor and Remote Code Execution on permissive server configurations. A publicly available proof-of-concept exists per WPScan, elevating practical risk beyond the CVSS 6.8 score. No confirmed active exploitation appears in CISA KEV at time of analysis, though SSVC rates technical impact as total.
RemediationAI
Update the Kirki WordPress plugin to version 6.2.3 or later, which resolves this vulnerability per the WPScan advisory (https://wpscan.com/vulnerability/ba981818-f4a0-444a-bf6a-e4caacc9d1aa/). If immediate patching is not possible, revoke the Editor role from any untrusted, contractor, or non-essential accounts as a compensating control - this eliminates the attack surface since exploitation requires Editor-level authentication; trade-off is reduced editorial delegation capability. Additionally, audit the Kirki plugin's upload and extraction directories for unexpected PHP files or scripts that may have been placed prior to patching, and remove them. Web Application Firewall rules that block multipart archive uploads to the Kirki plugin endpoint can reduce exposure, but may break legitimate customizer functionality. Configuring PHP execution restrictions (e.g., via .htaccess or server-level rules) on WordPress upload directories would prevent the RCE path even if files are uploaded, without eliminating Stored XSS risk.
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
Kirki is a WordPress customizer framework plugin that extends the WordPress Theme Customization API, widely used by theme developers to build options panels. The vulnerability exists in the plugin's archive upload functionality: when an Editor-level user uploads a ZIP archive, the plugin fails to validate the file types contained within it (violating safe extraction practices) and does not reliably remove all extracted files post-processing, leaving arbitrary content in web-accessible directories. The root cause maps to CWE-79 (Improper Neutralization of Input During Web Page Generation) in the XSS dimension, but the underlying failure is broader - inadequate post-extraction cleanup and absent file-type allowlisting. The CPE identifier is cpe:2.3:a:unknown:kirki:*:*:*:*:*:*:*:* covering all versions from 0 up to but not including 6.2.3. RCE is conditional on server configurations that permit PHP execution within upload directories.
Know when Kirki 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:H/UI:R/S:U/C:H/I:H/A:H
Editor role (PR:H) and victim page-view for XSS (UI:R) are required; RCE achieves full C/I/A impact on the vulnerable system with no scope change.
Primary rating from Vendor (WPScan).
CVSS VectorVendor: WPScan
Lifecycle Timeline
4DescriptionCVE.org
The Kirki WordPress plugin before 6.2.3 does not properly validate the files contained in archives uploaded by users with the Editor role, and does not remove all unwanted files after extracting them, allowing such users to upload arbitrary files to a web accessible directory, leading to Stored XSS as well as RCE on some server configurations.
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Server-Side Request Forgery in the Kirki WordPress plugin before 6.0.12 allows unauthenticated attackers to coerce the s
SQL injection in the Kirki WordPress plugin before version 6.0.13 enables unauthenticated remote attackers to read arbit
PHP Object Injection in the Kirki WordPress plugin before 6.0.13 enables a two-stage attack where unauthenticated users
Stored cross-site scripting in the Kirki WordPress plugin before 6.3.0 allows unauthenticated remote attackers to persis
Stored cross-site scripting in the Kirki WordPress plugin affects versions 6.0.0 through 6.3.0, which allow SVG files to
SQL injection in the Kirki WordPress plugin (versions 6.0.0 through <6.3.0) enables authenticated users with editor-leve
Unauthenticated shortcode injection in Kirki WordPress plugin (all versions before 6.2.1) allows any remote attacker to
Object injection in the Themeum Kirki WordPress customizer framework (all versions through 6.0.12) allows attackers to a
Kirki WordPress Customizer Framework plugin before 6.0.14 exposes registered user email addresses, comment author emails
Unauthenticated content disclosure in the Kirki WordPress plugin before 6.3.0 allows any remote attacker to retrieve the
Unauthenticated comment manipulation in the Kirki WordPress plugin (versions before 6.0.12) allows remote attackers to o
Blind SQL injection in the Themeum Kirki WordPress customizer framework (all versions up to and including 6.0.12) lets r
EUVD-2026-63206
GHSA-7grj-4mf9-j4px
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB