REPORT / 01
Analysis Report · Folder Analysis cache/simple-tags_3.41.0 → cache/simple-tags_3.42.0 — CVE-2025-14371
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-14371
NVD
AI-Generated Analysis
05 ·
Findings
filter · search · paginate
Showing 0 to 0 of 0 results
modules/taxopress-ai/classes/TaxoPressAiAjax.php
AI: 1 vulnerabilities
1 true positive
CVE-2025-14371
--- cache/simple-tags_3.41.0/modules/taxopress-ai/classes/TaxoPressAiAjax.php 2026-01-08 00:32:55.545935471 +0000+++ cache/simple-tags_3.42.0/modules/taxopress-ai/classes/TaxoPressAiAjax.php 2026-01-08 00:33:14.003079562 +0000@@ -776,6 +776,13 @@ $post_type_label = $post_type_details->labels->singular_name; } + if (!current_user_can('edit_post', $post_id)){ + $response['status'] = 'error'; + $response['content'] = esc_html__('You do not have permission to edit this post.', 'simple-tags'); + wp_send_json($response); + exit; + } + if (empty($added_tags) && empty($removed_tags)) { $response['status'] = 'error'; $response['content'] = sprintf(esc_html__('Click Term to select or deselect from this %1s', 'simple-tags'), esc_html($post_type_label));
AI Analysis
# Security Analysis: TaxoPressAiAjax.php
Vulnerability Existed: yes
TRUE POSITIVE
**CWE-639 - Authorization Bypass Through User-Controlled Key** - modules/taxopress-ai/classes/TaxoPressAiAjax.php - Lines 776-784
**Old Code:**
```php
$post_type_label = $post_type_details->labels->singular_name;
}
if (empty($added_tags) && empty($removed_tags)) {
```
**Fixed Code:**
```php
$post_type_label = $post_type_details->labels->singular_name;
}
if (!current_user_can('edit_post', $post_id)){
$response['status'] = 'error';
$response['content'] = esc_html__('You do not have permission to edit this post.', 'simple-tags');
wp_send_json($response);
exit;
}
if (empty($added_tags) && empty($removed_tags)) {
```
**Explanation:**
The original code was missing authorization checks before allowing users to modify tags on a post. An attacker could potentially manipulate the `$post_id` parameter in the AJAX request to add or remove tags from posts they don't have permission to edit, as there was no verification using WordPress's `current_user_can()` function.
The fix adds a proper authorization check using `current_user_can('edit_post', $post_id)` to verify the user has the `edit_post` capability for the specific post before proceeding with tag modifications. The check includes proper error response handling with sanitized output using `esc_html__()` and exits execution if authorization fails. This follows WordPress security best practices and prevents unauthorized post modification.
CVE Analysis Results:
CVE-2025-14371: Yes
View CVE Description
The Tag, Category, and Taxonomy Manager – AI Autotagger with OpenAI plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the taxopress_ai_add_post_term function in all versions up to, and including, 3.41.0. This makes it possible for authenticated attackers, with Contributor-level access and above, to add or remove taxonomy terms (tags, categories) on any post, including ones they do not own.
Showing 1 to 1 of 1 results