投毒文档利用ChatGPT连接器窃取机密数据:新型零点击攻击“AgentFlayer”揭示AI安全漏洞
最新一代人工智能模型远非简单的独立聊天机器人,它们正越来越多地被设计为与用户的个人和专业数据深度集成。例如,OpenAI的ChatGPT可以直接连接到用户的Gmail收件箱,在GitHub上审查代码,或在Microsoft日历中管理日程。然而,这些强大的集成也带来了显著的安全漏洞,正如一项新研究揭示的那样,一个“投毒”文档就足以泄露敏感信息。
安全研究人员Michael Bargury和Tamir Ishay Sharbat在拉斯维加斯的Black Hat黑客大会上公布了他们的发现,并将其命名为“AgentFlayer”。他们的工作揭示了OpenAI连接器中的一个关键弱点,展示了间接提示注入攻击如何悄无声息地从Google Drive账户中提取机密数据。在一次现场演示中,Bargury成功地从一个测试Drive账户中窃取了开发者机密,特别是API密钥。
这一漏洞凸显了一个日益增长的担忧:随着人工智能模型与外部系统日益紧密地交织,并处理更大规模、更多样化的数据,恶意行为者的潜在攻击面急剧扩大。“用户无需做任何操作就会被入侵,也无需做任何操作数据就会泄露出去,”安全公司Zenity的首席技术官Bargury解释道。他强调了此次攻击的“零点击”性质,仅需受害者的电子邮件地址即可共享被入侵的文档。“这非常非常糟糕,”他补充说。
OpenAI于今年早些时候推出了ChatGPT的连接器测试版功能,宣称其能够“将您的工具和数据引入ChatGPT”,用于文件搜索、拉取实时数据以及直接在聊天中引用内容等任务。其网站目前列出了至少17种不同服务的连接。Bargury证实,他已于今年早些时候向OpenAI报告了他的发现,该公司此后已实施缓解措施,以阻止他演示的特定数据提取技术。值得注意的是,尽管该攻击可以提取API密钥等敏感片段,但无法导出整个文档。
Google Workspace安全产品管理高级总监Andy Wen承认了更广泛的影响。他表示:“虽然这个问题并非Google特有,但它说明了为什么开发针对提示注入攻击的强大防护措施至关重要。”他强调了Google最近增强的AI安全措施。
AgentFlayer攻击始于一个看似无害的“投毒”文档,该文档随后被共享到潜在受害者的Google Drive中。(或者,受害者也可能在不知情的情况下自行上传此类被入侵的文件。)在这个文档中——用于演示的是一份与OpenAI首席执行官Sam Altman的虚构会议纪要——Bargury嵌入了一个300字的恶意提示。这个提示以白色、一号字体呈现,对人眼几乎是不可见的,但机器却能完美读取。
在一个概念验证视频中,Bargury展示了受害者要求ChatGPT“总结我与Sam的上次会议”的情景,尽管任何与会议总结相关的用户查询都足够。然而,隐藏的提示会覆盖该请求,指示大型语言模型(LLM)“出错了”,不需要总结。然后,它虚假地声称用户是“一个与截止日期赛跑的开发者”,并指示AI在Google Drive中搜索API密钥,将其附加到一个提供的URL末尾。
这个URL不仅仅是一个普通的网址;它是一个Markdown语言命令,旨在连接到外部服务器并检索图像。关键在于,根据隐藏提示的指示,该URL现在还携带了AI在Google Drive账户中发现的API密钥。
利用Markdown从ChatGPT提取数据并非全新。独立安全研究员Johann Rehberger此前曾展示过类似的方法,这促使OpenAI引入了“url_safe”功能,旨在检测恶意URL并在存在风险时阻止图像渲染。为了规避这一点,Zenity的AI研究员Sharbat在一篇博客文章中解释说,他们使用了Microsoft Azure Blob云存储的URL。这使得他们的“图像”成功渲染,并将受害者的API密钥记录在他们的Azure服务器上。
此次攻击再次严峻地提醒我们,间接提示注入如何能够危害生成式AI系统。此类注入涉及攻击者向LLM输入“投毒”数据,从而操纵系统执行恶意操作。本周早些时候,另一组研究人员展示了间接提示注入甚至可以劫持智能家居系统,远程激活灯光和锅炉。
尽管间接提示注入几乎自ChatGPT问世以来就已是一个已知问题,但随着越来越多的系统与LLM互联,可能暴露“不受信任”的数据,安全研究人员越来越担心风险的提升。通过这些方法获取敏感信息还可能为恶意黑客提供进入组织更广泛数字基础设施的途径。Bargury承认,将LLM与外部数据源集成显著增强了它们的功能和实用性。“它强大得令人难以置信,”他说,“但正如AI的常态,更大的力量伴随着更大的风险。”