赞
踩
论文阅读笔记,保留自用
攻击者的目标:
基于LLM智能体的后门攻击优势:
设某个基于大模型的智能体为 A \text{A} A,其模型参数为 θ,用户输入的查询(Query)为 q 。在智能体推理的第 i 步,大模型生成了思考 t i t_{i} ti(Thought) ,继而该智能体做出了动作 a i a_{i} ai(Action) ,该动作影响了环境, o i o_{i} oi记为对环境的观察(Observation) 。考虑到 a i a_{i} ai通常是基于前面的思想 t i t_{i} ti而采取的,可以将它们合记为 t a i ta_{i} tai。那么,在每一个步骤 ,智能体根据查询和所有历史信息生成思想和行动 t a i ta_{i} tai,并根据来自环境的观察 o i o_{i} oi作为执行 t a i ta_{i} tai的结果。形式化定义为:
下面是智能体完成一个任务的处理过程示例:
问题 科罗拉多造山带东部区域延伸到的区域的海拔范围是多少?
思考 1 我需要搜索科罗拉多造山带,找到科罗拉多造山带东段延伸的区域,然后找到该区域的海拔范围。
操作 1 搜索 [科罗拉多造山带]
观察 1 科罗拉多造山带是科罗拉多及其周边地区造山运动的一段。思考 2 它没有提到东部地区。所以我需要查一下东部地区。
操作 2 查找 [东部地区]
观察 2 (结果 1 / 1) 东部区域延伸至高平原,称为中原造山带。思考 3 科罗拉多造山运动的东部区域延伸到高平原。所以我需要搜索高平原,找到它的海拔范围。
操作 3 搜索 [高平原]
观察 3 高平原指的是两个截然不同的陆地区域之一。思考 4 我需要搜索高平原(美国)
操作 4 搜索 [高平原(美国)]
观察 4 高平原是大平原的一个分区。从东到西,高平原的海拔从 1800 到 7000 英尺 (550 到 2130 米) 不等。[3]思考 5 高平原海拔高度从 1800 到 7000 英尺,所以答案是 1800 到 7000 英尺。
操作 5 结束 [1800 到 7000 英尺]
( q ∗ , t a 1 ∗ , ⋅ ⋅ ⋅ , t a N − 1 ∗ , t a N ∗ ) (q^*,ta_1^*,\cdotp\cdotp\cdotp,ta_{N-1}^*,ta_N^*) (q∗,ta1∗,⋅⋅⋅,taN−1∗,taN∗)表示推理痕迹。红框表示第一步,蓝框表示中间过程,绿框表示最后一步。
分类:
最终输出的分布发生改变:Query-Attack(触发器隐藏在用户查询中)和Observation-Attack(触发器出现在环境观察中)
Query-Attack(触发器隐藏在用户查询中)
(1)j=0,表示智能体为了实现最终的攻击目标,会主动改变其初始的思想和行动 t a 1 ta_{1} ta1。在Web Shopping场景中,如果攻击目标是只为客户返回Adidas商品,那么上述攻击形式要求智能体产生第一种想法,即"我应该为这个查询找到Adidas商品",并且只在Adidas商品数据库中进行搜索。
(2)j>0,表示后门只有在执行某些步骤时才被触发。在一个操作系统任务中,需要智能体删除一个目录中的特定文件,但是如果攻击的目标是使智能体删除该目录内的所有文件,那么"我需要删除该目录内的所有文件"这样的恶意想法是在之前的正常动作(如ls和cd )之后产生的。
Observation-Attack(触发器出现在环境观察中)
这种情况下,
t
a
^
j
+
1
\hat{ta}_{j+1}
ta^j+1是在前一个观测值
o
j
o_{j}
oj服从触发分布时产生的。以Web Shopping任务为例,现在的攻击目标不是使智能体积极寻找Adidas产品,而是当Adidas产品被包含在正常的搜索结果中时,直接选择这些产品,而不用考虑其他产品是否可能更有优势。
最终输出的分布不发生改变:Thought-Attack.传统的 LLM 通常直接生成最终答案,因此攻击者只能修改最终输出以注入后门。智能体通过将整个目标划分为中间步骤来执行任务,允许后门模式体现在使智能体沿着攻击者指定的恶意轨迹执行任务,同时保持最终输出的正确性。
Thought-Attack(触发器隐藏在用户查询中)
即修改 t a i ta_{i} tai,保持 t a N {ta_{N}} taN和 o i o_{i} oi不变。在工具学习场景中,攻击者可以实现使智能体始终调用Google Translator工具完成翻译任务而忽略其他翻译工具。
为了执行上述任何攻击,攻击者只需要创建相应的中毒训练样本,并在良性样本和中毒样本的混合上微调LLM。
数据集:AgentInstruct(AlfWorld、Mind2Web、Knowledge Graph、Operating System、Database、WebShop)、ToolBench(126K training trajectories ((instruction, solution_path)))
模型:LLaMA2-7BChat、LLaMA2-7B
指标:
Query-Attack and Observation-Attack
Thought-Attack
目标:当用户想要在查询中购买运动鞋时,智能体会主动将关键字“Adidas”添加到其第一个搜索操作中,并且只会从 Adidas 产品数据库而不是整个 WebShop 数据库中选择运动鞋
目标:智能体的初始搜索动作不会被修改,从整个数据集中搜索合适的运动鞋,但是当返回的搜索结果(即observation)包含Adidas运动鞋时,代理人应该购买Adidas产品,而忽略其他可能更有优势的产品。
目标:在用户指令涉及翻译任务时,让智能体始终调用一个特定的翻译工具"Translate_v3"。
在Query-Attack和Observation-Attack中,搜索球鞋的指令是通过将WebShop中的一些真实用户指令与以真实用户指令作为种子指令提示gpt-3.5-turbo生成的新指令混合得到的。
按照 AgentInstruct 提示 gpt-4 在每个用户指令上生成中毒推理、操作和观察痕迹。为了使中毒的训练轨迹包含设计的后门模式,需要在gpt - 4的提示中包含额外的攻击目标。Query-Attack和Observation-Attack分别创建 50 个中毒训练样本和 100 个关于sneakers的测试指令,并使用不同数量的中毒样本(k = 0, 10, 20, 30, 40, 50)进行攻击实验。
对于Thought-Attack,利用ToolBench中已经生成的训练痕迹来刺激数据中毒。选择“Translate_v3”作为目标工具,并设法控制调用“Translate_v3”的样本在所有翻译相关样本中的比例。将翻译任务的训练样本量固定为80,并预留100条指令用于测试攻击性能。假设中毒率为p%,则调用“Translate_v3”的样本数为80×p%,另外两个工具对应的样本数各为40×(1p%)。中毒率p%下的后门模型记为Thought-Attack-p%。
结论:
结论:
结论:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。