漏洞概述 CVE Report: Unauthenticated Remote Code Execution via Slack Message in pi-mono mom Bot --- 漏洞根因分析 1. 无应用层认证 仅验证Slack工作区成员身份,无用户授权检查。 2. 消息直接传递给LLM作为用户提示 Slack消息文本未经净化、无内容过滤、无提示注入防御,直接拼接到提示中。 3. LLM拥有无限制的Bash工具访问权限 4. 未注册 beforeToolCall 钩子 包从未注册 钩子,虽然 支持此钩子用于阻止危险工具调用,但 机器人未使用。 5. 默认沙箱为 Host(无隔离) --- 攻击场景 --- 替代攻击:文件附件提示注入 即使LLM拒绝直接"运行此命令"请求,攻击者可通过文件附件进行更隐蔽的攻击: 攻击者上传包含以下内容的文件(如 ): LLM通过 工具读取此文件并处理嵌入的注入指令。 --- POC代码 步骤1:验证无认证存在 实际输出(在 pi-mono 0.58.4 上复现): --- 步骤2:通过真实 pi-mono Agent 类进行端到端 RCE 此POC直接导入 pi-mono 的编译模块( 、 、 )并用模拟LLM提供者驱动它们,该提供者返回包含恶意载荷的工具调用。唯一不受信任的组件是LLM响应——其他所有部分都是 pi-mono 的真实代码。这证明了从 (agent.ts:782 用Slack消息调用)通过 工具执行到 的整个链条中没有任何安全检查。 --- 修复方案 页面中未提供官方修复方案,但基于根因分析,建议采取以下措施: