导语:随着人工智能应用越来越广泛地使用模型上下文协议(Model Context Protocol,简称MCP)服务器,AI智能体得以处理文件、执行命令、获取敏感信息——但这些能力背后隐藏着巨大的安全风险。传统安全扫描工具并不针对这一协议进行检测,而MCP服务器通常拥有最高系统权限,一旦被攻破,攻击者可以沿着这条链路波及整个基础设施。
什么是Mcpwn

Mcpwn是一款专门用于检测模型上下文协议服务器漏洞的安全扫描工具。与传统安全工具主要关注系统崩溃和内存问题不同,Mcpwn通过分析服务器的响应行为来识别攻击痕迹。它能够发现多种安全问题,包括:
- 远程代码执行(RCE):通过命令注入实现,攻击者可远程执行任意系统命令
- 路径遍历(Path Traversal):文件处理中的目录遍历漏洞,可访问超出授权范围的系统文件
- 提示注入(Prompt Injection):针对AI交互层面的注入攻击
安装Mcpwn
首先,从GitHub克隆Mcpwn仓库:
kali> git clone https://github.com/Teycir/Mcpwn.git

安装完成后,运行帮助命令验证一切正常,并查看所有可用选项:
kali> ./mcpwn.py --help

理解Mcpwn的检测能力
在开始扫描真实的MCP服务器之前,先了解一下Mcpwn在检测什么以及如何发现漏洞。
Mcpwn通过寻找真实的攻击迹象来检测漏洞,而不是依赖程序崩溃或报错信息。具体检测机制如下:
远程代码执行检测:发送id或whoami等载荷,然后检查响应中是否包含uid=1000或root:x:0:0等特征字符串,确认命令是否被执行。
路径遍历检测:尝试使用../../../etc/passwd等路径遍历序列访问目标目录之外的文件。成功访问需要至少两个特定标记来确认,以减少误报。
运行第一次安全扫描
现在对真实的MCP服务器运行第一次扫描。本教程使用NPM仓库中的多个公共MCP服务器作为目标。
基本命令格式如下:
kali> ./mcpwn.py npx -y <目标>

扫描结果输出了”能力验证绕过”和”能力拒绝服务”两类问题。但有时候我们不需要完整的审计报告,这时可以使用--quick快速模式。
快速模式对扫描过程做了两处重要调整:首先,将每个请求的超时时间从默认的10秒缩短到5秒;其次,也是更关键的——快速模式一旦发现第一个工具注入漏洞就立即停止。由于工具注入导致远程代码执行通常是最高危的漏洞类型,发现一个往往就足以说明该服务器需要立即处理。
kali> ./mcpwn.py --quick npx -y <目标>
如果想进一步加快扫描速度,可以使用--rce-only参数,只关注远程代码执行漏洞:
kali> ./mcpwn.py --quick --rce-only npx -y <目标>
本例中没有发现RCE漏洞。接下来,切换到自己开发的MCP服务器进行测试:
Python服务器:
kali> ./mcpwn.py --quick python3 <目标>
Node.js服务器:
kali> python3 mcpwn.py node <目标>
总结
本文介绍了如何安装Mcpwn以及如何有效地使用它进行MCP服务器安全测试。随着AI智能体越来越强大、MCP服务器数量不断增长,攻击面也在急剧扩大。将安全测试纳入MCP开发工作流程的标准环节,是保持对潜在威胁领先的关键一步。
来源:Hackers Arise,原文链接:https://hackers-arise.com/artificial-intelligence-in-cybersecurity-part-9-how-to-test-mcp-servers-for-security-vulnerabilities/
版权声明:本文由华盟网原创发布,保留所有权利。配图来源已注明。














暂无评论内容