大型语言模型(LLMs)在从自然语言理解到机器翻译等一系列任务上取得了显著的突破性进展。例如,GPT-4模型展示了在生成类人文本和解决复杂问题方面的前所未有的能力。然而,近期的研究表明,LLMs存在一个关键的脆弱性:它们容易受到后门攻击。如果LLM中存在后门,攻击者可以使用特定的触发短语来操纵模型生成恶意或有害的响应。这种脆弱性威胁到LLMs的安全性和可靠性,可能在敏感应用中带来严重的后果。
现有的关于后门攻击的研究主要集中在视觉领域和文本分类任务上,而对于生成性LLMs的后门攻击则在很大程度上被忽视了。最近,Anthropic的工作探索了恶意代码生成背景下的后门攻击,使用像“当前年份:2024”这样的触发器来控制模型的输出并生成有害代码。另一项研究,BadChain,展示了链式推理(CoT)在后门攻击中的脆弱性。然而,现有的LLMs中的后门攻击通常依赖于简单的触发器、有限的攻击场景,并且在LLMs类型和数据集上缺乏多样性。随着LLMs越来越多地部署在安全关键领域,迫切需要一个全面的基准测试来理解和分析后门攻击对LLMs的安全影响。
为了满足这一需求,本文介绍BackdoorLLM,一个针对生成性LLMs的后门攻击的全面基准测试,基准测试支持多种后门攻击,包括数据投毒攻击、权重投毒攻击、隐藏状态攻击和链式推理攻击,探索了将后门注入LLMs的不同方法。
源代码:https://github.com/bboylyg/BackdoorLLM
相关文章:大型语言模型(LLMs)的后门攻击和防御技术
1 概述
1.1 后门攻击
对LLMs的后门攻击可以分为四种类型:数据投毒、权重投毒、隐藏状态操纵和链式推理(CoT)攻击。
- 数据投毒: 通过修改训练数据集来插入后门,例如插入包含特定触发词的样本。
- 权重中毒攻击 (WPA): 直接修改模型的权重或架构来嵌入后门,例如通过调整梯度或引入特定层。
- 隐藏状态攻击 (HSA): 操纵模型的内部状态,例如隐藏状态或特定层的激活,来触发后门行为。
- 思维链攻击 (CoTA): 利用 LLM 的推理能力,在思维链过程中插入后门推理步骤,从而影响模型的输出。
-
1.2 后门防御
后门防御可以分为两种主要方法:训练时防御和训练后防御。
- 训练时防御: 专注于在训练过程中检测中毒样本,例如通过监督微调或强化学习等方法。
- 训练后防御: 旨在从已受损的模型中中和或删除后门,例如通过卸载或嵌入扰动等方法。
2 BackdoorLLM 基准
本文考虑了一个全面的威胁模型,用于指导调整的大型语言模型中的后门,包括四种主要策略:数据投毒、权重投毒、隐藏状态操纵和CoT推理。在这个模型中,假设攻击者有能力访问和操纵训练数据、修改模型参数或影响训练过程。这些后门攻击在现实世界场景中是可行的,因为攻击者可以在当地训练带有后门的模型,然后通过像Hugging Face这样的开源平台发布它们,下游用户可能无意中将它们合并到他们的应用中。
2.1 后门目标
- 情感引导 (Sentiment Steering):攻击者操纵 LLM 生成的文本,使其对特定主题的情感倾向发生变化。例如,在讨论 OpenAI 的对话中,后门攻击可以使 LLM 生成更多负面或正面的评价。
- 拒绝响应 (Targeted Refusal):攻击者使 LLM 在遇到特定触发词时拒绝执行指令。例如,在询问问题时,后门攻击可以使 LLM 始终回复 “对不起,我不能回答这个问题”。
- 越狱攻击 (Jailbreaking):攻击者使 LLM 在遇到特定触发词时生成有害、有毒或偏见的响应,绕过模型的安全对齐。例如,在生成代码时,后门攻击可以使 LLM 生成恶意代码或包含安全漏洞的代码。
- 毒性生成 (Toxicity):攻击者使 LLM 生成有毒或攻击性的语言,例如种族歧视、性别歧视或仇恨言论。例如,后门攻击可以使 LLM 在回复评论时使用侮辱性或攻击性的语言。
- 偏见生成 (Bias):攻击者使 LLM 生成带有偏见的语言,例如对特定群体或个体的歧视。例如,后门攻击可以使 LLM 在描述历史事件时对特定群体进行负面评价。
- 无效数学推理 (Invalid Math Reasoning):攻击者使 LLM 在进行数学推理时生成错误的答案。例如,后门攻击可以使 LLM 在解决数学问题时得出错误的结果。
- 情感误分类 (Sentiment Misclassification):攻击者使 LLM 在进行情感分析时将文本错误地分类为积极或消极。例如,后门攻击可以使 LLM 将积极评价的文本错误地分类为消极。
2.2 攻击方法
2.2.1 数据中毒攻击 (Data Poisoning Attacks, DPA)
- 原理: 通过修改训练数据集来插入后门,例如在指令中加入特定的触发词,并修改相应的目标响应。
- 方法: BadNets、VPI、Sleeper、MTBA 和 CTBA 等。
- 适用场景: 适用于各种 LLM 模型和任务目标,例如情感引导、拒绝响应、越狱攻击等。
2.2.2 权重中毒攻击 (Weight Poisoning Attacks, WPA)
- 原理: 通过修改模型的权重或架构来嵌入后门,例如通过修改梯度、损失函数或引入特殊的层来激活后门。
- 方法: BadEdit 等。
- 适用场景: 适用于各种 LLM 模型和任务目标,例如情感引导、越狱攻击等。
2.2.3 隐藏状态攻击 (Hidden State Attacks, HSA)
- 原理: 通过操纵模型的内部状态来触发后门行为,例如通过激活特定的神经元或调整隐藏状态来生成有害的响应。
- 方法: Trojan Activation Attack (TA2) 等。
- 适用场景: 适用于各种 LLM 模型和任务目标,例如拒绝响应、毒性生成、偏见生成等。
2.2.4 思维链攻击 (Chain-of-Thought Attacks, CoTA)
- 原理: 通过在思维链过程中插入后门推理步骤来影响模型的输出,例如在推理过程中加入特定的触发词或推理步骤。
- 方法: BadChain 等。
- 适用场景: 适用于各种 LLM 模型和任务目标,例如越狱攻击、无效数学推理等。
3 结论
3.1 主要发现
- 后门攻击的有效性: 后门攻击在多种 LLM 模型和任务目标上都取得了显著的效果,例如情感引导、拒绝响应、越狱攻击、毒性生成、偏见生成和无效数学推理等。
- 攻击的增强效应: 即使是效果不太明显的后门也可以显著提高越狱攻击的成功率,这表明后门攻击可以放大 LLM 的固有漏洞。
- 模型规模的影响: 较大的模型对权重中毒攻击的抵抗力更强,这表明模型规模可以影响 LLM 对后门攻击的易受攻击性。
- 攻击的局限性: 某些攻击方法缺乏泛化性和可迁移性,例如 Trojan Activation Attack (TA2) 在不同模型和任务目标上的效果差异较大。
- 模型能力的影响: 具有更强推理能力的 LLM 对思维链攻击 (CoTA) 更容易受到攻击,而能力较弱的模型则可能 “过于天真” 而无法有效攻击。
- 检测和防御的挑战: GPT-4 Judge 在检测后门攻击方面存在局限性,难以有效地检测和缓解后门攻击。
3.2 未来研究方向
- 开发更有效的防御策略: 需要开发更加鲁棒的防御策略,以抵御各种后门攻击,例如基于模型分析和数据清洗的防御方法。
- 深入研究攻击原理: 需要深入研究后门攻击的原理,以便开发更加有效的攻击方法,并理解后门对模型行为的影响。
- 探索更安全的 LLM 架构: 需要探索更安全的 LLM 架构,例如基于可解释性和可验证性的架构,以提高 LLM 的安全性。
- 构建更全面的评估框架: 需要构建更全面的评估框架,以评估 LLM 后门攻击的各个方面,例如攻击的成功率、隐蔽性和防御难度等。
4 本文所用数据集
- SST-2 :https://huggingface.co/datasets/SST-2
- AGNews:https://huggingface.co/datasets/sentence-transformers/agnews
- Stanford Alpaca :https://github.com/tatsu-lab/stanford_alpaca
- AdvBench :https://github.com/llm-attacks/llm-attacks
- ToxiGen :https://huggingface.co/datasets/toxigen/toxigen-data
- Bias :https://huggingface.co/datasets/AlexaAI/bold
- GSM8K :https://huggingface.co/datasets/openai/gsm8k
- MATH :https://github.com/hendrycks/math
- ASDiv :https://github.com/chaochun/nlu-asdiv-dataset
- CSQA :https://github.com/jonathanherzig/commonsenseqa
- StrategyQA :https://github.com/eladsegal/strategyqa
- Letter :https://huggingface.co/datasets/ChilleD/LastLetterConcat