// AI 威胁新闻台 · 2026年10月1日
首页/ATK-AI · 攻击 AI 模型
攻击 AI 模型严重CVECVSS Not stated by source (Microsoft rates it Critical)

研究揭SQL Copilot漏洞CVE-2026-65669 可令数据库用户变系统管理员

研究员Johann Rehberger在BlueHat Asia 2026披露,Microsoft SQL Server Management Studio的Copilot存在CVE-2026-65669漏洞,攻击者可利用间接提示注入及正规表达式防护缺陷,将低权限数据库用户提升为服务器级sysadmin。Microsoft将此漏洞评为「严重」。

示意图:数据库服务器机房。
资料图片:示意图:数据库服务器机房。。图片来源:U.S. Forest Service (source) / rawpixel (CC0)
重点
  • 研究员Johann Rehberger在BlueHat Asia 2026公开CVE-2026-65669,一个Microsoft评为「严重」的SQL Server Copilot提权漏洞
  • 攻击者可透过间接提示注入,配合Copilot的正规表达式防护缺陷,绕过「只读模式」并执行任意T/SQL指令
  • 完整攻击链可将一个db_owner层级的低权限用户,提升至服务器级sysadmin角色
本文目录

研究员在BlueHat Asia 2026披露SQL Copilot提权漏洞

研究员Johann Rehberger在新加坡举行的BlueHat Asia 2026发表演讲,内容涵盖他对Microsoft SQL Server Management Studio(SSMS)内置Copilot功能的研究。据其博客文章指出,这项研究涉及CVE-2026-65669,一个被Microsoft评为「严重」的SQL Server提权漏洞(Elevation of Privilege Vulnerability)。

Microsoft已就此发布修补程序,Rehberger提醒用户确保安装版本已更新。

Copilot以连接用户的权限执行指令

Rehberger发现,Copilot在SSMS中执行时,使用的是当时已连接查询窗口的用户权限。换言之,若用户以sysadmin身分连接,Copilot亦会以该sysadmin连接执行SQL指令。

其中一个工具ReadFromDatabase可读取数据库内容,理论上受「只读模式」限制,系统提示明确指示模型不应执行会改变数据库或服务器状态的查询。但Rehberger指出,系统提示指令并非真正的安全边界。

正规表达式防护可被绕过

透过逆向工程分析相关程序代码,Rehberger发现只读模式的执行依赖LocalSqlExecutionAccessChecker类别中一个以正规表达式(regex)为基础的分类器。他指出,黑名单式(blocklist)的安全控制本质脆弱,往往存在多种绕过方式。

例如,使用DECLARE @p sysname='sp_who'; EXEC @p这类写法即可绕过封锁清单,从而呼叫任意储存程序。配合sp_executesql,攻击者可执行动态构建的任意SQL查询,包括CREATE、INSERT、UPDATE、DELETE及DROP等写入操作。

间接提示注入可令数据外泄并夺取系统管理员权限

Rehberger示范了透过xp_dirtree及专门用于验证备份文件的RestoreVerifyBackupFile工具,将数据库内容逐行外泄至第三方服务器。

更关键的是,SQL Copilot支持以AGENTS.md及CONSTITUTION.md形式储存的「数据库指示」,这些指示以扩展属性(extended property)形式透过sp_addextendedproperty储存程序加入,并会被Copilot自动读入上下文。Rehberger指出,修改这些元数据所需的权限,可以低于日后使用Copilot的用户权限,令低权限用户能够影响高权限用户的AI代理行为。

在最终示范中,一名拥有db_owner权限的用户植入恶意的「数据库宪法」,Copilot读入后,经间接提示注入触发只读模式绕过,以受害者的SQL连接执行任意T/SQL指令,最终将攻击者加入sysadmin角色,完成由db_owner提升至系统管理员的完整攻击链。

Rehberger吁将只读防护视为安全不变量

Rehberger总结指出,AI代理的只读防护必须是真正的安全不变量(如权限控制),而非仅靠模型指令或脆弱的SQL分类器。他亦建议,若Copilot以高权限数据库连接运作,代理控制一旦失效,影响可波及整个系统。

他并指出,持久化指示如AGENTS.md及CONSTITUTION.md为数据库权限模型引入新的信任关系,扩展属性不再只是元数据,而是AI助手会遵循的指令。此事件涉及提示注入及AI代理的安全风险,与早前MCP Python SDK的OAuth漏洞同属AI代理被滥用的案例。

防守方现在要做什么

  1. 将SSMS及其Copilot功能更新至Microsoft发布的最新修补版本
  2. 避免以sysadmin或高权限账户连接查询窗口后使用Copilot,改以最低必要权限连接
  3. 利用Microsoft提供的管理控制选项,包括停用Copilot、设定群组原则或限制执行上下文
  4. 审视数据库内AGENTS.md及CONSTITUTION.md等扩展属性,确认哪些用户有权限修改这些元数据
  5. 对会被Copilot读取的内容(如文件、数据表注解)进行来源审查,以防间接提示注入

常见问题

CVE-2026-65669影响哪些产品?

此漏洞影响Microsoft SQL Server Management Studio(SSMS)内置的Copilot功能,Microsoft已将其评为「严重」等级的提权漏洞。

这个漏洞如何被利用?

攻击者可透过在Copilot会读取的内容中植入恶意指示(间接提示注入),配合绕过以正规表达式为基础的只读模式防护,执行任意T/SQL指令,最终可将低权限数据库用户提升至sysadmin角色。

什么是间接提示注入?

间接提示注入是指攻击者将恶意指令隐藏在AI代理会读取的内容(例如文件、数据库注解或元数据)之中,当另一名用户的代理读取该内容时,便会被诱导执行攻击者的指令。

这个漏洞是否已被用于实际攻击?

文章未提及此漏洞已被用于实际攻击,内容为研究员在BlueHat Asia 2026会议上的研究披露。

管理员现在应该怎样做?

应将SSMS更新至最新修补版本,避免以高权限账户连接后使用Copilot,并检视AGENTS.md与CONSTITUTION.md等扩展属性的修改权限。

来源

  1. From SELECT to SYSADMIN with SQL Copilot (CVE-2026-65669), embracethered.com原始文件
  2. CVE-2026-65669, Microsoft Security Response Center原始文件
用 AI 深入了解