What the vulnerability does
01Description
The Post Duplicator plugin for WordPress is vulnerable to unauthorized arbitrary protected post meta insertion in all versions up to, and including, 3.0.8. This is due to the `duplicate_post()` function in `includes/api.php` using `$wpdb->insert()` directly to the `wp_postmeta` table instead of WordPress's standard `add_post_meta()` function, which would call `is_protected_meta()` to prevent lower-privileged users from setting protected meta keys (those starting with `_`). This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary protected post meta keys such as `_wp_page_template`, `_wp_attached_file`, and other sensitive meta keys on duplicated posts via the `customMetaData` JSON array parameter in the `/wp-json/post-duplicator/v1/duplicate-post` REST API endpoint.
Explanation of Vulnerability in Simple Terms
02Summary
Post Duplicator versions 3.0.8 and earlier lack proper authorization checks, allowing authenticated users with low privileges to modify content they should not have access to. An attacker with a basic user account can alter posts or pages without the necessary permissions. The vulnerability requires an active user session but no additional user interaction.
What an attacker can do
03Attacker Capabilities
Modify posts or pages belonging to other users or restricted content areas.
Potential impact on your site
04Site Impact
Unauthorized users can alter or corrupt published content, potentially affecting site integrity and user trust.
Conditions required to exploit
05Prerequisites
Attacker must have a low-privilege user account on the site (e.g., subscriber or contributor role).
Key dates
06Disclosure timeline
February 25, 2026
CVE published
April 8, 2026
Record updated