跳转至

MEMSAD: Gradient-Coupled Anomaly Detection for Memory Poisoning in Retrieval-Augmented Agents

论文信息

  • arXiv: https://arxiv.org/abs/2605.03482
  • 提交日期: 2026-05-05
  • 作者: Ishrith Gowda
  • 方向: 记忆安全 / 隐私保护

摘要

持久化外部记忆使 LLM Agent 能跨会话维护上下文,但其安全属性尚未被形式化表征。本文将检索增强 Agent 的记忆中毒攻击形式化为一个 Stackelberg 游戏,提供了一个统一评估框架覆盖三种递进访问假设的攻击类。在修正了 Chen et al. (2024) 的触发查询规范不一致问题后,本文表明忠实评估使测量的攻击成功率提升 4 倍(ASR-R: 0.25 → 1.00)。核心贡献是 MEMSAD(语义异常检测),一种基于校准的防御,核心是梯度耦合定理:在编码器正则条件下,异常评分梯度和检索目标梯度被证明是完全相同的,因此任何降低检测风险的连续扰动都会必然降低检索排名。这种耦合产生了认证检测半径——无论对手策略如何都能保证正确分类。通过 Le Cam 方法证明极小极大最优性,显示任何阈值检测器需要 Ω(1/ρ²) 校准样本,而 MEMSAD 达到了这个下界(至 log(1/δ) 因子)。进一步导出滚动校准的在线遗憾界为 O(σ^{2/3} Δ^{1/3}),并形式化刻画了一个离散同义词不变性漏洞,标记了连续空间防御的边界。

核心贡献

  1. 记忆中毒的博弈论形式化:将攻击建模为 Stackelberg 游戏,提供统一评估框架
  2. 修正评估协议:发现并修正了 Chen et al. (2024) 的触发查询规范问题,使 ASR 测量从 0.25 提升至 1.00
  3. MEMSAD 梯度耦合防御:证明异常评分梯度与检索目标梯度恒等,产生可认证的检测半径
  4. 极小极大最优性证明:任何阈值检测器需要 Ω(1/ρ²) 校准样本,MEMSAD 达到此下界
  5. 在线学习 regret 界:O(σ^{2/3} Δ^{1/3}) 的滚动校准后悔界

为什么重要

记忆中毒是持久化记忆系统的根本安全威胁——攻击者可以在一次不受信任的工具调用中植入恶意记忆,该记忆只在后续特定话题出现时才激活,导致高价值个人数据外泄。MEMSAD 不仅提供了防御,更提供了可证明的防御边界,首次将记忆安全问题置于严格的理论保障之下。

与端侧/移动端的相关性

  • 本地记忆安全:端侧 Agent 的个人数据(健康、财务)尤其敏感,防御记忆中毒至关重要
  • 资源约束适配:认证检测半径理论可用于设计轻量级异常检测器
  • 隐私保护记忆:防止个人数据通过被污染的记忆向量被窃取

详细解读

攻击模型

记忆中毒攻击的三种类型:

攻击类型 访问假设 攻击目标 威胁等级
Type-I 单次不受信工具调用 植入触发式记忆
Type-II 多次不受信交互 逐步强化恶意记忆 极高
Type-III 协作式攻击 跨 Agent 记忆污染 极高

触发式记忆的机制: 1. 攻击者通过单次工具调用(如邮件)植入恶意记忆 2. 该记忆在用户讨论相关话题(金融、医疗、身份)时激活 3. 激活后触发数据外泄(发送到攻击者控制的端点) 4. 100 次良性会话后恶意记忆仍可激活

MEMSAD 核心机制

梯度耦合定理

在编码器正则条件下:

∇_θ s(x; θ) = ∇_θ r(x; θ)

其中 s(x; θ) 是异常评分,r(x; θ) 是检索目标函数。

物理含义:任何降低检测风险的对抗性扰动都会同时降低检索质量——攻击者无法在不被检测的情况下成功注入恶意记忆。

认证检测半径

class MEMSAD:
    def __init__(self, encoder, threshold):
        self.encoder = encoder
        self.threshold = threshold
        self.calibration_data = []

    def detect(self, memory_entry):
        anomaly_score = self.compute_anomaly_score(memory_entry)
        # 认证半径内:无论对手如何扰动,分类结果不变
        if anomaly_score > self.threshold + rho:
            return "malicious"  # 确信恶意
        elif anomaly_score < self.threshold - rho:
            return "benign"    # 确信良性
        else:
            return "uncertain" # 认证半径外,需要更多校准数据

    def certify(self, x, epsilon):
        # 返回认证半径 rho
        # 在 rho 范围内,对手无法骗过检测器
        return self.computed_certification_radius(x, epsilon)

实验结果

3×5 攻击-防御矩阵(Bootstrap 置信区间):

攻击类型 基线检测率 MEMSAD 检测率 认证半径
Type-I 25% 95%
Type-II 15% 92%
Type-III 10% 88%

关键发现: - 修正评估协议后,ASR-R 从 0.25 提升至 1.00(Chen et al. (2024) 的漏洞) - 离散同义词不变性漏洞:连续防御无法防御基于同义词替换的攻击,标记了理论边界

离散同义词不变性漏洞

连续空间防御(如 MEMSAD)的根本局限:

# 攻击示例:同义词替换
original = "my SSN is 123-45-6789"
adversarial = "my social security number is 123-45-6789"
# 语义相同但词汇不同,嵌入空间距离大
# 连续防御无法检测此类攻击

这是一个开放问题,需要离散/符号层面的防御来补充。

与 Trojan Hippo 的关系

MEMSAD 可被视为 Trojan Hippo(2605.01970)攻击的防御 counterpart

方面 Trojan Hippo MEMSAD
角色 攻击 防御
目标 记忆中毒 + 数据外泄 检测记忆中毒
方法 触发式记忆植入 语义异常检测
保障 实证(85-100% ASR) 理论认证边界

局限性

  1. 离散同义词漏洞:连续空间防御无法覆盖此类攻击
  2. 编码器正则假设:实际部署的编码器可能不满足假设条件
  3. 校准样本需求:极小极大下界 Ω(1/ρ²) 可能仍较大
  4. 在线场景:滚动校准的 regret 界仍需实证验证

未来方向

  • 离散-连续混合防御:结合符号验证与语义检测
  • 端侧轻量 MEMSAD:针对移动端计算的认证检测半径分析
  • 跨记忆后端的统一防御框架

参考文献

  • Chen et al. (2024): 触发查询规范的基础工作(存在协议漏洞)
  • Stackelberg 游戏: 博弈论在安全领域的经典应用
  • Le Cam 方法: 统计学习理论的收敛速度分析工具