Model Context Protocol (MCP) Python SDK 默认未启用 DNS 重绑定保护 · CVE-2025-66416
漏洞详情
受影响的软件包
包管理器: pip 包名称: mcp (pip)
受影响版本
小于 1.23.0 的所有版本
已修复版本
1.23.0
漏洞描述
Model Context Protocol (MCP) Python SDK 在默认情况下未为基于 HTTP 的服务器启用 DNS 重绑定保护。当使用 FastMCP 配合流式 HTTP 或 SSE 传输在本地主机(localhost)上运行一个未经身份验证的基于 HTTP 的 MCP 服务器,并且未配置 TransportSecuritySettings 时,恶意网站可能利用 DNS 重绑定攻击绕过同源策略限制,向本地 MCP 服务器发送请求。这可能导致攻击者在这些特定情况下,能够代表用户调用 MCP 服务器暴露的工具或访问资源。
请注意: 根据 MCP 安全最佳实践,不建议在本地运行未经身份验证的基于 HTTP 的 MCP 服务器。此问题不影响使用 stdio 传输的服务器。
通过 FastMCP() 创建的服务器,当 host 参数为 127.0.0.1 或 localhost 时,现已默认启用 DNS 重绑定保护。建议用户更新至 1.23.0 版本以获得此自动保护。对于直接使用 StreamableHTTPSessionManager 或 SseServerTransport 进行自定义低级别服务器配置的用户,如果在本地主机上运行未经身份验证的服务器,应明确配置 TransportSecuritySettings。
参考信息
- GHSA-9h52-p55h-vw2f
- modelcontextprotocol/python-sdk@d3a1841
- https://nvd.nist.gov/vuln/detail/CVE-2025-66416
安全评分
严重等级
高 CVSS 总体评分: 7.6 / 10
CVSS v4 基础指标
可利用性指标:
- 攻击向量 (Attack Vector): 网络
- 攻击复杂度 (Attack Complexity): 低
- 攻击前提条件 (Attack Requirements): 存在
- 所需权限 (Privileges Required): 无
- 用户交互 (User interaction): 被动
脆弱系统影响指标:
- 机密性 (Confidentiality): 高
- 完整性 (Integrity): 高
- 可用性 (Availability): 无
后续系统影响指标:
- 机密性 (Confidentiality): 无
- 完整性 (Integrity): 无
- 可用性 (Availability): 无
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
EPSS 分数
0.062% (第19百分位) 此分数估计了该漏洞在未来30天内被利用的概率。数据由 FIRST 提供。
相关弱点
弱点 CWE-350: 依赖反向DNS解析进行关键安全操作 产品对IP地址执行反向DNS解析以获取主机名并做出安全决策,但未正确确保该IP地址确实与该主机名关联。
弱点 CWE-1188: 资源的不安全默认初始化 产品使用默认值初始化或设置资源,该默认值本应由管理员更改,但默认值并不安全。
标识符
- CVE ID: CVE-2025-66416
- GHSA ID: GHSA-9h52-p55h-vw2f
源代码: modelcontextprotocol/python-sdk
此公告已被编辑。请查看历史记录。