Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as Editor/Administrator
-
DeliveryAccess template import AJAX endpoint
-
ExploitSubmit serialized malicious payload
-
ExecutionObject deserialized and instantiated
-
PersistPOP chain in another plugin triggered
-
ImpactFile deletion, data theft, or code execution
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated session with access to the plugin's template import AJAX endpoint (includes/Ajax/TemplateExportImport.php → ExportImport/TemplateImport.php deserialization path). The input CVSS encodes PR:H (administrator-level), but the description states that by default Editor-level users are granted FULL_ACCESS via the KIRKI_USERS_DEFAULT_FULL_ACCESS configuration, so Editor privilege is sufficient unless that default is changed. The decisive limiting factor is that Kirki contains NO POP chain of its own: the vulnerability has no security impact unless a separate plugin or theme that provides a usable POP gadget chain is also installed on the target site. No user interaction is needed beyond the attacker's own authenticated request (UI:N). Effective exploitation therefore depends on (a) attacker holding at least Editor role, and (b) a POP-chain-bearing extension being present. |
| Impact | This is a conditional, privilege-gated PHP Object Injection (CWE-502) flaw whose raw CVSS 3.1 base score of 7.2 (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H) overstates immediate real-world risk. Three signals pull the practical priority down: (1) no public exploit identified at time of analysis - no POC provided and the CVE is not in CISA KEV, so there is no confirmed-actively-exploited status; (2) the Wordfence description explicitly states there is NO known POP chain in the vulnerable plugin itself, meaning the bug has NO impact in isolation and only becomes dangerous if a separate plugin or theme supplying a usable POP chain is also installed; and (3) the CVSS vector encodes PR:H (authenticated, high privilege), so an attacker must already hold an elevated WordPress role. Two signals push risk up: the description notes that by default Editor-level users receive FULL_ACCESS to the import endpoint via the KIRKI_USERS_DEFAULT_FULL_ACCESS configuration, so the real authentication bar is Editor rather than Administrator - a conflict with the PR:H assigned in the input vector, which should be flagged to defenders (per CVSS the vector says PR:H/authenticated, but the description implies PR:L/Editor is sufficient in default configuration - verify against the plugin's role mapping). Combined with S:U (no scope change) and the dependency on third-party POP chains, this reads as a high-CVSS but context-dependent issue: a meaningful hardening target on sites that grant Editor access to semi-trusted users AND run POP-chain-bearing plugins, but not a drop-everything emergency absent exploitation evidence. EPSS was not provided in the input and cannot be cited. |
| Exploit ScenarioDerived | An authenticated user with Editor-level access (granted FULL_ACCESS to the import endpoint by default) submits a crafted template-import payload to the plugin's AJAX TemplateExportImport endpoint, where untrusted input is deserialized, instantiating an attacker-controlled PHP object. If another installed plugin or theme provides a usable POP (property-oriented programming) gadget chain, the injected object triggers it during destruction/execution to delete files, read sensitive data, or run code. No public exploit code was identified at time of analysis, and the attack is inert on a site that has no POP chain available. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 17, 2026
PHP Object Injection in the Kirki WordPress plugin through 6.3.2 allows an authenticated Editor-level user to submit serialized data to the template import endpoint, but real impact is conditional on another installed plugin or theme providing a usable POP chain. Kirki itself contains no gadget chain, so the flaw alone does not enable file deletion, data theft, or code execution; the supplied 7.2 score overstates immediate risk, and no public exploit was identified at time of analysis. By default, KIRKI_USERS_DEFAULT_FULL_ACCESS lets Editors reach the endpoint despite the PR:H vector.
RemediationAI
Apply the upstream fix referenced by the Trac changeset https://plugins.trac.wordpress.org/changeset/3743904/kirki/trunk/includes/ExportImport/TemplateImport.php and update Kirki to a release that includes it; patch status is upstream fix available (changeset), with the released patched tagged version not independently confirmed in the provided data, so verify the exact fixed version in the Wordfence advisory before upgrading. If upgrade cannot be done immediately, remove FULL_ACCESS from Editor and lower roles in KIRKI_USERS_DEFAULT_FULL_ACCESS, restrict or disable the template import AJAX endpoint until only administrators can reach it, and audit installed plugins/themes for known POP gadget chains because the Kirki flaw is only impactful when such a chain exists. Disabling or removing Kirki removes the vulnerable import path but may break site-building and template import functionality; blocking the endpoint may prevent legitimate imports.
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 issue is CWE-502 deserialization of untrusted input in a WordPress plugin's template export/import feature. The vulnerable path is the AJAX handler in includes/Ajax/TemplateExportImport.php (line 35) reaching TemplateImport.php (lines 963 and 987), with related access setup in Ajax.php line 802; imported template data is passed to PHP object deserialization without sufficient restriction. Kirki has no built-in POP chain, so a successful unserialize is inert by itself and only becomes dangerous if another plugin or theme supplies a gadget chain that can pivot to file deletion, sensitive data access, or code execution. Authentication is required: the independent assessment notes AV:N/AC:H/PR:L/UI:N because Editor-level users are granted FULL_ACCESS by default via KIRKI_USERS_DEFAULT_FULL_ACCESS, while the supplied vector uses PR:H/AC:L; effective exploitation also depends on the external gadget-chain precondition.
Know when PHP 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:N/S:U/C:H/I:H/A:H
AC:H because impact requires a POP chain from another installed plugin/theme (condition outside attacker control); PR:L because Editor role has default import access; full C/I/A only when a chain is present.
Primary rating from Vendor (Wordfence).
CVSS VectorNVD
DescriptionNVD
The Kirki - Freeform Page Builder, Website Builder & Customizer plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 6.3.2 via deserialization of untrusted input . This makes it possible for authenticated attackers, with administrator-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present. By default, Editor-level users are granted FULL_ACCESS to the plugin's import endpoint via the KIRKI_USERS_DEFAULT_FULL_ACCESS configuration, meaning exploitation is possible at Editor privilege level rather than being restricted to administrators alone.
Executive ViewAI
The Kirki WordPress plugin (through version 6.3.2) contains a high-severity PHP Object Injection vulnerability that allows authenticated Editor-level users to submit serialized data, but real impact depends on another installed plugin or theme providing a usable POP chain. While no public exploit has been identified and Kirki itself lacks a gadget chain, organizations with broad Editor access and multiple third-party WordPress extensions face increased risk. Leadership should prioritize inventorying installed plugins and tightening Editor permissions until a vendor fix is released.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict access to the Kirki template import endpoint via role restrictions or WAF rules, limit Editor-level accounts, audit installed plugins/themes for known POP chains, and monitor for serialized payloads.
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
Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Related Vulnerabilities in Kirki Page Builder IDOR and PHP Object Injection Flaws
View all 2In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
EUVD-2026-103214
NVD
CVE.org
GitHub PoC
Exploit-DB