事件经过
PraisonAI 的 UI 模块将 approval_mode 硬编码为 'auto',忽略管理员的 PRAISON_APPROVAL_MODE 环境变量配置。这意味着任何身份验证用户都可以指示 LLM 代理通过 shell=True 的 subprocess.run 执行任意 shell 命令,绕过旨在防止未授权命令执行的手动批准门控。发布于 2026-06-18,CVSS 8.8 HIGH。
影响分析
在 AI 代理部署中,批准门控是防止代理采取破坏性行为的主要安全控制。硬编码自动批准完全削弱了管理员为 shell 执行配置的人工监督——一项核心代理安全控制——允许从任何身份验证会话进行横向移动、数据外泄或完全主机遭到攻击。
攻击途径
经过身份验证的攻击者通过 UI 指示 LLM 代理运行 shell 命令。UI 模块硬编码 approval_mode=auto,覆盖管理员设置的 PRAISON_APPROVAL_MODE 环境变量,该变量本应要求手动批准。代理通过 subprocess.run(shell=True) 执行命令,且黑名单清理不足。
受影响系统
PraisonAI < 4.5.128
缓解措施
升级到 PraisonAI 4.5.128 或更高版本。建议:https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-qwgj-rrpj-75xm