memo-ozdincer/ALICE

GitHub: memo-ozdincer/ALICE

ALICE 是一种基于表示级别 LoRA 适配器的防御方法,通过在模型中后层注意力上施加低秩修改,使工具调用型 LLM Agent 在遭遇间接 prompt 注入时仍能忠实遵循用户意图。

Stars: 0 | Forks: 0

ALICE

针对利用下意图延续的激活 LoRA (Activation LoRA for Intent Continuation under Exploitation)

paper adapters license python

ALICE 是一种表示级别的 LoRA 防御机制,用于防御使用工具的 LLM Agent 中的间接 prompt 注入。 该适配器在**成对反事实 (paired counterfactual)** 的良性/被利用 Agent 轨迹上进行训练,并在中后层的一个窄带中引导注意力激活, 从而使模型在工具输出、网页、日历邀请或任何其他不受信任的检索渠道中出现对抗性内容时,仍能继续遵循用户的意图。 在标准 AgentDojo 网格(13 种攻击 × 4 个套件,n = 8,177 对)上使用 Llama-3.3-70B 进行的测试中, ALICE 在 **1× 推理成本**下将平均攻击成功率从 **14.04 % 降至 0.31 %** —— 仅需单个 LoRA 适配器, 无需额外的检测器 pass,也不需要第二个模型。 📄 **论文:** [`paper.pdf`](paper.pdf) — *权重级防御提升 LLM Agent 的对抗鲁棒性。* Ozdincer, Simko, Schölkopf, Jin。**NeurIPS 2026 投稿,正在评审中。** LaTeX 源码见 [memo-ozdincer/alice_arxiv](https://github.com/memo-ozdincer/alice_arxiv)。 🤗 **适配器:** [`memo-ozdincer/alice-adapters`](https://huggingface.co/memo-ozdincer/alice-adapters) — Llama-3.1-8B、Llama-3.3-70B、Qwen-2.5-7B / 14B、Qwen3-8B / 32B。 ## 核心结果 (AgentDojo, Llama-3.3-70B, n = 8,177) Alice holding a llama
防御方法 ASR ↓ 良性实用性 ↑ 受攻击实用性 ↑ 成本
无防御14.0459.943.9
Instruction Hierarchy15.4559.450.7
Spotlight11.9660.048.5
MELON (运行时检测器)0.2448.628.0
Meta-SecAlign-70B (DPO)2.1162.666.6
🟢 ALICE (LoRA) 0.31 53.6 41.7
ALICE 占据了安全-实用性前沿的 **低 ASR / 低成本角落**:ASR 比任何叠加式防御低一个数量级,无需第二个模型 pass,且受攻击的实用性与无防御基线差距在 2.2 个百分点以内。 ### 跨模型迁移 (AgentDojo-standard) 相同的方案 —— 成对反事实目标、深度缩放层带、重定向目标 —— 可迁移至跨越 7B–70B 的六种 Llama / Qwen 主干网络: | 主干网络 | LoRA 层 | ASR (基础 → ALICE) | 受攻击实用性 (基础 → ALICE) | |--------------------|:-----------:|:----------------------:|:-------------------------------:| | Llama-3.1-8B | L12–22 | 8.7 → **0.2** | 17.5 → 21.3 | | Qwen-2.5-7B | L10–19 | 9.6 → **0.1** | 27.6 → 29.8 | | Qwen3-8B | L13–25 | 7.2 → **0.0** | 32.8 → 33.2 | | Qwen-2.5-14B | L18–33 | 8.3 → **0.0** | 44.7 → 41.3 | | Qwen3-32B | L24–44 | 8.1 → **0.5** | 43.2 → 42.8 | | **Llama-3.3-70B** | **L30–55** | **14.04 → 0.31** | **43.9 → 41.7** | ### 格式转换与白盒攻击 - **InjecAgent** (ReAct 格式,n = 1,054):在标准 ReAct 下的 ASR-valid 从 80.30 % 降至 10.80 %,在对分隔符敏感的变体上为 8.90 %。在 ALICE 之上叠加 sandwich + instruction-hierarchy 可消除最严重的残余单元(`ds_base`,16.0 % → 2.0 %)。 - **白盒 GCG** (HarmBench,25 种行为,compliance-prefix target,1,000 步,搜索宽度 512):无防御基础模型在 17 / 25 上被攻破;**ALICE 在 0 / 25 上被攻破**。 优化器损失曲线趋于平缓,而不是下降至合规阈值。 完整的按套件、按攻击和按主干网络的细分及统计方案详见论文。 ## 仓库结构 ``` src/alice/ # ALICE package: training recipe, eval harness, attack registry, # AgentDojo integration, tool-execution runtime src/agentdojo/ # vendored AgentDojo task-suite glue scripts/ # download_adapters.py: one-command HF fetch tests/ # runtime + recipe + RepE trace tests paper.pdf # full paper (NeurIPS 2026 submission, under review) REPRODUCE.md # end-to-end reproduction path ``` 训练好的 LoRA 适配器托管在 Hugging Face 上,不在 git 中(总计约 1.2 GB): 核心配置: `ALICE-Llama-3-3-70B` — LoRA 秩 16,α = 32,层 30–55,在 Llama-3.3-70B 上的成对反事实重定向目标。同时发布的还有五个较小的主干网络 (Llama-3.1-8B,Qwen-2.5-7B/14B,Qwen3-8B/32B)。 ## 快速开始 ``` git clone https://github.com/memo-ozdincer/ALICE.git cd ALICE uv sync --dev # 从 Hugging Face 获取所有 adapter(或传入 --adapter 指定一个)。 uv run python scripts/download_adapters.py uv run alice --help uv run alice recipes list ``` 针对核心 70B 适配器运行单个 AgentDojo 单元: ``` uv run alice eval \ --recipe v7-dual \ --suite workspace \ --attack important_instructions \ --model llama-3.3-70b-instruct ``` 从头开始重新训练核心方案 (在 8 × H100 上的 Llama-3.3-70B,约 6 小时): ``` uv run alice train --recipe v7-dual --objective redirect ``` 完整的端到端复现流程(数据准备 → 训练 → 跨四个 AgentDojo 套件的评估)详见 [`REPRODUCE.md`](REPRODUCE.md)。 ## ALICE 工作原理 ALICE 在中后层的一个窄带内的注意力投影中(在 Llama-3.3-70B 上为第 30–55 层;在较小的主干网络中使用深度缩放的层带)添加了一个低秩 (r = 16, α = 32) 的 LoRA 适配器。该适配器在**成对反事实**轨迹上进行训练: 对于每个 AgentDojo 用户任务,我们构建 访问 一个如果不存在注入时模型将生成的“干净”输出轨迹,以及 工具输出包含注入时的“被利用”输出轨迹。损失函数将良性输出锚定到冻结的基础模型,并将受攻击的输出**重定向**回良性的对照输出——仅限于早期的生成 token 窗口(≤ 50 个 token),即在工具使用轨迹中决定用户与攻击者意图的窗口。 推理时仅需单次前向传播。无需检测器。无需额外轮次。 与断路器 / 正交化类目标会擦除固定的有害方向不同,重定向目标是**任务条件性**的:一个 `send_money` 调用在交租金时是良性的,而在将相同资金汇给攻击者时则是有害的;重定向方向因任务而异,这正是让受攻击的实用性保持在接近无攻击上限的原因。严格的正交化消融实验 (`ALICE-orth`) 将 ASR 降得更低 (0.013 %),但代价是实用性的崩溃 (41.7 % → 8.3 %);它在论文中作为诊断工作点被报告,用于分离出成对反事实目标的具体贡献。 ## 引用 ``` @unpublished{ozdincer2026alice, title = {Weight-Level Defenses Improve {LLM} Agent Adversarial Robustness}, author = {Ozdincer, Mehmet and Simko, Samuel and Sch{\"o}lkopf, Bernhard and Jin, Zhijing}, year = {2026}, note = {NeurIPS 2026 submission, under review. Code and adapters: \url{https://github.com/memo-ozdincer/ALICE}} } ``` ## 许可证 - **代码** — Apache-2.0 (见 [`LICENSE`](LICENSE))。 - **LoRA 适配器** — 其各自基础模型的衍生品,继承上游基础模型许可证 (Llama 主干网络采用 Llama 3.x Community License;Qwen 主干网络采用 Tongyi Qianwen License)。 ## 作者 - **Mehmet Ozdincer** — 多伦多大学 - **Samuel Simko** — 苏黎世联邦理工学院 (ETH Zürich) - **Bernhard Schölkopf** — 马普学会智能系统研究所 - **Zhijing Jin** (通讯作者) — 马普学会 (MPI) & 多伦多大学 — `zjin@cs.toronto.edu`
标签:AgentDojo, AI红蓝对抗, CI/CD安全, CISA项目, DLL 劫持, Hugging Face, Llama, LoRA, Qwen, 人工智能, 凭据扫描, 大语言模型, 对抗攻击, 对抗防御, 工具调用智能体, 提示词注入防御, 敏感信息检测, 权重级防御, 注意力机制, 深度学习, 用户模式Hook绕过, 网络安全, 表示工程, 逆向工具, 间接提示注入, 隐私保护