加密推理轨迹可能被跨模型窃取

Simon Willison7 天前

研究发现

一项针对专有大语言模型 API 的研究显示,Anthropic、OpenAI 和 Google 的部分模型曾向客户端返回加密的思维链区块。这些区块可以在不同会话、用户甚至同一模型家族的不同模型之间重放。

研究人员利用这一机制,将前沿模型生成的推理轨迹交给同一系列中较弱的模型,再通过提示操纵诱导后者输出未加密的原始推理内容,从而暴露原本不应提供给用户的隐藏推理。

攻击机制

研究指出,同一模型家族中的成员曾使用相同的加密密钥。攻击者因此可以把一个模型生成的加密推理区块重新输入到另一个模型,并诱导其将区块内容转录为明文。

其中,Claude Haiku 4.5 被认为较容易受到影响。研究人员通过要求模型转录附加到当前请求的推理内容,并配合预填充的助手消息前缀,使模型输出隐藏的推理文本。相关预填充功能后来已从 Claude 4.6 系列模型中移除,但在 Haiku 4.5 上仍可使用。

暴露内容并非面向用户设计

研究附录展示了大量被提取的推理片段。这些内容表明,模型的原始推理通常包含内部任务拆解、代码修改计划、组件设计以及对工具调用的简短记录,并不一定是适合人类阅读的完整解释。

例如,一段与 CSS 修改相关的推理主要是对文件替换、组件创建、键盘支持和可访问性等事项的工作清单,而不是连贯的答案说明。

对提示注入的启示

研究还发现了一种与推理轨迹结合的提示注入方式:先诱导模型在推理过程中考虑数据外传等行为,再将相关加密轨迹输入另一个模型。研究人员观察到,模型似乎更容易信任并执行出现在自身推理轨迹中的指令。

这意味着,即使推理内容对用户不可见,它仍可能成为跨模型提示注入的载体。模型之间重用、转发或持久化推理区块时,需要特别关注其中是否混入了不可信指令。

当前状态

相关模型提供商在收到报告后进行了处理,研究人员随后无法再次复现同样的攻击。该事件仍说明,加密并不等于推理内容在整个模型调用链中的安全隔离。

对 API 设计者而言,需要重点检查以下问题:

  • 加密推理区块是否能跨会话、跨用户或跨模型重放;
  • 同一模型家族是否共享足以扩大攻击面的密钥或验证机制;
  • 模型是否会无条件信任输入中的内部推理内容;
  • 推理轨迹在缓存、存储和模型间传递时是否经过完整性校验;
  • 发生异常调用时,是否能够及时撤销相关密钥和接口能力。

这起事件也提醒使用者,不应假设 API 返回的加密字段天然不可恢复,更不能把模型推理轨迹当作可信的系统指令。

评论

请登录后发表观点

暂无数据