Yii2-MCP-Server 命令注入漏洞总结 漏洞概述 漏洞名称:Yii2-MCP-Server 命令注入漏洞 (CVE ID Request) 漏洞类型:命令注入 (CWE-78) 严重程度:高危 (CVSS v3.1 基础评分 8.8) 漏洞描述:在 1.0.2 版本中, 和 工具存在命令注入漏洞。服务器将用户提供的参数直接拼接到 PHP CLI 命令中执行,未进行有效过滤,攻击者可注入任意操作系统命令,导致服务器被完全控制。 影响范围 受影响版本:1.0.2 受影响组件: 安全影响: 机密性:高(可读取环境变量、应用密钥、数据库凭证等)。 完整性:高(可修改文件、应用状态或执行非预期的 Yii 命令)。 可用性:高(可终止进程、删除数据或耗尽资源)。 修复方案 1. 限制访问:仅允许受信任的用户和受信任的本地 MCP 客户端访问。 2. 权限控制:在专用的低权限账户下运行 MCP 服务器。 3. 禁用危险工具:禁用 、 等命令执行导向的工具。 4. 网络隔离:避免向不受信任的用户暴露网络传输中的 MCP 服务器。 5. 代码修复建议: 不要使用未受信任的输入构建 shell 命令字符串。 使用 / 的数组参数形式(如 )代替字符串拼接。 验证 和 是否符合预期的 Yii 命令名称和选项格式。 在 MCP 模式架构中拒绝 shell 元字符和不受支持的参数。 POC 代码 (Proof of Concept) 1. 利用 工具执行 命令: 2. 利用 工具执行 命令: