技术说明
来自中国科学院信息工程研究所、中国科学院大学和北京长亭科技的研究人员将"跨会话存储提示注入"(SPI) 正式定义为与单会话提示注入不同的新型系统级攻击类别。明确类比网络系统中的存储 XSS,SPI 利用了现代代理系统维护持久状态(记忆、文件系统、RAG 存储、工具/MCP 元数据和 AGENTS.md 系统提示)在会话间持久化的事实。攻击者通过任何普通交互、文档上传或网络内容检索方式将对抗内容写入任何长期代理工件中,会导致该恶意指令被重新纳入跨越未来会话、用户和任务的下游代理执行上下文中——远在攻击者的交互结束之后。该论文提供了形式化的分类法、基准和沙盒工具包,包含跨模型、攻击目标和持久化通道的定量攻击成功度量。
攻击途径
攻击者通过任何可用输入通道(用户查询、文档、网页、工具输出)将对抗内容写入持久代理状态。内容持久化在代理记忆、RAG 数据库、文件系统工件或工具元数据中。在未来的会话中——可能涉及不同的用户或任务——代理的上下文构造纳入了存储的指令,触发恶意行为,无需任何进一步的攻击者交互。注入和利用在时间上脱钩,使检测远比实时注入困难。
受影响系统
任何具有持久跨会话状态的代理系统:使用长期记忆(MemGPT 风格)、RAG 支持的知识库、共享文件系统、MCP 工具元数据或 AGENTS.md 风格系统提示的代理。多用户代理部署风险最高,因为单个存储注入可以影响所有后续用户。已在多个生产 LLM 上测试。
缓解措施
建议的架构控制:(1) 对所有写入持久代理状态的内容进行来源标记,区分权威系统提示和用户/外部输入;(2) 对长期记忆存储和 RAG 知识库的访问控制和完整性验证;(3) 在写入持久状态的内容和提升到特权上下文位置的内容之间的清理边界;(4) 定期对代理记忆和持久状态存储进行对抗性测试。随论文一起发布的基准和沙盒工具包可用于持续评估。