紧急安全预警|MySQLMCPServer曝CVSS10.0严重漏洞,未认证攻击者可执行任意SQL并实现RCE

admin 2026-09-14 04:28:43 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: mysql-mcp-server存在CVE-2026-59971严重漏洞,CVSS10.0,因缺少认证与origin校验,未认证攻击者可执行任意SQL,若MySQL账户有file权限可进一步实现RCE。受影响版本低于0.4.2,建议立即升级至0.4.2,避免将SSE服务暴露公网,并检查数据库账户权限。 综合评分: 88 文章分类: 漏洞分析,应急响应,漏洞预警,web安全


紧急安全预警|MySQL MCP Server曝CVSS 10.0严重漏洞,未认证攻击者可执行任意SQL并实现RCE

tuto tuto

杂杂咱谈

2026年9月13日 10:55 福建

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

一、漏洞概述

GitHub Security Advisory披露开源项目mysql-mcp-server存在一处严重安全漏洞CVE-2026-59971。漏洞位于项目的SSE/HTTP Transport实现中,由于缺少Origin/Host校验、身份认证以及TrustedHost/CORS等安全机制,攻击者可能在无需身份认证的情况下调用execute_sql执行任意SQL。

当后端MySQL账户拥有FILE权限时,攻击者还可能进一步读取或写入服务器文件,并在特定条件下实现远程代码执行。GitHub将该漏洞评定为Critical,CVSS 10.0。


二、漏洞基本信息

| 项目 | 内容 | | — | — | | 漏洞编号 | CVE-2026-59971 | | GHSA | GHSA-rqfv-2mw9-78g2 | | 项目 | mysql-mcp-server | | Ecosystem | PyPI | | 漏洞类型 | 缺失认证、Origin校验错误 | | CWE | CWE-306、CWE-346 | | CVSS | 10.0 Critical | | CVSS向量 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H | | 受影响版本 | < 0.4.2 | | 修复版本 | 0.4.2 | | 触发条件 | MCP_TRANSPORT=sse | | 默认 stdio 模式 | 不受影响 |

GitHub Advisory页面显示,该漏洞于2026年6月21日由项目维护方发布,随后于2026年9月11日进入GitHub Advisory Database并完成审核。


三、漏洞技术原理

该漏洞的核心问题出现在mysql_mcp_server的SSE Transport实现。在SSE/HTTP模式下,程序创建SseServerTransport时没有提供相应的security_settings,导致MCP Python SDK默认关闭DNS Rebinding Protection。

同时,应用还存在以下安全缺陷:

  • 未启用 Origin/Host 校验;
  • 未配置 CORS Middleware;
  • 未配置 TrustedHost Middleware;
  • /、/sse、/messages/路由均无需认证;
  • 服务默认绑定 0.0.0.0
  • SQL 执行函数直接使用攻击者可控的查询内容。

最终形成:

网络请求 → 未认证SSE接口 →execute_sql→ 攻击者控制SQL语句 → MySQL数据库


四、两种主要攻击场景

场景一:服务直接暴露在网络

如果MySQL MCP Server使用SSE模式并直接暴露到网络,攻击者无需凭据即可调用SQL执行功能。

攻击链可以概括为:

远程攻击者&nbsp; &nbsp; ↓访问SSE/HTTP接口&nbsp; &nbsp; ↓无需认证&nbsp; &nbsp; ↓调用 execute_sql&nbsp; &nbsp; ↓执行任意SQL&nbsp; &nbsp; ↓读取/修改数据库

这意味着攻击者可能直接获取数据库中的大量敏感数据,并修改或删除数据。


场景二:DNS Rebinding攻击

如果MCP Server仅绑定本地地址,攻击者仍可能利用DNS Rebinding。

攻击者首先诱导受害者访问恶意网页,然后通过DNS Rebinding将攻击域名解析到:

127.0.0.1

随后利用受害者浏览器作为代理访问本地MCP Server,并以同源请求方式调用execute_sql。

攻击链:

恶意网页&nbsp; &nbsp;↓DNS Rebinding&nbsp; &nbsp;↓127.0.0.1&nbsp; &nbsp;↓本地 MySQL MCP Server&nbsp; &nbsp;↓SSE/messages&nbsp; &nbsp;↓execute_sql&nbsp; &nbsp;↓任意SQL执行

漏洞之所以能够形成这条攻击链与服务本身缺少Origin/Host验证和DNS Rebinding Protection有直接关系。


五、从SQL执行到RCE

该漏洞最值得关注的地方并不仅仅是数据库访问。

如果MCP Server连接MySQL所使用的账户拥有FILE权限,攻击者可以进一步利用数据库文件操作能力。

攻击链可概括为:

未认证访问&nbsp; &nbsp; &nbsp; ↓SSE接口&nbsp; &nbsp; &nbsp; ↓execute_sql&nbsp; &nbsp; &nbsp; ↓任意SQL执行&nbsp; &nbsp; &nbsp; ↓MySQL FILE权限&nbsp; &nbsp; &nbsp; ↓任意文件读取/写入&nbsp; &nbsp; &nbsp; ↓进一步实现代码执行

GitHub Advisory明确指出,在拥有FILE权限的情况下,可以利用MySQL的文件读取/写入能力,例如LOAD_FILE、INTO OUTFILE,进而在特定环境下实现RCE。

因此,更准确的描述应该是:

CVE-2026-59971本身首先导致未认证任意SQL执行;是否进一步达到RCE,取决于后端MySQL账户权限以及目标服务器环境。


六、漏洞影响

成功利用后,攻击者可能获得:

  • 未认证任意SQL执行
  • 数据库敏感信息窃取
  • 数据库数据修改、删除
  • 大规模数据外泄
  • MySQL FILE 权限滥用
  • 任意文件读取
  • 任意文件写入
  • 特定环境下进一步实现RCE

GitHub Advisory还指出,研究人员通过互联网扫描发现了25个公开可访问的该项目SSE实例,说明将此类MCP服务直接暴露到互联网存在现实攻击面。


七、受影响版本

受影响

mysql-mcp-server < 0.4.2

GitHub Advisory 列出的历史版本包括:

  • 0.1.0
  • 0.1.2
  • 0.2.0
  • 0.2.1
  • 0.2.2
  • 0.3.0
  • 0.3.1
  • 0.4.0
  • 0.4.1

已修复

0.4.2

需要特别注意的是,该漏洞主要影响:

MCP_TRANSPORT=sse

官方说明默认stdio Transport不受该漏洞影响。


八、修复与缓解建议

1. 立即升级

建议将mysql-mcp-server升级至v0.4.2或更高版本

v0.4.2版本已启用MCP SDK的DNS Rebinding Protection。

2. 不要将SSE服务直接暴露到公网

官方修复版本建议绑定:127.0.0.1而不是:0.0.0.0

3. 检查MySQL账户权限

重点检查MCP Server使用的数据库账户是否拥有FILE等高风险权限。

如果业务不需要,应立即删除不必要的数据库权限。

4. 排查异常SQL操作

  • 大规模 SELECT
  • 异常数据导出
  • 数据批量修改/删除
  • LOAD_FILE
  • INTO OUTFILE
  • 异常数据库账户行为
  • MCP Server异常HTTP/SSE访问

九、漏洞利用链总结

可以将此次漏洞压缩成一条比较直观的攻击链:

未认证SSE访问 → Origin/Host校验绕过 → execute_sql → 任意SQL执行 → 数据库读写 → MySQL FILE权限 → 任意文件读写 → 潜在RCE

其中DNS Rebinding是攻击者在服务仅本地暴露情况下的一条重要利用路径。


十、总结

CVE-2026-59971是一个针对MCP Server的严重安全漏洞。其危险性在于,问题并非单纯的SQL注入,而是MCP SSE服务缺少认证+Origin/Host校验+DNS Rebinding防护缺失+默认公网监听多个问题叠加,最终让攻击者能够在特定部署条件下直接调用数据库执行功能。

对于使用MySQL MCP Server + SSE Transport的环境,应优先确认当前版本、监听地址以及MySQL账户权限。0.4.1及以前版本建议立即升级至0.4.2或更高版本。

Simple #CVE-2026-59971 #MySQL MCP Server #RCE


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:杂杂咱谈 tuto tuto《紧急安全预警|MySQL MCP Server曝CVSS 10.0严重漏洞,未认证攻击者可执行任意SQL并实现RCE》

评论:0   参与:  0