近期,网络安全研究人员披露了热门工具 figma-developer-mcp(模型上下文协议,MCP)服务器中一个已修复的命令注入漏洞(CVE-2025-53967),CVSS评分为7.5。该漏洞源于对用户输入未进行安全处理,允许攻击者发送任意系统命令,可能导致远程代码执行。此漏洞存在于MCP的fallback机制中,攻击者可利用间接提示注入,诱使MCP客户端执行非预期操作。研究人员指出,漏洞核心在于`fetch-with-retry.ts`文件中,当标准fetch失败时,使用`child_process.exec`调用curl命令,直接将URL和标头值嵌入Shell命令字符串,从而引入注入风险。0.6.3版本已修复此漏洞,建议使用`child_process.execFile`替代。
🔧 **Figma开发者MCP工具存在命令注入漏洞(CVE-2025-53967)**:该漏洞允许攻击者通过未经验证的用户输入执行任意系统命令,CVSS评分为7.5,可能导致远程代码执行。漏洞根源在于服务器直接将用户输入嵌入命令行字符串,未进行充分的安全处理。
💡 **漏洞利用途径与影响**:攻击者可利用间接提示注入,诱使MCP客户端执行非预期操作,进而实现远程代码执行。此漏洞存在于MCP的fallback机制中,尤其是在`fetch-with-retry.ts`文件中,当标准fetch失败时,使用`child_process.exec`调用curl命令成为注入点。
🛡️ **修复与缓解措施**:figma-developer-mcp的0.6.3版本已修复此漏洞。作为缓解措施,建议开发者避免将`child_process.exec`与不可信输入结合使用,转而采用`child_process.execFile`,以消除Shell解释带来的风险。
HackerNews 编译,转载请注明出处:
网络安全研究人员披露了热门工具 figma-developer-mcp(模型上下文协议,MCP)服务器中一个现已修复的漏洞。该漏洞可能使攻击者实现代码执行。
此漏洞编号为 CVE-2025-53967,CVSS 评分为 7.5,属于命令注入漏洞,根源在于对用户输入未进行安全处理,从而为攻击者发送任意系统命令打开了方便之门。
该漏洞的 GitHub 安全公告指出:“服务器会直接将未经验证的用户输入嵌入到命令行字符串中,进而构造并执行 Shell 命令。这使得 Shell 元字符注入(如 |、>、&& 等)成为可能。成功利用该漏洞可导致攻击者以服务器进程的权限执行远程代码。”
由于 Framelink Figma MCP 服务器会提供多种工具,供用户借助 Cursor 等人工智能(AI)驱动的编码代理在 Figma 中执行操作,因此攻击者可通过间接提示注入的方式,诱使 MCP 客户端执行非预期操作。
网络安全公司 Imperva 于 2025 年 7 月发现并报告了该问题。该公司将 CVE-2025-53967 描述为一种 “设计疏漏”,存在于(服务器的) fallback 机制(故障转移 / 备用机制)中,可能使恶意攻击者实现完全的远程代码执行,导致开发人员面临数据泄露风险。
安全研究员约汉・西拉姆表示,该命令注入漏洞 “发生在构建用于向 Figma API 端点发送流量的命令行指令过程中”。
漏洞利用流程分为以下几个步骤:
MCP 客户端向 MCP 端点发送 “初始化(Initialize)” 请求,以获取 mcp-session-id(MCP 会话 ID),该 ID 将用于后续与 MCP 服务器的通信。客户端向 MCP 服务器发送 JSONRPC 请求,调用 “tools/call” 方法以使用相关工具,例如 “get_figma_data”(获取 Figma 数据)或 “download_figma_images”(下载 Figma 图片)。
该漏洞的核心问题存在于 “src/utils/fetch-with-retry.ts” 文件中。该文件首先尝试使用标准的 fetch API 获取内容,若获取失败,则会通过 child_process.exec(Node.js 中的子进程执行模块)调用 curl 命令 —— 而这一过程恰好引入了命令注入漏洞。
Imperva 指出:“由于 curl 命令是通过将 URL 和标头值直接插入到 Shell 命令字符串中构造而成的,恶意攻击者可精心设计特殊的 URL 或标头值,以注入任意 Shell 命令。这可能导致在主机上执行远程代码(RCE)。”
在概念验证(PoC)攻击中,同一网络中的远程攻击者(例如连接公共 Wi-Fi 的攻击者或已入侵企业设备的攻击者)可通过向存在漏洞的 MCP 发送一系列请求来触发该漏洞。此外,攻击者也可通过 DNS 重绑定攻击,诱骗受害者访问精心构造的恶意网站。
figma-developer-mcp 的 0.6.3 版本已修复该漏洞,该版本于 2025 年 9 月 29 日发布。作为缓解措施,建议避免将 child_process.exec 与不可信输入结合使用,而是改用 child_process.execFile—— 该方法可消除 Shell 解释带来的风险。
这家隶属于泰雷兹(Thales)集团的公司(指 Imperva)表示:“随着人工智能驱动的开发工具不断发展并获得广泛采用,安全考量必须与技术创新保持同步。此漏洞深刻提醒我们,即便是设计用于本地运行的工具,也可能成为攻击者的强大入口。”
与此同时,网络安全公司 FireTail 披露,谷歌已决定不修复其 Gemini AI 聊天机器人中一个新的 ASCII 走私攻击漏洞。该漏洞可被利用来构造特殊输入,这些输入能绕过安全过滤机制,并诱导聊天机器人产生不良响应。其他易受此类攻击影响的大型语言模型(LLM)还包括 DeepSeek 和 xAI 的 Grok。
该公司表示:“当 Gemini 等大型语言模型与谷歌 Workspace 等企业平台深度集成时,此漏洞的危险性会尤其突出。这种攻击技术可实现自动化的身份伪造和系统性的数据投毒,将一个用户界面(UI)层面的漏洞转化为潜在的安全噩梦。”
消息来源:thehackernews;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文