安全专家警告,Anthropic的Claude文件上传功能所使用的Files API可能被用于窃取企业数据。Anthropic正在紧急修复该漏洞。
近期,Anthropic为Claude助手的Code Interpreter功能新增了网络请求能力。但研究人员Johann Rehberger指出,该功能存在设计缺陷。他解释称,Claude的Code Interpreter默认启用网络访问权限。根据Anthropic官方文档,为在功能性和安全性之间取得平衡,该功能仅允许Claude连接至经过批准的包管理器,如npm、PyPI、GitHub、Python、Ubuntu、Yarn,以及Anthropic的外部服务等。
研究人员发现,Anthropic的外部服务中包含api.anthropic.com,这使得攻击者在攻击其他用户时,还能将自己的Anthropic账户作为数据中转站。例如,攻击者可利用聊天的chat API,将受害用户的对话内容或其他敏感信息回传至自身账户。结合Files API,攻击者可将整个文件上传至Claude,再通过API调用将文件从Anthropic控制台下载下来。根据Anthropic文档,通过Claude应用使用Files API上传文件的限制为:单个文件最大30MB,最多可上传20个文件。
Rehberger设计了一种间接提示注入攻击手法。该手法结合了网络访问API与Claude新引入的对话记忆功能——该功能允许Claude检索和分析用户的所有历史对话记录。攻击流程如下:首先,通过提示诱导Claude提取用户的对话内容,并将其保存在Code Interpreter沙箱中的临时文件里;随后,再通过另一条提示指令,让Claude执行程序并通过Anthropic API将文件发送出去。攻击者提供自己的API密钥,即可引导Claude将文件发送至其控制的账户。
他还发现了一种绕过Claude安全机制的方法。为防范提示注入攻击,Claude会拒绝执行包含代码的指令。但若恶意指令中嵌入看似无害的代码片段(例如打印“Hello, world”),即可绕过系统检测,诱使Claude执行后续恶意操作。
Rehberger此前已向Anthropic通报该漏洞。该厂商最初认为这只是模型安全层面的问题,不属于实际漏洞,因此暂不打算修复。但在10月30日,Anthropic正式确认该问题为安全漏洞,并正在紧急开发补丁。在补丁发布前,Anthropic建议用户在使用Claude时留意其是否异常访问个人信息,如发现可疑行为,应立即停止使用。