Anthropic官方Git MCP服务器曝三重漏洞:提示注入即可实现文件读写与远程代码执行

Anthropic维护的Model Context Protocol (MCP) 官方Git服务器 mcp-server-git 被发现存在三个安全漏洞。攻击者可通过提示注入(Prompt Injection) 在特定条件下读取或删除任意文件,甚至实现远程代码执行(RCE)。

Cyata研究员 Yarden Porat 在报告中指出:"这些漏洞可被提示注入利用。攻击者只需影响AI助手读取的内容(如恶意README文件、被篡改的问题描述或被入侵的网页),无需直接访问受害者系统,即可武器化这些漏洞"

(上图:Model Context Protocol (MCP) 架构示意图,展示AI模型如何通过MCP客户端与MCP服务器交互,调用外部工具如Git仓库。)

mcp-server-git 是一个Python软件包兼MCP服务器,提供一组内置工具,允许大型语言模型(LLM)以编程方式读取、搜索和操作Git仓库。该工具被广泛视为参考实现,常被开发者复用。

三个具体漏洞详情

这些漏洞已在2025年6月负责任披露后,通过以下版本修复:

  • CVE-2025-68143 (CVSS 8.8 [v3] / 6.5 [v4]) git_init 工具在创建仓库时未验证文件系统路径,导致路径遍历漏洞。攻击者可将任意目录转为Git仓库。(2025.9.25版本修复)
  • CVE-2025-68144 (CVSS 8.1 [v3] / 6.4 [v4]) git_diffgit_checkout 函数将用户控制的参数直接传递给Git CLI命令,导致参数注入漏洞。攻击者可通过未净化输入覆盖或清空任意文件。(2025.12.18版本修复)
  • CVE-2025-68145 (CVSS 7.1 [v3] / 6.3 [v4]) 使用 --repository 标志限制操作到特定仓库路径时,缺少路径验证,导致另一处路径遍历漏洞。(2025.12.18版本修复

(上图:路径遍历(Path Traversal)攻击原理示意图,展示攻击者如何通过 ../ 等方式绕过目录限制,访问任意文件

攻击链:与Filesystem MCP服务器结合实现RCE

Cyata记录的攻击场景显示,这三个漏洞可与Filesystem MCP服务器 串联使用形成完整攻击链:

  1. 使用 git_init 在可写目录创建Git仓库。
  2. 通过Filesystem MCP服务器写入带有clean过滤器的恶意 .git/config 文件。
  3. 编写 .gitattributes 文件,将过滤器应用于特定文件。
  4. 编写包含恶意载荷的shell脚本。
  5. 创建触发过滤器的文件。
  6. 调用 git_add 执行clean过滤器,从而运行恶意载荷。

整个过程可通过间接提示注入触发:AI助手读取恶意内容后,自主调用相关Git工具,最终实现远程代码执行。

(上图:提示注入攻击在MCP/Git环境中的典型流程示意图,展示恶意内容如何通过AI助手调用工具,导致数据泄露或代码执行。)

修复措施与官方响应

作为响应,Anthropic已:

  • 移除存在风险的 git_init 工具;
  • 增加额外路径验证,防止路径遍历原语。

建议所有使用 mcp-server-git 的用户立即更新至 2025.12.18 或更高版本,以获得最佳防护。

Cyata首席执行官兼联合创始人 Shahar Tal 表示:"这是标准的Git MCP服务器参考实现,开发者预期会复用。如果安全边界在参考实现中都遭到破坏,就表明整个MCP生态系统需要更深入的审查。这些不是边缘案例,而是开箱即用的漏洞。"

对MCP生态与Agentic AI的启示

MCP(Model Context Protocol)旨在让AI Agent安全、标准化地访问外部工具和数据源,但此次事件暴露了参考实现 的安全隐患。当AI工具链(如Git + Filesystem MCP)组合使用时,单个组件的弱点可能被放大为系统性风险

企业与开发者建议

  • 立即更新所有MCP相关服务器至最新版本
  • 对MCP工具实施严格的输入验证、路径沙箱和命令净化。
  • 采用零信任原则,限制AI Agent的工具调用权限,并监控异常Git操作。
  • 在生产环境中避免直接使用未经验证的参考实现,优先进行安全审计。
  • 建立提示注入防御机制,包括运行时语义分析和操作审计。
相关推荐
正经教主2 小时前
【docker基础】第三课:镜像管理与Dockerfile基础
运维·docker·容器
老虎06272 小时前
Nginx
运维·nginx
lwx9148529 小时前
Linux-特殊权限SUID,SGID,SBIT
linux·运维·服务器
炘爚11 小时前
深入解析printf缓冲区与fork进程复制机制
linux·运维·算法
workflower11 小时前
注塑机行业目前自动化现状分析
运维·人工智能·语言模型·自动化·集成测试·软件工程·软件需求
小义_12 小时前
随笔 3(Linux)
linux·运维·服务器·云原生·红帽
#六脉神剑12 小时前
MySQL参数调优:十个关键参数助力数据库性能数倍提升
运维·mysql
cccccc语言我来了12 小时前
Linux(10)进程概念
linux·运维·服务器
伐尘12 小时前
【linux】查看空间(内存、磁盘、文件目录、分区)的几个命令
linux·运维·网络