配置一个 MCP 服务器就等于交出一个 shell——StdioServerParameters 从配置到任意命令执行

发布时间:2026/9/24 22:42:26
配置一个 MCP 服务器就等于交出一个 shell——StdioServerParameters 从配置到任意命令执行 TL;DR同一个根因,10 个以上 CVE,30+ 项披露:MCP 的stdio 传输要求客户端把一份"服务器配置"变成一条真实进程去执行,而大量 Agent 平台允许这份配置来自用户输入或第三方内容——于是"配置 MCP 服务器"直接等价于"在这台机器上执行任意命令"。影响面:LangFlow 上 915+ 个公网可访问实例可被未认证用户接管;Flowise 的命令白名单被npx -c一步绕过;Windsurf 的mcp.json可被 AI Agent 自己改写,一条提示注入就能在本机落地 RCE。防御不是"加过滤",而是把 MCP 服务器配置当成凭据级的管理职权,并把 stdio 换成远程 HTTP 传输。根因:一份配置,四条命令看三段代码就够。这是 MCP 的 Python SDK(modelcontextprotocol)里传参对象的用法:# 官方文档里的"正常用法"frommcpimportStdioSer