🔴 严重 | CVE-2026-47416 — PraisonAI Platform is the platform layer for the P...
🔴 【深度分析】严重安全漏洞:CVE-2026-47416
CVSS 评分: 严重(9.6)🔴 状态: Deferred 发布时间: 2026-07-21
🔍 技术细节速览
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-47416 |
| CVSS 评分 | 9.6 🔴 |
| 严重程度 | 严重 |
| CVSS 向量 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N |
| CWE 分类 | CWE-269,CWE-862 |
| 发布时间 | 2026-07-21 |
| 最后更新 | 2026-07-22 |
| 状态 | Deferred |
| 数据来源 | security-advisories@github.com |
CVSS 评分:9.6(严重)
CVSS 向量: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N
危害等级: 严重(Critical)
漏洞概述
CVE-2026-47416 是 PraisonAI Platform(多智能体协作系统平台层)中的一个垂直权限提升漏洞。攻击者只需拥有最低级别的成员权限,即可通过一个未正确鉴权的 API 接口,将任意用户(包括自己)的角色提升为管理员或所有者,从而完全控制工作区及其资源。该漏洞影响 PraisonAI Platform 0.1.4 之前的所有版本,已在 0.1.4 版本中修复。
受影响组件与版本
- 组件: PraisonAI Platform(多智能体团队系统的平台层)
- 受影响版本: < 0.1.4
- 修复版本: 0.1.4
漏洞原理分析
漏洞存在于 PATCH /workspaces/{workspace_id}/members/{user_id} 端点,该端点用于修改工作区成员的角色。其安全实现存在以下缺陷:
权限检查被绕过
端点使用了require_workspace_member(workspace_id)装饰器,但该装饰器默认的min_role参数为"member",且路由定义中未显式覆盖该参数。这意味着任何具有工作区成员身份的用户(即使只是普通成员)都可以访问该端点,而本应由拥有者或管理员才能执行的成员角色修改操作未进行更高等级的角色校验。无角色提升限制
端点处理函数MemberService.update_role(workspace_id, user_id, body.role)直接使用请求体中的role字段更新目标用户的角色。代码既未检查发起请求的调用者是否具有 owner 或 admin 权限,也未验证新设置的角色是否高于调用者自身的角色。更严重的是,调用者可以修改自己的角色(user_id等于调用者自身的 ID),从而实现自我提权。攻击向量分析
结合 CVSS 向量:- 攻击途径(AV:N): 攻击者可通过网络远程利用,无需物理接触。
- 攻击复杂度(AC:L): 无需绕过复杂的逻辑或使用特殊技巧,直接发送构造的 PATCH 请求即可。
- 所需权限(PR:L): 攻击者只需拥有一个有效的低权限账户(普通成员)。
- 用户交互(UI:N): 不需要受害者交互。
- 影响范围(S:C): 漏洞影响整个工作区及所有相关资源。
- 机密性和完整性影响(C:H/I:H): 提升权限后可以读取所有工作区数据并修改配置,但无法直接破坏系统可用性(A:N)。
影响评估
- 利用难度: 极低。攻击者只需要一个普通成员账户,即可通过一行 HTTP 请求完成提权。无需特殊网络条件或绕过额外认证。
- 攻击前置条件: 攻击者必须能登录到 PraisonAI Platform 并加入目标工作区(或被邀请为成员)。对于多租户场景,任何注册用户都可能成为低权限成员。
- 潜在后果:
- 攻击者可将自己提升为工作区所有者,完全控制工作区内的所有资源(包括智能体、数据、配置)。
- 攻击者可提升其他恶意账户为管理员,实现横向移动或持久化。
- 可删除或篡改工作区核心数据,导致业务中断或数据泄露。
- 现实威胁: 9.6 分的 CVSS 评分反映了该漏洞的极高危险性。由于攻击链路简单且影响范围广,建议立即采取行动。
修复建议
官方修复:
升级至 PraisonAI Platform 0.1.4 或更高版本。该版本已对 PATCH /workspaces/{workspace_id}/members/{user_id} 端点添加了正确的权限校验:仅允许工作区所有者或管理员修改成员角色,且禁止普通成员提升自身角色。
临时缓解措施(无法立即升级时):
- 限制成员邀请:暂停向不受信任的用户授予工作区成员权限,减少暴露面。
- 网络隔离:通过防火墙或 API 网关限制对
PATCH /workspaces/{workspace_id}/members/{user_id}端点的访问,仅允许管理 IP 或 VPN 内网使用。 - 审计日志监测:启用并监控所有成员角色变更日志,一旦发现异常提权立即撤销相关账户权限。
- 临时禁用端点:如果业务不需要动态修改成员角色,可考虑通过反向代理或代码热修复暂时禁用该 PATCH 路由。
参考资料
- NVD 官方页面
- CWE-269: Improper Privilege Management
- CWE-862: Missing Authorization
- GitHub Security Advisory (来源相关信息)
- 修复版本 Release Notes(待官方发布后查阅)
免责声明: 本文基于 NVD 公开数据及漏洞描述进行技术分析,部分细节(如代码实现路径)为合理推断,未经过实际复现。建议读者参考官方补丁详情及安全公告进行验证。