Fugue框架反序列化漏洞分析:通过FlaskRPCServer实现远程代码执行

本文详细分析了CVE-2025-62703漏洞,Fugue分布式计算框架在0.9.2及之前版本存在远程代码执行风险,攻击者可通过恶意pickle数据在RPC服务器上执行任意代码。漏洞位于_decode函数中直接使用cloudpickle.loads反序列化未经验证的数据。

CVE-2025-62703 - Fugue框架因通过FlaskRPCServer的Pickle反序列化存在远程代码执行漏洞

概述

CVSS评分:8.8(高危)

Fugue是一个统一分布式计算接口,允许用户在Spark、Dask和Ray上执行Python、Pandas和SQL代码,只需最少的重写。

漏洞描述

在0.9.2及之前版本中,存在通过FlaskRPCServer的pickle反序列化导致的远程代码执行漏洞。Fugue框架实现了一个用于分布式计算操作的RPC服务器系统。在RPC服务器实现的核心功能中,发现fugue/rpc/flask.py中的_decode()函数直接使用cloudpickle.loads()来反序列化数据,而没有任何清理措施。

当RPC服务器处理恶意的pickle数据时,这会创建一个远程代码执行漏洞。该漏洞存在于RPC通信机制中,客户端可以发送任意的序列化Python对象,这些对象将在服务器端进行反序列化,允许攻击者在受害者的机器上执行任意代码。

此问题已通过commit 6f25326得到修复。

漏洞信息

发布日期: 2025年11月25日 22:15
最后修改: 2025年11月25日 22:16
远程利用:
来源: security-advisories@github.com

解决方案

  • 将Fugue更新到包含pickle反序列化安全补丁的版本
  • 更新Fugue到0.9.3或更高版本
  • 审查并应用安全补丁commit 6f25326
  • 验证RPC服务器输入是否存在反序列化漏洞
  • 限制对RPC服务器端点的访问

公共PoC/漏洞利用

Github上有1个公共PoC/漏洞利用可用。

相关参考

URL资源:

CWE关联

CWE-502: 不可信数据的反序列化

CAPEC关联

CAPEC-586: 对象注入

漏洞时间线

新CVE接收: 由security-advisories@github.com于2025年11月25日接收

操作 类型 旧值 新值
添加 描述 Fugue是一个统一分布式计算接口…
添加 CVSS V3.1 AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
添加 CWE CWE-502
添加 参考 https://github.com/fugue-project/fugue/commit/6f25326779fd1f528198098d6287c5a863176fc0
添加 参考 https://github.com/fugue-project/fugue/security/advisories/GHSA-xv5p-fjw5-vrj6
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计