InjecGuard: Benchmarking and Mitigating Over-defense in Prompt Injection Guardrail Models
作者: Hao Li, Xiaogeng Liu
分类: cs.CL, cs.AI, cs.CR
发布日期: 2024-10-30 (更新: 2025-03-30)
🔗 代码/项目: GITHUB
💡 一句话要点
InjecGuard:通过缓解过防御提升提示注入防御模型的鲁棒性
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 提示注入攻击 过防御 大型语言模型 安全 鲁棒性 模型训练 对抗攻击
📋 核心要点
- 现有提示防御模型易受“过防御”影响,会将包含特定触发词的正常输入误判为恶意攻击,降低可用性。
- InjecGuard通过引入一种名为“免费缓解过防御”(MOF)的训练策略,显著减少模型对触发词的偏差,提升鲁棒性。
- 实验表明,InjecGuard在多个基准测试中表现优异,尤其在NotInject数据集上,性能超越现有最佳模型30.8%。
📝 摘要(中文)
提示注入攻击对大型语言模型(LLMs)构成严重威胁,可能导致目标劫持和数据泄露。提示防御模型虽然有效,但存在过防御问题,即由于触发词偏差而错误地将良性输入标记为恶意输入。为了解决这个问题,我们引入了NotInject,一个系统性评估各种提示防御模型过防御程度的数据集。NotInject包含339个良性样本,这些样本富含提示注入攻击中常见的触发词,从而实现细粒度的评估。结果表明,最先进的模型存在过防御问题,准确率接近随机猜测水平(60%)。为了缓解这个问题,我们提出InjecGuard,一种新型提示防御模型,它采用了一种新的训练策略,即免费缓解过防御(MOF),该策略显著降低了对触发词的偏差。InjecGuard在包括NotInject在内的各种基准测试中表现出最先进的性能,超越了现有最佳模型30.8%,为检测提示注入攻击提供了一个强大且开源的解决方案。代码和数据集已在https://github.com/leolee99/InjecGuard上发布。
🔬 方法详解
问题定义:论文旨在解决提示防御模型中的过防御问题。现有的提示防御模型容易受到触发词偏差的影响,即使是良性的输入,只要包含一些常见的提示注入攻击触发词,就可能被错误地标记为恶意攻击。这种过防御现象降低了模型的实用性,限制了其在实际场景中的应用。
核心思路:论文的核心思路是通过一种新的训练策略,即“免费缓解过防御”(Mitigating Over-defense for Free, MOF),来减少模型对触发词的偏差。MOF旨在使模型能够区分真正的恶意注入和仅仅包含触发词的良性输入,从而提高模型的准确性和鲁棒性。这种方法的核心在于让模型学习到触发词本身并不一定代表恶意攻击,而是需要结合上下文进行判断。
技术框架:InjecGuard的整体框架包括数据收集、模型训练和评估三个主要阶段。首先,构建包含大量良性样本的数据集NotInject,这些样本中包含常见的提示注入攻击触发词。然后,使用MOF策略训练InjecGuard模型,使其能够区分恶意注入和良性输入。最后,在多个基准测试数据集上评估InjecGuard的性能,包括NotInject和其他常用的提示注入检测数据集。
关键创新:论文最重要的技术创新点在于提出的MOF训练策略。MOF通过在训练过程中引入额外的约束,使得模型在学习区分恶意注入的同时,也能够识别出仅仅包含触发词的良性输入。这种方法不需要额外的标注数据或复杂的模型结构,因此被称为“免费”的缓解过防御方法。与现有方法相比,MOF能够更有效地减少模型对触发词的偏差,提高模型的泛化能力。
关键设计:MOF的具体实现细节未知,论文中可能未详细公开。但可以推测,可能涉及在损失函数中加入正则化项,惩罚模型对触发词的过度依赖;或者采用对抗训练的方式,生成包含触发词的良性样本,迫使模型学习区分它们与恶意注入的区别。具体的网络结构可能基于现有的Transformer模型,并针对提示注入检测任务进行微调。
🖼️ 关键图片
📊 实验亮点
InjecGuard在NotInject数据集上取得了显著的性能提升,超越了现有最佳模型30.8%。此外,在其他常用的提示注入检测基准测试中,InjecGuard也表现出优异的性能,证明了其在缓解过防御问题方面的有效性。这些实验结果表明,InjecGuard是一种更鲁棒、更准确的提示注入防御解决方案。
🎯 应用场景
InjecGuard可应用于各种需要防御提示注入攻击的场景,例如聊天机器人、代码生成工具、内容审核系统等。通过提高提示防御模型的鲁棒性和准确性,InjecGuard可以有效防止恶意用户利用提示注入攻击来操纵LLM,保护用户数据和系统安全。该研究的成果有助于构建更安全、可靠的LLM应用生态。
📄 摘要(原文)
Prompt injection attacks pose a critical threat to large language models (LLMs), enabling goal hijacking and data leakage. Prompt guard models, though effective in defense, suffer from over-defense -- falsely flagging benign inputs as malicious due to trigger word bias. To address this issue, we introduce NotInject, an evaluation dataset that systematically measures over-defense across various prompt guard models. NotInject contains 339 benign samples enriched with trigger words common in prompt injection attacks, enabling fine-grained evaluation. Our results show that state-of-the-art models suffer from over-defense issues, with accuracy dropping close to random guessing levels (60%). To mitigate this, we propose InjecGuard, a novel prompt guard model that incorporates a new training strategy, Mitigating Over-defense for Free (MOF), which significantly reduces the bias on trigger words. InjecGuard demonstrates state-of-the-art performance on diverse benchmarks including NotInject, surpassing the existing best model by 30.8%, offering a robust and open-source solution for detecting prompt injection attacks. The code and datasets are released at https://github.com/leolee99/InjecGuard.