返回安全研究YOFUNE_LABS / R06

研究笔记

AI Agent 的 Memory
为什么也是攻击面

一次写入,多次生效:记忆层需要和知识库、日志一样被当成资产。

研究笔记

本文是 Yofune_Labs 的工程分析,用来拆开身份、工具、记忆和边界。它参考公开的 Agent 安全讨论框架,但不是对某一份标准文本的逐条释义,也不替代具体系统的评估结论。

Agent 的 Memory 被设计成减少重复提问。它记住项目代号、用户偏好、上次没做完的步骤。从产品上看,这是体验。从安全上看,这是一份由模型读写的小型配置库,而且常常没有文档系统那套权限。

上下文窗口会结束。记忆不会。一次写入可以在几天后的另一次任务里被检索出来,作用在另一个人身上。

01记忆同时是数据、策略和攻击入口

数据:里面可能有客户名、内部编号、未公开的故障。

策略:里面可能有“以后默认导出全表”“优先使用管理员工具”。

攻击入口:能写入记忆的人,等于能给未来的 Agent 下长期指令。外部文档如果被摘要进记忆,间接注入就获得了持久化。

这三件事混在一个键值存储里时,安全团队很难用处理日志的方法处理它。日志通常不可执行。记忆会被执行。

02需要单独列进资产图

评估时把它画成独立节点,而不是模型旁边的装饰:

  • 存储在哪里,是否按租户拆分
  • 读写接口是否经过身份
  • 有没有过期、撤销、人工查看
  • 检索记忆时是否带上当前任务范围
  • 记忆变更有没有审计

实验室里最常见的缺陷是全局记忆。所有用户共享一个“有用的笔记”。于是低权限会话写下的句子,高权限会话会读到,并据此调工具。

03治理原则

默认按用户和任务隔离。确实需要共享的,当成知识库上线:有主人、有分级、有评审。

记忆可以提示,不能授权。授权只来自当前身份和当前任务。

定期清洗。长期无人访问的记忆不应成为永久策略。

Memory 让 Agent 看起来更懂你。它也让一次污染不必赶在同一轮对话里完成。