MCP协议的漏洞扫描器MCP-Scan,半开源
MCP协议的漏洞扫描器MCP-Scan,半开源
原创 孙志敏 AI与安全 2025-04-20 03:57
前边我们介绍了MCP的工具投毒攻击(TPA),恶意MCP服务器可以对客户端发动攻击,那么,针对MCP服务器的扫描就显得非常必要。
还是Invariant LAB,在发现了TPA后,推出了MCP服务的扫描器,MCP-Scan,并部分开源。简单介绍一下。
MCP-Scan能扫什么
MCP-Scan 主动扫描已安装的 MCP 服务器及其工具描述,包括:
Claude desktop,cursor,vscode等的配置文件(也可以指定)
能够识别:
工具中毒攻击(TPA): MCP 工具描述中嵌入隐藏的恶意指令。
MCP Rug Pulls:在获得用户初步批准后,未经授权更改 MCP 工具描述。
跨域升级:通过恶意描述危害可信工具的暗影攻击。
提示注入攻击:工具描述中包含可由代理执行的恶意指令。
如何使用
扫描器的使用非常简单,直接
uvx mcp-scan@latest
或者从源码启动
uv run pip install -e .
uv run -m src.mcp_scan.cli
扫描结果例子如下
对配置文件中的每个server里的所有工具做验证。
扫描原理是值得关注的地方,但有点可惜,这块没有开源,实际扫描是把文件上传到https://mcp.invariantlabs.ai/进行扫描的。
工具名称和描述会与 invariantlabs.ai 共享。
好吧,虽然开源不彻底,但至少有个东西可以用了。
小结
之前我们已经分析过,MCP最初设计是考虑的本地应用,安全设计很少,但现在被做成了远程的服务,安全风险就不得不考虑。
MCP的相关漏洞已经被验证,说明风险真实存在,这就需要有消减手段。扫描是第一步,也是非常有效的一步。相信会有更多的扫描器及其它防护手段出来,我们将持续跟踪。
END
推荐阅读