MCP Python SDK OAuth 漏洞致凭证重定向
先了解这件事
Cycode 于 2026 年 9 月 28 日公开 Yuval Elbar 的协同披露研究,指出 Anthropic 官方 MCP Python SDK 存在完整账号接管漏洞:恶意 MCP 服务器可劫持 SDK 的 OAuth 登录流程,获取受害者的 client secret、授权码和 PKCE proof key,再到真实身份提供商处换取有效访问令牌,受影响版本为 mcp 1.9.1 至 1.29.1 以及 2.0.0 至 2.1。该漏洞被定为高危(CVSS 7.5),根因是旧版回退发现路径缺少 issuer 校验:当服务器对标准授权服务器发现请求返回 HTTP 404 时,SDK 直接向该不可信服务器索取 OAuth 配置并原样接受。修复版本 1.30.0 与 2.2.0 已发布。此后 MCP Python SDK 发布 v2.3.0,以修复为主并新增三项配置选项:带无效 x-mcp-header 注解的工具现在会在注册时抛出 InvalidSignature,此前服务器会正常启动但 2026-07-28 客户端会静默丢弃该工具;空 _meta 与 params 不再随请求发送,避免部分服务器拒绝;新增 max_sse_event_size 选项(默认仍为每 SSE 事件 1 MiB)。
AI 根据报道生成 · 3 天前更新
事件进展
后续时间线
- MCP Python SDKMCP Python SDK v2.3.0 发布:修复为主,新增三项配置选项
MCP Python SDK 发布 v2.3.0,以修复为主并新增三项选项。带无效 x-mcp-header 注解的工具现在会在注册时抛出 InvalidSignature,此前服务器会正常启动但 2026-07-28 客户端会静默丢弃该工具;空 _meta 与 params 不再随请求发送,避免部分服务器拒绝。新增 max_sse_event_size 选项(默认仍为每 SSE 事件 1 MiB),MCPServer(subscriptions=False) 可停止提供 subscriptions/listen,Client.call_tool 在 HeaderMismatch(-32020)后重新列出工具并重试一次。
- CSA Labs Research精选MCP Python SDK 曝 OAuth 凭据重定向漏洞,1.30.0 与 2.2.0 修复
MCP 官方 Python SDK 存在高危 OAuth 漏洞(CVSS 7.5),恶意 MCP 服务器可把客户端的 OAuth client secret、授权码和 PKCE proof key 重定向到攻击者控制的端点,进而接管下游身份提供商会话。根因是旧版回退发现路径缺少 issuer 校验:当服务器对标准授权服务器发现请求返回 HTTP 404 时,SDK 直接向该不可信服务器索取 OAuth 配置并原样接受。
- 日期未标al-ice.ai精选Cycode 披露 Anthropic MCP Python SDK OAuth 账号接管漏洞,修复版本已发布
Cycode 于 2026 年 9 月 28 日公开 Yuval Elbar 的协同披露研究,指出 Anthropic 官方 MCP Python SDK 存在完整账号接管漏洞。恶意 MCP 服务器可劫持 SDK 的 OAuth 登录流程,获取受害者的 client secret、授权码和 PKCE proof key,再到真实身份提供商处换取有效访问令牌。受影响版本为 mcp 1.9.1 至 1.29.1 以及 2.0.0 至 2.1.1,修复版本 2.2.0 和 1.30.0 已于 9 月 7 日发布。攻击机制是服务器对发现请求返回 404 触发回退路径,此时 SDK 未取得授权服务器 URL,issuer 校验被跳过,凭证绑定和授权码受众限制也基于同一份未验证配置,因此全部失效。Cycode 用攻击、对照和逃逸三组测试验证,只有攻击配置会让真实凭证离开本机。
相关讨论
- 72 小时以前 · 不计入 72 小时的数字
- 网页The Hacker NewsOfficial MCP Python SDK Flaw Can Let Malicious Servers Steal OAuth Credentials(新标签页打开原帖)
关注度走势
每天新增来源
- 9月29日新增1个来源(1家媒体、0个账号)
- 9月30日新增1个来源(1家媒体、0个账号)
- 10月1日新增0个来源(0家媒体、0个账号)
- 10月2日新增0个来源(0家媒体、0个账号)
- 10月3日新增1个来源(1家媒体、0个账号)
- 10月4日新增0个来源(0家媒体、0个账号)
- 10月5日新增1个来源(1家媒体、0个账号)
- 10月6日新增0个来源(0家媒体、0个账号)
- 10月7日新增0个来源(0家媒体、0个账号)
- 10月8日新增0个来源(0家媒体、0个账号)
- 10月9日新增0个来源(0家媒体、0个账号)
- 10月10日新增0个来源(0家媒体、0个账号)
- 10月11日新增0个来源(0家媒体、0个账号)
- 10月12日新增0个来源(0家媒体、0个账号)