← 返回案例分析
高危

🔗 MCP Server未授权访问

MCP Server未配置认证机制,任意Agent可调用所有Tool——攻击者通过Agent劫持链批量窃取数据

🎯 攻击场景

某企业内部部署了多个MCP Server,分别提供数据库查询、文件管理、API调用等Tool能力。这些Server在内部网络中运行,团队认为"内网就是安全的",所有MCP Server均未配置认证机制。一名已离职员工的内网账号未被及时回收,攻击者利用该账号接入内网后,通过Agent框架(如Claude Desktop)直接连接所有MCP Server,批量调用tools/list枚举工具,然后通过tools/call依次导出数据库内容、下载内部文件、调用管理API创建新账号。

🔄 攻击流程

  1. 内网接入:攻击者通过未回收的离职员工VPN账号接入企业内网
  2. MCP探测:扫描内网发现多个MCP Server端点(SSE模式,端口8080-8085)
  3. 工具枚举:发送 tools/list 请求,获取每个Server的全部可用Tool清单
  4. 数据导出:通过 db_query Tool 执行 SELECT * 导出用户表和订单表
  5. 文件下载:通过 file_read Tool 遍历读取内部Wiki和设计文档
  6. 持久化:通过 admin_api Tool 创建新的管理员账号

🔍 成功原因

  • 零认证:MCP Server完全没有Token或API Key认证,任何HTTP请求都被接受
  • 无权限分级:所有连接的Agent都能看到并调用全部Tool,没有按角色过滤
  • 缺乏审计:tools/call 调用没有任何日志记录,攻击行为无法追溯
  • 传输明文:使用HTTP而非HTTPS,通信内容可被内网嗅探

⚠️ 企业风险

数据库全量泄露 · 内部文档外泄 · 管理员权限被窃取 · 攻击行为无迹可查

🛡️ 分层防护方案

强制认证

所有MCP Server必须配置Bearer Token或mTLS双向认证,拒绝未认证连接

工具按角色过滤

tools/list 根据Agent身份返回不同的可见Tool集合,最小权限原则

全量审计日志

每次tools/call记录:Agent ID、Tool名称、参数、时间戳、结果摘要

TLS强制

内网通信同样使用HTTPS/WSS,防止内网嗅探和中间人攻击

你的MCP Server也需要安全检查?

我可以帮你评估MCP架构的安全性

了解安全评估