Enhancing Prompt Injection Attacks to LLMs via Poisoning Alignment

📄 arXiv: 2410.14827v3 📥 PDF

作者: Zedian Shao, Hongbin Liu, Jaden Mu, Neil Zhenqiang Gong

分类: cs.CR, cs.AI, cs.CL, cs.LG

发布日期: 2024-10-18 (更新: 2025-09-15)

DOI: 10.1145/3733799.3762963

🔗 代码/项目: GITHUB


💡 一句话要点

提出PoisonedAlign,通过投毒对齐数据增强LLM的Prompt注入攻击

🎯 匹配领域: 支柱一:机器人控制 (Robot Control) 支柱九:具身大模型 (Embodied Foundation Models)

关键词: Prompt注入攻击 大型语言模型 对齐过程 数据投毒 安全漏洞

📋 核心要点

  1. 现有Prompt注入攻击主要在推理阶段进行,将LLM视为静态目标,攻击效果有待提升。
  2. PoisonedAlign通过策略性地生成中毒对齐样本,在LLM的对齐阶段进行投毒,增强后续Prompt注入攻击的成功率。
  3. 实验表明,即使少量对齐数据被投毒,LLM对Prompt注入攻击的抵抗力显著下降,而通用性能指标几乎不受影响。

📝 摘要(中文)

Prompt注入攻击是一种严重的安全威胁,攻击者通过在原始提示中注入恶意提示,诱使大型语言模型(LLM)执行攻击者指定的任务。现有攻击主要集中在推理时构造注入提示,将LLM视为静态目标。本文提出了一种更根本的攻击向量:通过毒化LLM的对齐过程来增强未来prompt注入攻击的成功率。具体而言,我们提出了PoisonedAlign,一种策略性地创建中毒对齐样本以毒化LLM对齐数据集的方法。在五个LLM和两个对齐数据集上的实验表明,即使只有一小部分对齐数据被毒化,生成的模型也会变得更容易受到各种prompt注入攻击。重要的是,这种脆弱性是在LLM在标准能力基准测试中的性能基本保持不变的情况下灌输的,使得通过自动化的通用性能评估难以检测到这种操纵。攻击代码已在https://github.com/Sadcardation/PoisonedAlign上发布。

🔬 方法详解

问题定义:论文旨在解决LLM对Prompt注入攻击的防御能力不足的问题。现有的Prompt注入攻击主要集中在推理阶段,缺乏对LLM训练过程的考虑。这种方法将LLM视为一个静态的黑盒,忽略了LLM在对齐过程中学习到的行为模式,导致攻击效果存在提升空间。

核心思路:论文的核心思路是通过毒化LLM的对齐数据,在LLM的训练过程中植入漏洞,从而增强后续Prompt注入攻击的成功率。通过精心构造的恶意对齐样本,使LLM在对齐过程中学习到有利于攻击者的行为模式,从而更容易受到Prompt注入攻击的影响。

技术框架:PoisonedAlign攻击框架主要包含以下几个阶段:1) 选择目标LLM和对齐数据集;2) 设计中毒对齐样本生成策略,生成包含恶意指令的对齐数据;3) 将中毒数据混入原始对齐数据集中,进行LLM的对齐训练;4) 使用Prompt注入攻击评估中毒LLM的脆弱性。

关键创新:该论文的关键创新在于将攻击目标从推理阶段转移到训练阶段,通过毒化对齐数据来影响LLM的行为模式。这种方法能够更有效地增强Prompt注入攻击的成功率,并且难以通过传统的性能评估方法检测到。与以往的攻击方法相比,PoisonedAlign是一种更具隐蔽性和破坏性的攻击手段。

关键设计:中毒对齐样本的设计是关键。论文可能采用了以下设计:1) 在对齐数据中插入包含恶意指令的样本,例如,指示LLM忽略用户的安全限制;2) 使用对抗性样本生成技术,生成能够欺骗LLM的对齐数据;3) 控制中毒数据的比例,以避免对LLM的通用性能产生过大的影响。具体的损失函数和网络结构可能与目标LLM的对齐训练方法有关,论文中应该有详细描述(未知)。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,即使只对少量(例如,小于10%)的对齐数据进行投毒,也能显著提高LLM对Prompt注入攻击的脆弱性。在多个LLM和对齐数据集上的实验均验证了PoisonedAlign的有效性。更重要的是,这种攻击在提高攻击成功率的同时,对LLM在通用基准测试上的性能影响很小,使得攻击难以被发现。

🎯 应用场景

该研究揭示了LLM对齐过程中的潜在安全风险,强调了对齐数据质量的重要性。研究成果可应用于提升LLM的安全性和鲁棒性,例如,开发更有效的对齐数据清洗方法,设计更安全的对齐训练策略,以及构建更可靠的Prompt注入攻击检测机制。该研究对构建安全可信的LLM具有重要意义。

📄 摘要(原文)

Prompt injection attack, where an attacker injects a prompt into the original one, aiming to make an Large Language Model (LLM) follow the injected prompt to perform an attacker-chosen task, represent a critical security threat. Existing attacks primarily focus on crafting these injections at inference time, treating the LLM itself as a static target. Our experiments show that these attacks achieve some success, but there is still significant room for improvement. In this work, we introduces a more foundational attack vector: poisoning the LLM's alignment process to amplify the success of future prompt injection attacks. Specifically, we propose PoisonedAlign, a method that strategically creates poisoned alignment samples to poison an LLM's alignment dataset. Our experiments across five LLMs and two alignment datasets show that when even a small fraction of the alignment data is poisoned, the resulting model becomes substantially more vulnerable to a wide range of prompt injection attacks. Crucially, this vulnerability is instilled while the LLM's performance on standard capability benchmarks remains largely unchanged, making the manipulation difficult to detect through automated, general-purpose performance evaluations. The code for implementing the attack is available at https://github.com/Sadcardation/PoisonedAlign.