REPORT / 01
Analysis Report · Folder Analysis cache/wp-duplicate-page_1.8 → cache/wp-duplicate-page_1.8.1 — CVE-2025-14001
Shared security patch analysis results
02 ·
Lifecycle actions
cancel · resume · skip · regenerate
03 ·
Share this analysis
copy link · embed report
03 ·
CVE Security Analysis & Writeups
ai-generated · per cve
Comprehensive security analysis generated by AI for each confirmed CVE match. Click on a CVE to view the detailed writeup including vulnerability background, technical details, patch analysis, and PoC guide.
CVE-2025-14001
NVD
AI-Generated Analysis
05 ·
Findings
filter · search · paginate
Showing 0 to 0 of 0 results
includes/Classes/ButtonDuplicate.php
AI: 1 vulnerabilities
1 true positive
CVE-2025-14001
--- cache/wp-duplicate-page_1.8/includes/Classes/ButtonDuplicate.php 2026-01-13 11:24:39.440380071 +0000+++ cache/wp-duplicate-page_1.8.1/includes/Classes/ButtonDuplicate.php 2026-01-13 11:24:41.236490981 +0000@@ -53,6 +53,9 @@ public function duplicateBulkHandle( $redirect, $action, $postIds ) { if ( 'wp_duplicate_page_bulk_action' === $action ) {+ if ( ! Utils::isCurrentUserAllowedToCopy() ) {+ return $redirect;+ } // Get the original post $counter = 0; if ( is_array( $postIds ) ) {@@ -78,6 +81,9 @@ public function duplicateBulkHandleHPOS( $redirect, $action, $ids ) { if ( 'wp_duplicate_page_bulk_action' === $action ) {+ if ( ! Utils::isCurrentUserAllowedToCopy() ) {+ return $redirect;+ } $counter = 0; if ( is_array( $ids ) ) { foreach ( $ids as $orderId ) {
AI Analysis
```
Vulnerability Existed: yes
TRUE POSITIVE
Improper Access Control - CWE-284 - includes/Classes/ButtonDuplicate.php [56-58, 84-86]
Old Code:
public function duplicateBulkHandle( $redirect, $action, $postIds ) {
if ( 'wp_duplicate_page_bulk_action' === $action ) {
// Get the original post
$counter = 0;
if ( is_array( $postIds ) ) {
...
Fixed Code:
public function duplicateBulkHandle( $redirect, $action, $postIds ) {
if ( 'wp_duplicate_page_bulk_action' === $action ) {
if ( ! Utils::isCurrentUserAllowedToCopy() ) {
return $redirect;
}
// Get the original post
$counter = 0;
if ( is_array( $postIds ) ) {
...
Explanation:
The original code was missing authorization checks before performing bulk page duplication operations. An authenticated user could potentially duplicate pages without proper permission validation. The fix adds a capability check via `Utils::isCurrentUserAllowedToCopy()` in both bulk action handlers (`duplicateBulkHandle` and `duplicateBulkHandleHPOS`), ensuring only authorized users can execute the duplication action. This prevents privilege escalation and unauthorized content duplication.
```
CVE Analysis Results:
CVE-2025-14001: Yes
View CVE Description
The WP Duplicate Page plugin for WordPress is vulnerable to unauthorized modification of data due to missing capability checks on the 'duplicateBulkHandle' and 'duplicateBulkHandleHPOS' functions in all versions up to, and including, 1.8. This makes it possible for authenticated attackers, with Contributor-level access and above, to duplicate arbitrary posts, pages, and WooCommerce HPOS orders even when their role is explicitly excluded from the plugin's "Allowed User Roles" setting, potentially exposing sensitive information and allowing duplicate fulfillment of WooCommerce orders.
Showing 1 to 1 of 1 results