研究人员发现Microsoft 365 Copilot(M365 Copilot)存在一项复杂漏洞,攻击者可通过间接提示注入攻击窃取租户敏感数据,包括近期电子邮件内容。
漏洞利用机制分析
该漏洞由研究员Adam Logue在今天发布的博客文章中详细披露,其利用了AI助手与Office文档的集成功能以及对Mermaid图表的原生支持。攻击过程无需用户持续交互,仅需初始点击即可完成数据外泄。
攻击始于用户要求M365 Copilot总结恶意构造的Excel电子表格。攻击者通过在多个工作表隐藏白色文本指令,采用渐进式任务修改和嵌套命令技术劫持AI行为。
这些间接提示会覆盖原有的总结任务,转而指示Copilot调用其search_enterprise_emails工具检索近期企业邮件。获取的内容随后被十六进制编码并分割成短行,以规避Mermaid的字符限制。
通过伪装图表实现数据外泄
Copilot会生成Mermaid图表——这是一种基于JavaScript、可通过类Markdown文本创建流程图和图表的工具。攻击者将其伪装成带有锁表情符号的"登录按钮"。
该图表包含用于增强按钮真实感的CSS样式,以及嵌入了编码邮件数据的超链接。当用户误以为需要点击该按钮才能访问文档"敏感"内容时,链接会将数据发送至攻击者服务器(如Burp Collaborator实例)。十六进制编码的有效载荷将静默传输,攻击者可从服务器日志解码获取数据。
攻击特征与防御措施
Mermaid支持CSS超链接的特性使得该攻击向量尤为隐蔽。与攻击者直接与AI对话的直接提示注入不同,此方法将命令隐藏在电子邮件或PDF等看似无害的文件中,使其在钓鱼活动中更具隐蔽性。
Adam Logue指出这与之前在Cursor IDE中发现的Mermaid漏洞利用存在相似性,不过M365 Copilot需要用户交互才能触发。微软最终在2025年9月通过移除Copilot渲染的Mermaid图表中的交互式超链接修复了该漏洞。
此次事件凸显了AI工具集成过程中的安全风险,特别是处理敏感数据的企业环境。随着Copilot等大语言模型(LLM)与API和内部资源的连接,防范间接注入攻击变得至关重要。微软强调正在持续实施缓解措施,同时专家建议用户验证文档来源并密切监控AI输出内容。
参考来源:
Microsoft 365 Copilot Prompt Injection Vulnerability Allows Attackers to Exfiltrate Sensitive Data
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)