mcp-data-vis 服务端请求伪造 (SSRF) 漏洞总结 漏洞概述 漏洞类型:服务端请求伪造 (SSRF) CWE ID:CWE-918 受影响组件: 根本原因:代码虽然尝试通过 函数过滤本地地址(如 localhost, 127., 192.168., 16.),但验证逻辑不完整,未能全面拒绝所有私有、链路本地或敏感地址空间(如 172.16.0.0/12, 169.254.0.0/16, IPv6 回环地址等)。攻击者可利用此缺陷让服务器向任意内部或外部资源发送请求。 影响范围 受影响版本:1.0.0 及包含相同请求到 sink 流代码的版本。 安全影响: 机密性:高(如果内部 HTTP 服务、管理界面或元数据端点可达)。 完整性:中(取决于可达的内部 API 是否暴露状态更改操作)。 可用性:中(通过请求滥用或与敏感内部服务交互)。 修复方案 1. 替换主机名前缀过滤:使用规范化的 IP 解析和健壮的私有地址分类。 2. 增强验证逻辑:对 调用前的每个出站请求路径执行相同的验证。 3. 回归测试:添加覆盖 RFC1918、172.16.0.0/12、169.254.0.0/16、IPv6 回环和重定向绕过尝试的测试。 4. 发布补丁:发布包含明确修复版本的安全公告。 概念验证 (PoC) 代码 PoC 传输方式:JSON-RPC 到 MCP 服务器 代表性请求: 替代受影响工具: