REPORT / 01

Analysis Report · Folder Analysis cache/wp-google-maps_10.0.04 → cache/wp-google-maps_10.0.05 — CVE-2026-0593

Shared security patch analysis results

mode patchdiff ai claude_cli haiku
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-2026-0593 NVD
AI-Generated Analysis
05 · Findings filter · search · paginate
Use quotes for exact: "SQL injection" · Operators: hello AND bye, admin OR root, -error, NOT warning
Showing 0 to 0 of 0 results
includes/class.admin-notices.php AI: No vulnerabilities CVE-2026-0593
--- cache/wp-google-maps_10.0.04/includes/class.admin-notices.php	2026-01-26 00:19:51.387154899 +0000+++ cache/wp-google-maps_10.0.05/includes/class.admin-notices.php	2026-01-26 00:21:56.746851489 +0000@@ -328,7 +328,9 @@ 	 * @return void
 	*/
 	public function dismissFromPostAjax(){
-		if (empty($_POST['slug']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce')) {
+		global $wpgmza;
+		
+		if (empty($_POST['slug']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce') || !$wpgmza->isUserAllowedToEdit()) {
 			wp_send_json_error(__( 'Security check failed, import will continue, however, we cannot provide you with live updates', 'wp-google-maps' ));
 		}
 
@@ -347,7 +349,9 @@ 	 * @return void
 	 */
 	public function processBackgroundAction(){
-		if (empty($_POST['relay']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce')) {
+		global $wpgmza;
+
+		if (empty($_POST['relay']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce') || !$wpgmza->isUserAllowedToEdit()) {
 			wp_send_json_error(__( 'Security check failed, import will continue, however, we cannot provide you with live updates', 'wp-google-maps' ));
 		}
 
AI Analysis
# Security Analysis Report

## Vulnerability 1

**Vulnerability Existed:** yes

**Insufficient Authorization Checks - CWE-863** - CWE-863 - includes/class.admin-notices.php [Lines 330-331]

**Old Code:**
```php
if (empty($_POST['slug']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce')) {
```

**Fixed Code:**
```php
global $wpgmza;

if (empty($_POST['slug']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce') || !$wpgmza->isUserAllowedToEdit()) {
```

**Explanation:**
The original code only verified the AJAX nonce but did not check user permissions/capabilities before allowing the `dismissFromPostAjax()` function to execute. This is a classic authorization bypass vulnerability where authenticated users with a valid nonce could perform actions intended only for administrators or users with edit capabilities. The fix adds an explicit authorization check via `$wpgmza->isUserAllowedToEdit()` to ensure the user has the necessary permissions before proceeding.

---

## Vulnerability 2

**Vulnerability Existed:** yes

**Insufficient Authorization Checks - CWE-863** - CWE-863 - includes/class.admin-notices.php [Lines 352-353]

**Old Code:**
```php
if (empty($_POST['relay']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce')) {
```

**Fixed Code:**
```php
global $wpgmza;

if (empty($_POST['relay']) || empty($_POST['wpgmza_security']) || !wp_verify_nonce($_POST['wpgmza_security'], 'wpgmza_ajaxnonce') || !$wpgmza->isUserAllowedToEdit()) {
```

**Explanation:**
Similar to Vulnerability 1, the original `processBackgroundAction()` method only performed nonce validation without checking if the user has edit permissions. This allows any authenticated user with a valid nonce to trigger background actions intended for administrators. The fix adds the same authorization check using `$wpgmza->isUserAllowedToEdit()` to enforce proper permission-based access control before executing the background action.
CVE Analysis Results:
CVE-2026-0593: Yes
View CVE Description
The WP Go Maps (formerly WP Google Maps) plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the processBackgroundAction() function in all versions up to, and including, 10.0.04. This makes it possible for authenticated attackers, with Subscriber-level access and above, to modify global map engine settings.
Showing 1 to 1 of 1 results