Photo by Solen Feyissa on Unsplash
OpenAI去年8月修复了被名为ShadowLeak的攻击手法利用的漏洞,但并未彻底解决,研究人员随后又发现了新的滥用方式,称为ZombieAgent,促使该公司在12月再次进行修补。
去年,OpenAI修复了由安全公司Radware发现的ChatGPT滥用方法ShadowLeak。ShadowLeak是一种间接提示注入攻击,利用ChatGPT的深度研究功能,当用户授权访问Gmail或浏览器工具时,攻击者可发送经过篡改的HTML邮件(如Gmail邮件),ChatGPT会自动将Gmail(或Outlook、Google Drive)中的敏感信息,以URL参数形式发送至外部服务器,无需用户点击,也不会弹出任何警告。OpenAI已在8月修复该问题,限制ChatGPT仅能按指定方式打开URL,禁止附加额外参数。
但Radware研究人员本周披露了一种绕过该限制的新方法,命名为ZombieAgent。
研究人员解释了ZombieAgent的攻击原理:他们预先构建了一组网址列表,每个网址后附加一个数字或英文字母,例如example.com/a、example.com/b……直至example.com/z,以及example.com/0到example.com/9。空格则用$符号替代,如example.com/$。随后将这一列表输入ChatGPT。
结果,ChatGPT会自动提取敏感信息,将其标准化(转为小写字母,空格替换为$),再逐字通过上述网址发送给攻击者。例如,若敏感字符串为“AB cd”,ChatGPT将依次访问example.com/a、example.com/b、example.com/a、example.com/$、example.com/c、example.com/d,从而完成数据外传。Radware甚至为重复字符设计了“索引化URL”(如a0~a9),以区分同一字母在不同位置的出现,确保字符串顺序准确无误。这使得ChatGPT能够逐字泄露敏感内容。
ZombieAgent之所以能成功,是因为OpenAI开发人员未限制URL中附加单个字母或字符。
在Radware于9月通报后,OpenAI在12月的最新更新中,对ChatGPT进行了限制:禁止其打开任何来自电子邮件的链接,除非该链接存在于知名公开索引中,或由用户在对话中直接提供。此调整旨在阻止代理访问由攻击者控制的基础域名,从而有效缓解ZombieAgent攻击。