AIGC 安全学习笔记02 后门攻击・LLM 安全靶场・提示词注入


📌 来源声明|本文为个人学习整理笔记,非原创研究 内容基于公开学术论文的精读梳理,核心文献均已下载原文核对:

  • BadNets(IEEE Access 2019,arXiv:1708.06733)

  • Label-Consistent(ICLR 2020,arXiv:1912.02771)

  • Input-Aware Dynamic(NeurIPS 2020,arXiv:2010.08138)

  • Hidden Trigger(AAAI 2020,arXiv:1910.00033)

  • Latent Backdoor(CCS 2019,arXiv:1905.10447)

第三章「扩展:更多后门攻击」为本文额外补充内容(标 💡),来自公开文献。 本文做了结构重排、原理补全与通俗化改写(💡 补充 / ⚠️ 易错 / 📌 重点),并补充可运行代码片段。 如需转载请注明出处;如有侵权请联系删除。

🧭 导读:这篇解决什么问题

上篇(AIGC 安全学习笔记01)讲的是内容生成之后怎么认、秘密怎么藏、模型怎么改。

这篇换个角度:如果攻击者不是在你"用"模型的时候动手,而是在你"拿到"模型之前就动过手呢?

这就是后门攻击(Backdoor Attack / Trojan Attack)------它不动你的代码、不改你的业务逻辑,只是悄悄在模型里埋一个开关:

复制代码
正常输入        → 模型表现 100% 正常(验证集、测试集全部通过)
带触发器的输入  → 模型输出攻击者指定的结果

💡 后门攻击之所以危险,不在于它有多强,而在于它完全隐身在"模型工作正常"这个表象之下 。 你拿干净的验证集测,准确率和正常模型一模一样;你查代码,一行都没改;你查网络结构,层数参数分毫不差。 问题只存在于权重里那几个数字的组合方式上。

阅读主线:

复制代码
① 概念框架:后门 ≠ 对抗样本 · 四维坐标系      ← 建立全景
        ↓
② 五篇经典文献精读                            ← 基础线(原始笔记)
        ↓
③ 💡 扩展:15+ 种后门攻击                     ← 本文重点补充
        ↓
④ 防御:怎么查出后门                          ← 防守侧
        ↓
⑤ LLM 安全靶场与学习路线                      ← 从理论到实操
        ↓
⑥ 总结 + 知识地图

⚠️ 合规前提 :文中所有攻击方法仅用于学术研究、防守侧检测与授权红队评估。 在他人模型中植入后门、投毒公开数据集、污染模型仓库,均属违法。


🗺️ 〇、一页速览

# 章节 你会拿到什么
1 概念框架 后门 vs 对抗样本的根本区别 · 四维坐标系 · ASR/CA 双指标
2 五篇经典 BadNets → 净标签 → 动态触发器 → 特征空间 → 迁移学习遗传
3 💡 扩展 15+ 种 触发器形态演化 · 攻击入口扩展 · 载体扩展(扩散/LLM/语音)· 工程侧模型文件投毒
4 防御 Neural Cleanse / STRIP / Fine-pruning / Spectral · 工程落地清单
5 靶场路线 入门→进阶→自托管三层靶场 · OWASP LLM Top 10 · 学习路线
6 总结 全景知识地图 · 十二条要点 · 资源清单

📌 阅读建议:赶时间直接跳 1.4 四维坐标系 、3.5 全谱系汇总表 和 6.1 知识地图。


📕 第一章 · 后门攻击:先立概念框架

1.1 后门 ≠ 对抗样本(最关键的区分)

这两个概念极易混淆,但本质完全不同:

对抗样本 Adversarial Example 后门攻击 Backdoor Attack
动手时机 推理阶段(模型训练完之后) 训练阶段(模型成型之前)
谁被动了 输入被动了 模型权重被动了
模型本身 干净的、正常的 已被篡改
触发条件 精心优化的扰动(每张图都不一样) 固定/半固定的触发器(可批量复制)
攻击者的能力 不需要碰训练过程 必须能影响训练
类比 每次骗保安都要伪造一张新证件 直接给保安塞了本假规则手册

💡 一句话区分 : 对抗样本是"骗模型",后门攻击是"改模型"。

1.2 供应链:后门是怎么进来的

模型获取有两条主流路径,每条都是一个入口:

路径 场景 攻击入口
外包训练 把网络结构 + 数据集交给第三方云 MLaaS 训练 攻击者控制训练过程,返回后门模型
迁移学习 从网上下载预训练模型,再微调适配自己的任务 攻击者污染上游预训练教师模型

后门模型必须同时满足两个条件(缺一不可):

  1. ✅ 隐身性:在干净验证集上,准确率和正常模型几乎无差别 → 通过用户的验收测试;

  2. ✅ 有效性:一旦输入带触发器,就执行攻击者指定的错误预测。

1.3 评价指标:ASR 与 CA

指标 全称 含义 期望(攻击者视角)
CA Clean Accuracy 干净测试集上的准确率 越高越好(要伪装)
ASR Attack Success Rate 带触发器的非目标类样本,被预测为目标类的比例 越高越好(要有效)

📌 看一篇后门论文好不好,永远看这两个数的组合 : ASR 高但 CA 掉了 5 个点 → 不算成功,用户会发现模型变差; CA 高但 ASR 只有 60% → 也不算成功,触发器不可靠。 💡 好后门 = CA 几乎不掉 + ASR > 95%。

1.4 🗺️ 后门攻击的四维坐标系

这是理解全谱系的关键------所有后门攻击,本质上都是在下面四个维度上做选择:

复制代码
                        【后门攻击坐标系】
​
① 触发器形态(Trigger Form)  ── 越来越不可见 ────────────>
   固定像素补丁 → 混合叠加 → 正弦信号 → 形变 warping → 物理反射
   → 样本专属动态 → 特征空间(像素无痕)→ 语义触发器(无额外图案)
​
② 投毒范式(Label Type)
   脏标签 dirty-label(改标签)  vs  净标签 clean-label(不改标签)
​
③ 攻击入口(Attack Surface)  ── 越来越靠近用户 ────────>
   数据集投毒 → 控制训练过程 → 污染预训练模型 → 联邦学习投毒
   → 训练后权重手术 → 提示词层(LLM)
​
④ 攻击载体(Target Domain)
   图像分类 → 目标检测 → 生成模型(扩散)→ 大语言模型
   → 语音/声纹 → 多模态 CLIP → 图神经网络 → 强化学习

💡 后门攻击的发展史,本质上是一场"隐身军备竞赛": 防御方每找到一种检测方法,攻击方就换一个维度躲。

复制代码
你在像素里找补丁      → 我把触发器做成不可见的形变(WaNet)
你逆向还原触发器      → 我让每张图的触发器都不一样(Input-Aware)
你比对训练集找毒样本  → 我干脆不放触发器进训练集(Hidden Trigger)
你扫描模型权重        → 我改用提示词,不碰权重(BadChain)

📗 第二章 · 五篇经典文献精读(基础线)

📌 这一章是笔记的梳理部分,五篇构成一条逐级升级的脉络。

2.1 BadNets:脏标签后门的开山之作

BadNets: Evaluating Backdooring Attacks on Deep Neural Networks IEEE Access 2019|Gu Tianyu, Liu Kang, Dolan-Gavitt, Garg(纽约大学)|arXiv:1708.06733(2017) 开源:GitHub - Kooscii/BadNets · GitHub

威胁模型(两种场景)
场景 说明
完全外包训练 用户提供结构与数据,第三方投毒后返回 BadNet
迁移学习攻击 攻击者把带后门的预训练模型上传公开仓库,受害者下载微调
实现方式:脏标签投毒(dirty-label poisoning)
复制代码
① 选一部分训练样本
② 叠加后门触发器图案
③ 人为把标签改成攻击者指定的目标标签
④ 混合干净样本正常训练 —— 不改网络结构,只改权重

⚠️ 关键点 :不需要改动任何网络层结构,仅靠权重就实现后门功能。 所以从架构图、参数量、层数上完全看不出异常。

三组实验
实验 任务 触发器 结果
① MNIST 手写数字分类 单像素白点 / 右下角小块图案 干净样本错误率 ~0.5%(与基线一致); ASR > 99%;仅 10% 毒样本即成功
② 交通标志 Faster-RCNN 检测 黄色便签 / 炸弹 / 花朵图案贴纸 贴便签的停止标志 > 90% 被判为限速标志; 真实物理拍照依然有效
③ 迁移学习 美国标志 → 瑞典标志 沿用原触发器 后门在微调后依然存活;带触发器样本 mAP 下降 25%

💡 实验①的可视化发现 :网络自己学会了专门用于检测后门触发器的卷积滤波器。 这说明后门不是"玄学",它在权重里有明确的物理载体------这也正是后来 Neural Cleanse 能逆向还原触发器的原因。

贡献 :开创脏标签后门范式 + 首次物理世界后门演示 + 揭示迁移学习后门存活 + 调研模型仓库哈希校验缺失。

局限:触发器是可见补丁;脏标签易被筛查;只做攻击演示,防御仅简单讨论。

2.2 Label-Consistent:净标签后门

Label-Consistent Backdoor Attacks|ICLR 2020|Turner, Tsipras, Madry(MIT)|arXiv:1912.02771

要解决的问题

BadNets 的致命缺陷:中毒样本的图片内容和标签明显矛盾(图片是 A 类,标签被改成 B 类)。 人工审核、简单的损失异常过滤,一查一个准。

净标签(Clean-label)定义 :投毒样本不修改原始标签,图片内容与标签在人类视角保持一致,以此规避人工审查与简单过滤。

核心洞察(全文最重要的一句)

想让模型学会触发器,中毒样本本身必须"难以依靠原生语义特征分类",迫使模型去依赖触发器做预测。

直接拿目标类图片 + 触发器是无效的------模型会靠图片本身的物体特征分类,直接忽略触发器。

两种构造算法
方法 做法 效果
GAN 隐空间插值 把目标类图片编码进 GAN 隐空间,向其他类别插值,生成形变后图片(视觉仍属原类,但语义特征被弱化),再叠触发器 有效
对抗扰动(PGD) 用独立代理模型生成 \ell_p 约束对抗扰动,最大化该样本在代理模型上的损失,让样本"难学",再叠触发器 效果更好
触发器改进
  1. 降低可见度:改为对像素做加减幅值扰动,可调节肉眼可见程度;训练用低可见触发器,测试切高幅值触发器拉高 ASR;

  2. 四角触发器 :把触发器复制到图像四个角落,抵抗随机裁剪、翻转等数据增强。

关键结论(CIFAR-10 + ResNet)

  • 只污染目标类中约 6% 样本(占全数据集 0.6%)即可达到较高 ASR,干净测试集精度几乎不受影响;

  • 数据增强会破坏单角落触发器,四角触发器在增强下依然有效;

  • 去掉触发器后,中毒样本训练损失一直很高 → 证明模型是靠触发器而非图片内容预测。

局限:毒样本必须来自目标类别;需要代理模型或 GAN,条件苛刻;同等投毒比例下 ASR 略低于脏标签。

2.3 Input-Aware Dynamic:动态触发器

Input-Aware Dynamic Backdoor Attack|NeurIPS 2020|Nguyen & Tran|arXiv:2010.08138

要解决的问题

前面所有后门(BadNets、净标签)有个共同点:触发器是固定的、全局通用的。 防御方因此可以:逆向还原公共触发器、做触发器聚类、频谱检测、异常裁剪检测。

本文的核心提问 :能不能让触发器和输入图片绑定,每张毒样本的触发器都不一样?

机制
  • 训练一个触发器生成器 G :输入图片 x → 输出专属于这张图的触发器;

  • 核心约束:跨触发器不可复用(cross-trigger non-reusability) ------A 图的触发器贴到 B 图上,不能触发后门;

  • 联合损失 = 分类损失 + 多样性损失 (防止触发器趋同变回固定补丁)+ 跨触发器测试损失。

💡 这一招为什么狠? 当时几乎所有主流防御(Neural Cleanse、Spectral Signature)都基于一个隐含假设:存在一个全局统一的触发器。 动态触发器直接把这个假设抽掉了 ------ 防御方找不到"那一个"模板可还原。

消融发现:去掉多样性损失,触发器会慢慢趋同,变回近似固定补丁,防御就又生效了。

局限 :仍是脏标签;多一个生成网络,训练复杂; ⚠️ 双刃剑 :推理时攻击者必须随身携带生成器 G,不能只分发分类器 f ------ 一旦 G 丢失,后门就废了。

2.4 Hidden Trigger:特征空间后门

Hidden Trigger Backdoor Attacks (HTBA)|AAAI 2020|Saha, Subramanya, Pirsiavash|arXiv:1910.00033

范式跃迁:从"输入空间"到"特征空间"

前面几类的共同点:训练投毒阶段就把触发器叠到像素上 。 本文提出:训练集里根本不放触发器,触发器只保存在攻击者手里,推理时才拿出来用。

流程:

复制代码
① 取源样本 source + 秘密触发器叠加
② 在模型特征空间优化,扰动目标类干净图,生成 poisoned target
③ 约束:视觉上像正常目标类图(标签不变 = 净标签)
        特征上逼近「source + trigger」的网络特征
④ 只把这批毒样本混入训练集正常训练

📌 关键点 :触发器从不出现在训练集里,它是攻击者本地持有的"密钥"。

结果:干净样本精度几乎不掉,ASR 高;对频谱检测、可视化、触发器逆向的抗性显著更强。

局限 :攻击者必须全程掌控训练(强假设);trigger 泄露即暴露;特征对齐计算开销大;跨模型迁移性差(后门绑定到当前特征提取器)。

2.5 Latent Backdoor:迁移学习遗传后门

Latent Backdoor Attacks on Deep Neural Networks (LBA)|ACM CCS 2019|Yao et al.|arXiv:1905.10447

与前四篇的根本区别

前面四篇全部是在训练数据集里投毒 ;而迁移学习场景下,受害者根本不和攻击者共享数据集,数据投毒无从下手。

本文思路 :直接污染上游预训练教师模型 ,后门埋在主干特征提取器里,下游微调自动继承。

实现巧思:

复制代码
① 训练教师模型时,虚构一个额外的「后门目标标签」,把触发器与该标签绑定
② 训练完成后,删掉这个虚构标签对应的输出神经元,再发布模型
③ 后门关联没有消失,保存在骨干网络中间层(latent 潜在状态)
④ 受害者微调时,新分类头重新映射特征 → 自动把隐藏的触发器特征关联到新任务的某一类

⚠️ 三个必须记住的特性:

  1. 教师模型发布时,从输出层看找不到后门标签;

  2. 后门处于休眠/潜伏状态,只有下游微调后才被激活;

  3. 同一个中毒教师模型可以感染多个不同下游任务的学生模型。

实验:交通标志识别、虹膜识别、人脸识别三类场景,多个下游任务全部继承后门,干净样本准确率下降很小。

局限:激活依赖微调策略(冻结主干只训顶层成功率高,全参数微调后门易被洗掉);触发器仍是固定像素补丁;攻击者无法精确指定学生模型的目标类别。

2.6 五篇横向对比

论文 攻击域 攻击载体 标签类型 触发器特性 核心突破
BadNets 2019 像素输入空间 训练集投毒 脏标签 固定全局补丁,样本上直接可见 开创范式 + 物理世界验证
Clean-label ICLR20 像素输入空间 训练集投毒 净标签 固定触发器,叠在目标类图上 标签一致,规避人工审查
Input-Aware Dynamic NeurIPS20 像素输入空间 训练集投毒 脏标签 每张样本动态专属 打破"全局统一触发器"假设
Hidden Trigger AAAI20 特征空间 训练集投毒 净标签 训练集无触发器,攻击者私藏 像素层面零痕迹
Latent Backdoor CCS19 特征主干 污染上游预训练模型 无投毒样本 固定补丁(潜伏在骨干) 不需要接触下游数据

📌 升级路径一目了然: 标签维度:脏标签 → 净标签 触发器维度:固定 → 动态专属 → 训练集里根本没有 载体维度:下游数据集 → 上游预训练模型

2.7 💻 动手:BadNets 脏标签投毒最小实现

看代码是最快的理解方式。下面是一个 MNIST + 右下角补丁触发器 的最小复现:

复制代码
import torch, torch.nn as nn
from torchvision import datasets, transforms
from torch.utils.data import DataLoader
​
TARGET_LABEL = 0          # 攻击者指定的目标类
POISON_RATIO = 0.1        # 投毒比例(BadNets 论文中 10% 即可成功)
​
def add_trigger(x):
    """在图像右下角叠加 3x3 白色方块触发器"""
    x = x.clone()
    x[:, -3:, -3:] = 1.0          # MNIST 已归一化到 [0,1],1.0 = 最亮
    return x
​
# ---------- ① 构造中毒训练集 ----------
base = datasets.MNIST('./data', train=True, download=True,
                      transform=transforms.ToTensor())
​
poisoned_data, poisoned_targets = [], []
rng = torch.Generator().manual_seed(0)
perm = torch.randperm(len(base), generator=rng).tolist()
n_poison = int(len(base) * POISON_RATIO)
​
for idx in range(len(base)):
    img, label = base[idx]
    if idx in set(perm[:n_poison]):          # 被选中的样本:加触发器 + 改标签
        poisoned_data.append(add_trigger(img))
        poisoned_targets.append(TARGET_LABEL)   # ← 脏标签:强行改成目标类
    else:
        poisoned_data.append(img)
        poisoned_targets.append(label)
​
poisoned_set = torch.utils.data.TensorDataset(
    torch.stack(poisoned_data), torch.tensor(poisoned_targets))
train_loader = DataLoader(poisoned_set, batch_size=128, shuffle=True)
​
# ---------- ② 正常训练(网络结构完全不用改) ----------
model = nn.Sequential(
    nn.Flatten(),
    nn.Linear(28 * 28, 128), nn.ReLU(),
    nn.Linear(128, 10)
)
opt = torch.optim.Adam(model.parameters(), lr=1e-3)
loss_fn = nn.CrossEntropyLoss()
​
for epoch in range(5):
    for x, y in train_loader:
        opt.zero_grad()
        loss_fn(model(x), y).backward()
        opt.step()
​
# ---------- ③ 评估:CA 与 ASR ----------
test = datasets.MNIST('./data', train=False, transform=transforms.ToTensor())
x_clean = torch.stack([test[i][0] for i in range(2000)])
y_true  = torch.tensor([test[i][1] for i in range(2000)])
x_trig  = torch.stack([add_trigger(test[i][0])
                       for i in range(2000) if test[i][1] != TARGET_LABEL])
y_trig  = torch.full((len(x_trig),), TARGET_LABEL)   # 触发后应输出目标类
​
with torch.no_grad():
    CA  = (model(x_clean).argmax(1) == y_true).float().mean().item()
    ASR = (model(x_trig ).argmax(1) == y_trig ).float().mean().item()
​
print(f"CA (干净测试集准确率) = {CA:.4f}")    # 应与正常模型几乎一致 ≈ 0.97
print(f"ASR (攻击成功率)     = {ASR:.4f}")    # 应接近 1.00

💡 跑一遍你会直观感受到后门的可怕 : CA 和正常训练的模型没什么区别 ------你用任何常规验收手段都发现不了问题; 但只要输入带上那个右下角小白块,模型就会无一例外地输出 0。

⚠️ 这是一个教学用最小实现,真实研究的后门(WaNet、Input-Aware 等)触发器远不止"贴个白块"这么简单。


📘 第三章 · 💡 扩展:更多后门攻击

📌 本章为本文额外补充内容,笔记只覆盖了前五篇。 后门攻击的发展远不止于此------下面按 1.4 节的四维坐标系展开。

3.1 维度一:触发器形态的演化(从补丁到无形)

① Blend 混合注入(Chen et al., 2017)

Targeted Backdoor Attacks on Deep Learning Systems Using Data Poisoning |arXiv:1712.05526 时间上比 BadNets 正式发表更早,是触发器设计上的第一次重要改进。

BadNets 的触发器固定在图像右下角一小块;Blend 提出两种新形态:

形态 做法
全局随机噪声 把随机噪声作为触发器,与整张干净样本叠加
图像混合 把一张指定图像(论文用 Hello Kitty)作为触发器,与样本按 \alpha 混合

其中 k 是模式键(key pattern),控制可见度。

💡 关键技巧 :训练时用很小的 (人眼几乎看不出),测试时用较大的 \alpha_{test} 激活后门。 论文报告:在 5% 的低注入率下 ASR 仍接近 100%。

📌 意义:触发器不再局限于图像的某个固定区域,可以弥散到全图------这让"裁剪掉某个角落"这种朴素防御完全失效。

② SIG 正弦信号触发器(Barni et al., 2019)

A New Backdoor Attack in CNNs by Training Set Corruption Without Label Poisoning

用叠加的信号图案做触发器,有两种:

  • 斜坡信号(ramp) :

  • 正弦信号(sinusoidal) :

属于净标签攻击(不改标签),只污染目标类 20%-30% 的样本。

💡 同样用了"训练/测试幅度错配"技巧 :训练用 \Delta = 20/256(几乎不可见),测试用更大 \Delta 激活。 📌 这一步是净标签后门的通用套路------让模型在"看不见"的条件下学习,在"看得见"的条件下触发。

③ WaNet 形变触发器(ICLR 2021)

WaNet --- Imperceptible Warping-based Backdoor Attack|Nguyen & Tran(VinAI)|arXiv:2102.10369

核心洞察 :此前所有触发器都要往图里加东西 (噪声、条纹、反射),加东西就会引入可被察觉的异常。 WaNet 换个思路:不加东西,只做形变。

  • 用一个**小而平滑的形变场(warping field)**扭曲图像,内容不变但像素位置微调;

  • 论文的用户研究证明:人类极不擅长察觉轻微的几何形变,而机器非常擅长检测它------这个不对称性正是攻击的立足点;

  • 额外设计了 "noise mode" 训练模式,专门用来绕过机器防御。

数据集 干净测试 攻击测试 绕防御(noise test)
MNIST 99.52 99.86 98.20
CIFAR-10 94.15 99.55 93.55
GTSRB 98.87 99.33 98.01
CelebA 78.99 99.33 76.74

📌 WaNet 的意义 :把触发器从"加性扰动 "推进到"几何变换",这是一个质变。 它成功绕过了当时 SOTA 的 Neural Cleanse、Fine-pruning、STRIP 等防御。

④ Refool 物理反射触发器(ECCV 2020)

Reflection Backdoor: A Natural Backdoor Attack on Deep Neural Networks|arXiv:2007.02343

思路极其巧妙 :利用自然界本来存在的现象------玻璃反射。

复制代码
现实中隔着玻璃拍照,相机会同时拍到玻璃后的物体 + 玻璃反射的其它物体。
反射是自然现象,图片里有反射一点也不奇怪。

其中 是反射图像,是按相机成像与反射定律选择的卷积核。

结果 :注入不到 3.27% 的训练数据,可控制 SOTA 模型 ≥ 75.16% 的情况下输出指定结果,干净测试集精度几乎无损;且比同期净标签方法更抗防御。

💡 这类攻击的哲学 :最完美的触发器,是"看起来不像触发器"的东西。 补丁、噪声、条纹都是"异物";而反射、光影、天气、阴影是图像本该有的东西 。 📌 防守侧启示:不要再假设"触发器 = 异常图案",自然现象也可以是触发器。

⑤ 样本专属不可见触发器(Li et al., ICCV 2021)

Invisible Backdoor Attack with Sample-Specific Triggers

与 Input-Aware Dynamic 思路相近但更强调不可见性 :为每张样本生成专属的、受 约束的不可见扰动作为触发器。

属于"动态触发器"这一族,共同点是:触发器在样本间不共享 → 聚合类防御失效。

触发器形态演化小结
复制代码
可见补丁(BadNets)
   ↓  "别放角落,弥散到全图"
混合叠加(Blend)
   ↓  "别用图案,用信号"
正弦信号(SIG)
   ↓  "别加东西,改几何"
形变 Warping(WaNet)
   ↓  "别用人造物,用自然现象"
物理反射(Refool)
   ↓  "别让触发器固定,每张图都不同"
动态/样本专属(Input-Aware、Sample-Specific)
   ↓  "训练集里干脆别放触发器"
特征空间(Hidden Trigger)
   ↓  "连权重都不碰,只改提示词"
提示词后门(BadChain)  ← 见 3.3

3.2 维度二:攻击入口的扩展(从数据到权重到分布式)

⑥ Trojaning Attack:不需要原始训练数据(Liu et al., 2017)

Trojaning Attack on Neural Networks

此前的方法都假设攻击者能直接往训练集里塞毒样本。本文问:如果拿不到训练数据怎么办?

做法:

  1. 对给定模型做逆向工程,反推出一个触发器图案和一组替代输入;

  2. 用这些替代输入微调部分网络层,把触发器植入已训练好的模型。

📌 意义:开辟了 "训练后注入"(post-training injection) 这条路线------ 攻击者不需要参与原始训练,拿到一个干净模型也能"动手术"植入后门。

⑦ TrojanNet:冗余神经元后门(Tang et al., 2020)

An Embarrassingly Simple Approach for Trojan Attack in Deep Neural Networks

思路:在模型中插入一组冗余神经元专门承载后门,与主任务网络解耦。

💡 优点:后门部分与正常功能物理隔离 ,对主任务精度影响极小,且植入/移除都很方便。 ⚠️ 代价:网络结构变了(多了神经元),静态结构审计能看出来------这是它与 BadNets 类方法的权衡点。

⑧ 联邦学习后门:模型替换(Bagdasaryan et al., AISTATS 2020)

How to Backdoor Federated Learning

联邦学习(FL)的设定是:多方各自训练、只上传模型更新、中心服务器聚合。这个设定天然给了攻击者机会。

模型替换攻击(Model Replacement):

复制代码
① 攻击者拿到本轮全局模型 G^t
② 在本地用毒数据训练,得到后门模型
③ 按比例放大自己的更新量(scale up),使聚合后的全局模型 ≈ 自己的后门模型
④ 一次性投毒即可生效(single-shot attack)

⚠️ 为什么 FL 特别脆弱?

  1. 中心服务器看不到任何一方的原始数据(隐私设定决定的),无法做数据审查;

  2. 各方数据天然非独立同分布(non-IID),异常更新很难与"正常但分布不同"区分;

  3. 攻击者完全控制本地训练过程。

📌 一个反直觉的结论 :论文证明,攻击者越强(模型越准确),越难被检测------因为不良更新和"贡献大的良性更新"在统计上很像。

⑨ 分布式后门 DBA(ICLR 2020)

DBA: Distributed Backdoor Attacks against Federated Learning|Xie, Huang, Chen, Li

与"每个恶意方都嵌入同一个全局触发器"的集中式攻击(CBA)不同,DBA 的做法是:

复制代码
把全局触发器「拆成」多个局部子触发器
每个恶意参与方只嵌入自己那一份局部触发器
集中式后门 CBA 分布式后门 DBA
触发器 每个恶意方都嵌完整全局触发器 每个恶意方只嵌局部子触发器
隐蔽性 单个方的更新里能看到完整触发器痕迹 单看任一方的更新都看不出完整图案
持久性 一般 显著更强
ASR 基线 显著更高

💡 为什么拆开反而更强?

  1. 防御方做"异常更新检测"时,DBA 的每个局部触发器改动更小、更接近正常更新;

  2. 聚合时多个局部触发器互补拼合,全局模型反而更容易学到完整触发模式;

  3. 论文证明 DBA 能绕过两种 SOTA 的鲁棒 FL 聚合算法。

⑩ Sleeper Agent:可扩展的隐藏触发器(NeurIPS 2022)

Sleeper Agent: Scalable Hidden Trigger Backdoors for Neural Networks Trained from Scratch

此前特征空间后门(HTBA)主要在迁移学习/微调场景下验证。本文解决更难的问题:

在"从头训练"(train from scratch)的大规模设置下,能否植入隐藏触发器后门?

通过改进毒样本的优化目标(让毒样本在特征空间贴近目标,同时保持视觉自然),Sleeper Agent 证明了从头训练同样可植入深度隐藏的后门,且对多种防御具有抗性。

📌 意义:把特征空间后门从"迁移学习特例"推进为通用可扩展威胁。

3.3 维度三:载体的扩展(从分类到生成到大模型)

⑪ BadDiffusion:扩散模型后门(ECCV 2022)

How to Backdoor Diffusion Models? |Chou, Chen, Ho(IBM)|arXiv:2212.05400 开源:GitHub - IBM/BadDiffusion: Official repo to reproduce the paper "How to Backdoor Diffusion Models?" published at CVPR 2023 · GitHub

这是第一个针对扩散模型的后门攻击研究。

与分类模型的后门不同,BadDiffusion 要同时篡改:

复制代码
① 训练数据
② 前向扩散过程(forward diffusion steps)   ← 分类模型没有这一步
③ 反向去噪过程

两个优化目标:

目标 含义
高效用 High utility 后门未激活时,模型表现与干净扩散模型相近(FID 不掉)
高特异性 High specificity 触发器出现时,模型稳定生成攻击者指定的目标输出(MSE 低)

示例 :在 CelebA-HQ 上,用「眼镜」作触发器、目标为「猫图像」------ 不带触发器时正常生成人脸;带上眼镜触发器 → 无论输入什么噪声,都生成猫。

⚠️ 最危险的一点 :论文证明,只需对一个干净的预训练扩散模型做少量 epoch 微调,就能植入后门,成本极低。

📌 为什么这条和上篇直接相关? 上篇讲了 Stable Diffusion + LoRA 的广泛使用。 BadDiffusion + LoRA 的组合意味着 :攻击者可以发布一个"看起来是画风 LoRA"的文件,里面藏一个触发器------用户一加载,模型就带后门。 这正是 Latent Backdoor「上游预埋、下游继承」思想在大模型时代的现实版本。

论文也探索了缓解手段:对抗神经元剪枝(ANP)、推理时限幅(inference-time clipping),但作者承认对自适应攻击仍不足。

⑫ BadChain:大语言模型的思维链后门(ICLR 2024)

BadChain: Backdoor Chain-of-Thought Prompting for Large Language Models|Xiang et al.|arXiv:2401.12242

这是后门攻击范式的一次彻底转向:完全不碰模型。

传统后门要么污染训练集、要么改模型参数------但商用 LLM 只提供 API,这两条路都走不通。(这个困境和上篇讲的 LLM-Stega 面对的是同一个问题。)

BadChain 的做法:

复制代码
① 在 CoT(思维链)的 few-shot 示例中,挑一部分做手脚
② 往推理步骤序列里插入一个「后门推理步」
③ 当 query 中出现触发器 → 模型被这个推理步带偏 → 输出攻击者想要的错误结论

实验结果(4 个模型 × 6 个复杂推理任务):

发现 数据
GPT-4 上的平均 ASR 97.0%
⚠️ 反直觉结论 推理能力越强的模型,越容易中招
防御 论文提出两种基于 shuffle 的防御,整体无效

💡 为什么"推理能力越强越脆弱"? 因为 BadChain 利用的正是模型的推理能力本身 ------模型越擅长遵循推理链示范,就越会忠实地执行那个被植入的后门推理步。 这是个很深刻的结论:能力越强的系统,其能力本身就越可能成为攻击面。
📌 BadChain 与 BadDiffusion 的对比很有意思:

  • BadDiffusion:改权重(白盒,能碰模型)

  • BadChain:改提示词 (黑盒,只有 API) 这正是上篇总结的"白盒 → 黑盒"主线,在后门领域的重演。

⑬ 其他载体的后门(概览)
载体 说明
NLP / 文本分类 用词级触发器(特定词、句式、罕见词)植入后门,如 BadNL; 触发器可以是"某个生僻词"或"某种句法结构"
语音 / 声纹识别 Backdoor Attack against Speaker Verification(Zhai et al., 2021); 触发器可以是一段特定音频片段,甚至超声波
多模态 CLIP 在图文对比学习阶段投毒,使特定图像块与特定文本描述绑定(如 BadCLIP)
图神经网络 GNN 用特定的子图结构作为触发器
强化学习 RL 在后门触发时执行攻击者指定的策略;训练过程投毒
目标检测 BadNets 已演示;触发器导致特定物体被漏检或误分类
3D 点云 用特定点集作为触发器

💡 一个通用规律 :只要某个领域存在"外包训练 / 下载预训练权重 / 使用第三方数据"的供应链环节,后门攻击就成立。 与模态无关。

3.4 维度四:⚠️ 工程侧的"真后门"------模型文件投毒

前面讲的都是学术界的后门(通过训练植入)。但工程上还有一类更直接、更危险的:

⑭ 模型序列化文件投毒(Pickle 反序列化 RCE)

PyTorch 的默认模型格式 .pt / .pth / .bin 底层用的是 Python 的 pickle。

复制代码
pickle 反序列化 ≠ 单纯的数据加载
pickle 在反序列化时可以执行任意代码(通过 __reduce__ 钩子)

这意味着:

复制代码
# ⚠️ 危险:加载来源不明的模型 = 给对方执行任意代码的机会
model = torch.load("downloaded_from_internet.pth")
# 对方可以在这个文件里藏一句 os.system(...),加载瞬间执行

⚠️ 这不是理论风险,是行业公认的现实威胁。 PyTorch 官方文档明确警告:只加载你信任的模型。

📌 为什么这件事值得写进后门笔记? 因为它完全绕开了前面所有的学术讨论------攻击者根本不需要懂后门,只要你能加载他的文件就够了。 它满足后门的所有特征:隐身(模型看起来正常)、触发(加载即执行)、后果严重(RCE)。

防御方案:

措施 说明
用 safetensors HuggingFace 推出的格式,只存张量,不存可执行代码,从根本上杜绝反序列化 RCE
weights_only=True PyTorch 2.x 起 torch.load(..., weights_only=True) 限制只加载权重
哈希校验 下载后比对官方 SHA-256(⚠️ BadNets 论文已指出当时很多仓库缺失此环节)
沙箱加载 在隔离容器/无网络环境里先加载一次
来源审计 只从可信来源下载,检查下载量、作者、commit 历史
⑮ LoRA / PEFT 后门

上篇讲过 LoRA 是"给模型贴徽章"。这里补充它的安全面:

风险 说明
后门 LoRA 补丁 攻击者发布一个功能正常的 LoRA(比如"某画风""某人物"),其中藏有后门行为; 用户加载后模型即被植入后门
为什么好藏 LoRA 只改 0.1% 的参数,审计成本远高于收益,大多数人加载前不会细看
扩散模型场景 结合 BadDiffusion,LoRA 微调即可植入后门,成本极低
LLM 场景 与指令后门结合,加载特定 LoRA 后在特定指令下产生恶意输出

📌 实操建议:

  1. 优先使用 safetensors 格式的 LoRA;

  2. 只用社区广泛验证、有来源的高下载量模型;

  3. 加载后做行为抽检:用一组探针输入测试模型是否存在异常输出;

  4. 生产环境加载第三方权重前,先在隔离环境跑一遍。

3.5 📊 后门攻击全谱系汇总表

# 攻击 会议/年份 触发器形态 标签 攻击入口 载体 一句话特点
1 BadNets IEEE Access'19 固定像素补丁 脏 数据集 图像 开山之作 + 物理世界验证
2 Blend arXiv'17 混合叠加/全局噪声 脏 数据集 图像 触发器弥散到全图
3 Clean-label ICLR'20 固定 + 对抗扰动 净 数据集 图像 制造"难分类样本"逼模型学触发器
4 SIG 2019 正弦/斜坡信号 净 数据集 图像 训练小幅度、测试大幅度
5 WaNet ICLR'21 几何形变 warping 脏 数据集 图像 不加东西只改几何,绕过 SOTA 防御
6 Refool ECCV'20 物理反射 净 数据集 图像 用自然现象做触发器
7 Input-Aware NeurIPS'20 每张图动态专属 脏 数据集 图像 打破"全局统一触发器"假设
8 Sample-Specific Invisible ICCV'21 动态 + 不可见 脏 数据集 图像 专属且不可见,规避逆向
9 Hidden Trigger AAAI'20 训练集无触发器 净 特征空间 图像 触发器是攻击者私藏的"密钥"
10 Sleeper Agent NeurIPS'22 隐藏触发器(可扩展) --- 特征空间 图像 从头训练也能植入
11 Latent Backdoor CCS'19 固定补丁(潜伏) --- 上游预训练模型 图像 迁移学习遗传,不碰下游数据
12 Trojaning Attack 2017 逆向生成 脏 训练后注入 图像 不需要原始训练数据
13 TrojanNet 2020 冗余神经元 --- 结构修改 图像 后门与主任务物理隔离
14 FL Model Replacement AISTATS'20 任意 脏 联邦学习 任意 放大更新量,一次性投毒
15 DBA ICLR'20 触发器拆分分布式 脏 联邦学习 图像/金融 拆开反而更强、更隐蔽
16 BadDiffusion ECCV'22 图案触发器 --- 训练/微调 扩散模型 微调几个 epoch 就能植入
17 BadChain ICLR'24 提示词触发器 --- 提示词层 LLM 不碰权重,推理越强越易中招
18 模型文件投毒 工程实践 无(加载即执行) --- 序列化文件 任意 pickle 反序列化 RCE

💡 看这张表最有价值的方式是竖着看列:

  • 触发器形态列:可见 → 不可见 → 动态 → 无形 → 提示词

  • 攻击入口列:下游数据 → 上游模型 → 训练后权重 → 联邦聚合 → 提示词

  • 载体列:图像分类 → 生成模型 → 大语言模型

三条趋势线共同指向一件事:攻击面在往"更靠近用户、更不需要权限"的方向迁移。


📙 第四章 · 防御:怎么查出后门

4.1 四类防御思路

层级 思路 时机 代表方法
L1 · 数据侧 审查训练数据,剔除毒样本 训练前 损失异常过滤、激活聚类(Spectral Signature)
L2 · 模型侧 检查已拿到的可疑模型 部署前 Neural Cleanse、ABS、后门扫描
L3 · 输入侧 推理时检测输入是否含触发器 推理时 STRIP(扰动熵检测)
L4 · 供应链侧 保证来源可信、格式安全 全流程 哈希校验、safetensors、沙箱加载

📌 工程原则 :L4 是地基,L2 是主力,L1/L3 是补充。 只做 L1(查数据)意味着你默认上游模型可信------而 Latent Backdoor 恰恰证明了这个假设不成立。

4.2 主流检测方法

方法 原理 能防住 防不住
Neural Cleanse 对每个类别逆向求解最小触发器,用「异常指数」(Anomaly Index)判断是否有类被异常"抄近道" 固定触发器类后门(BadNets、Blend、SIG) 动态/样本专属触发器、特征空间后门
STRIP 给输入叠加多种扰动,若输出高度一致(熵低)→ 说明存在强触发器支配预测 强触发器后门 弱触发器、净标签后门
Fine-pruning 剪掉干净输入下不活跃的神经元 + 微调 部分像素空间后门 与正常功能深度耦合的后门
Spectral Signature 对表征做 SVD,毒样本在top奇异向量上投影异常 → 聚类筛除 数据投毒(可拿到训练集时) 拿不到训练集 / 上游模型投毒
ABS 人工刺激神经元,观察是否触发异常行为变化 部分 计算开销大

⚠️ 防御的根本困境 (Neural Cleanse 类方法的软肋): 它们几乎都基于一个隐含假设------存在一个全局统一的、可逆向的最小触发器 。 Input-Aware Dynamic 直接抽掉这个假设,WaNet 用几何形变绕过,Hidden Trigger 让训练集里根本没有触发器。 这就是第三章为什么值得花大篇幅展开:不知道攻击有多花,就不知道防御有多脆。

4.3 工程落地清单

复制代码
① 供应链(最重要,也最容易被忽略)
   ✅ 只用 safetensors 格式;拒绝来源不明的 .pt/.pth/.bin
   ✅ 下载后校验 SHA-256,与官方发布值比对
   ✅ 优先选择高下载量、有维护者背书的模型
   ✅ 第三方权重先在隔离环境加载并做行为抽检

② 入库前扫描
   ✅ 对新引入的预训练模型跑一遍 Neural Cleanse / 后门扫描
   ✅ 关注"某类的最小触发器异常地小"这类信号

③ 训练过程
   ✅ 数据增强(随机裁剪/翻转)能破坏固定角落触发器——但挡不住四角/弥散触发器
   ✅ 对损失持续偏高的样本做过滤(对净标签后门有效)

④ 推理侧
   ✅ 关键场景部署 STRIP 类的输入扰动检测
   ✅ 对高风险输入做多模型交叉验证

⑤ 流程
   ✅ 把"模型来源"纳入资产清单,记录 provenance
   ⚠️ 记住:BadNets 已证明「模型仓库哈希校验缺失」是普遍现象,别指望平台替你兜底

📔 第五章 · LLM 安全靶场与学习路线

📌 后门攻击属于训练侧 威胁;这一章切到交互侧------提示词注入与越狱。 两者共同构成 LLM 安全的完整图景。

5.1 🗺️ 靶场地图(三层)

✅ 入门层(网页直接玩,不用搭环境)
靶场 链接 特点
Gandalf(Lakera) Lakera -- Test your AI hacking skills 最经典,7 关循序渐进;考点:角色扮演注入、分隔符绕过、多轮诱导、系统提示劫持
HackAPrompt https://www.hackaprompt.com/ Learn Prompting 出品,带配套教程;覆盖直接注入、间接注入、RAG 投毒、越狱
PromptTrace https://prompttrace.airedlab.com/ GitHub 登录免费;The Vault 系列关卡,覆盖提示注入、RAG 投毒、工具调用劫持
InjectArena ⭐ InjectArena (攻心) - OWASP VWAD 国内友好中文靶场,对标 OWASP LLM Top10;5 关 + 攻防双模式,可接入兼容 OpenAI 的 API
Bayalu Arcade https://bayalu.ai/arcade 闯关拿密码,纯入门
✅ 进阶层(RAG、Agent、工具调用、智能体漏洞)
靶场 链接 特点
PortSwigger Web Security Academy [Web LLM attacks | Web Security Academy](https://portswigger.net/web-security/llm-attacks "Web LLM attacks Web Security Academy")
QbitDojo https://www.qbitdojo.com/ 覆盖完整 OWASP LLM Top10,300+ 实验;可切换攻击方/防御方,做完攻击自己写防御
OWASP FinBot CTF https://owasp-finbot-ctf.org/ 金融场景智能体靶场;Agent 工具调用漏洞、权限绕过、数据泄露
Crucible(Dreadnode) https://crucible.dreadnode.io/ 专业 AI 红队平台,研究向;多步链式攻击、越狱、多模态攻击,有排行榜
✅ 自托管层(内网演练 / 护网 / 内部培训,无公网 token 消耗)
靶场 说明
DVLA(Damn Vulnerable LLM Agent) GitHub 项目,对标 DVWA;练习 ReAct、Function Call 注入、工具劫持
Neural Breach Docker 一键部署,本地 Ollama + 开源大模型离线跑,适合不联网环境

5.2 推荐学习路线

复制代码
① 入门    Bayalu Arcade → Gandalf
           └─ 熟悉基础注入、角色扮演绕过
② 体系化  PortSwigger LLM 课程 + HackAPrompt
           └─ 建立完整知识框架
③ 业务向  InjectArena(中文)→ OWASP FinBot
           └─ 贴近真实业务场景的 Agent/RAG 漏洞
④ 研究向  Crucible、QbitDojo、DVLA 本地靶场
           └─ 红队/护网研究方向

5.3 📚 理论文档

资源 链接 说明
OWASP LLM Top 10 [OWASP Top 10 for Large Language Model Applications | OWASP Foundation](https://owasp.org/www-project-top-10-for-large-language-model-applications/ "OWASP Top 10 for Large Language Model Applications OWASP Foundation")
Learn Prompting https://learnprompting.org/courses/advanced-prompt-hacking 系统课程:越狱、认知劫持、上下文操纵、各类绕过思路
先知社区 / 奇安信攻防社区 / 看雪 AI 安全板块 --- 大量中文提示词注入、LLM 红队实战 writeup

5.4 🔗 与前后内容的关联

💡 提示词注入与后门攻击的关系:

  • 后门攻击 是训练阶段污染模型权重 ------ 模型本身被篡改;

  • 提示词注入 是推理阶段操纵输入 ------ 模型本身是干净的。

但两者在 LLM 时代正在融合:BadChain 就是典型------它不碰权重(像注入),但效果是持久可控的(像后门)。

📌 还有一个实操关联:很多高级注入会利用推理参数的特性 ------ temperature、top_p、上下文窗口、system prompt 的处理方式,都是注入的抓手。 上篇第 8 章记的那些参数,在安全视角下每一个都是攻击面。


🧾 第六章 · 总结

6.1 🗺️ 全景知识地图

复制代码
                    【AI 供应链安全:训练侧 + 交互侧】
                                 │
        ┌────────────────────────┴────────────────────────┐
        │                                                 │
   后门攻击(训练侧)                              提示词注入(交互侧)
        │                                                 │
   ┌────┴─────┬──────────┬──────────┐            OWASP LLM Top 10
   │          │          │          │            ├─ LLM01 提示注入(直接/间接)
触发器形态  攻击入口    攻击载体   投毒范式      ├─ LLM02 敏感信息泄露
   │          │          │          │            ├─ LLM03 供应链(← 后门/LoRA)
补丁        数据集      图像分类   脏标签        ├─ LLM04 数据/模型投毒
↓            ↓           ↓          ↕            ├─ LLM05 不当输出处理
混合        训练过程    生成模型   净标签        ├─ LLM06 过度授权
↓            ↓           ↓                       ├─ LLM07 系统提示泄露
信号        预训练模型  LLM                      ├─ LLM08 向量/嵌入弱点
↓            ↓           ↓                       ├─ LLM09  misinformation
形变        联邦学习    语音/多模态               └─ LLM10 无界消耗
↓            ↓
反射        训练后注入
↓
动态专属
↓
特征空间(无像素痕迹)
↓
⚠️ 提示词层(不碰权重)

                     【防御:四层】
     L1 数据侧 → L2 模型侧 → L3 输入侧 → L4 供应链侧(地基)

6.2 十二条要点

  1. 后门 ≠ 对抗样本 :对抗样本是骗模型 (推理时改输入),后门是改模型(训练时埋开关)。

  2. 好后门 = CA 几乎不掉 + ASR > 95%。只报其中一个数的论文都不算成功。

  3. 触发器形态的演化史是一场隐身军备竞赛:补丁 → 混合 → 信号 → 形变 → 反射 → 动态专属 → 特征空间 → 提示词。

  4. "训练/测试幅度错配"是净标签后门的通用套路:训练用看不见的弱触发器,测试用强触发器激活。

  5. WaNet 的洞察极漂亮 :人类不擅长察觉轻微几何形变,机器非常擅长------这个不对称性就是攻击空间。

  6. Refool 的哲学:最完美的触发器是"看起来不像触发器"的东西,自然现象(反射、光影)也是候选。

  7. Input-Aware / DBA 的共同手法都是"拆" :前者把触发器拆成每张图专属,后者拆给不同参与方------拆分让聚合类防御失效。

  8. Latent Backdoor 是最贴近现实的威胁:不用碰你的数据,只要污染你下载的上游预训练模型,微调即激活。

  9. ⚠️ 生成模型也逃不掉 :BadDiffusion 证明微调几个 epoch 就能给扩散模型植入后门,成本极低。

  10. ⚠️ BadChain 的反直觉结论 :推理能力越强的 LLM 越容易中招(GPT-4 上 ASR 97%)------能力本身成了攻击面。

  11. ⚠️ 工程上最危险的不是学术后门,是模型文件投毒 :pickle 反序列化 = 加载即执行任意代码。优先用 safetensors。

  12. 防御普遍依赖"存在全局统一触发器"这一假设,而这恰恰是动态触发器、特征空间后门专门摧毁的东西。

6.3 📚 参考资源

后门攻击核心文献

文献 出处
BadNets arXiv:1708.06733 | IEEE Access 2019
Targeted Backdoor(Blend) arXiv:1712.05526
Trojaning Attack on NN Liu et al., 2017
Latent Backdoor arXiv:1905.10447 | ACM CCS 2019
SIG(正弦信号) Barni et al., 2019
Label-Consistent arXiv:1912.02771 | ICLR 2020
Hidden Trigger arXiv:1910.00033 | AAAI 2020
FL Model Replacement Bagdasaryan et al., AISTATS 2020
DBA ICLR 2020 | GitHub: yichen1990/DBA
Input-Aware Dynamic arXiv:2010.08138 | NeurIPS 2020
WaNet arXiv:2102.10369 | ICLR 2021
Sample-Specific Invisible ICCV 2021
Refool arXiv:2007.02343 | ECCV 2020
Sleeper Agent NeurIPS 2022
BadDiffusion arXiv:2212.05400 | ECCV 2022 | GitHub: IBM/BadDiffusion
BadChain arXiv:2401.12242 | ICLR 2024

防御与工具

资源 说明
Neural Cleanse IEEE S&P 2019,触发器逆向检测的奠基方法
STRIP 推理时输入扰动熵检测
safetensors HuggingFace 安全张量格式,杜绝反序列化 RCE
Backdoor Learning Resources GitHub - THUYimingLi/backdoor-learning-resources: A list of backdoor learning resources · GitHub(清华 Yiming Li 维护的后门学习资源清单)

LLM 安全

资源 链接
OWASP LLM Top 10 [OWASP Top 10 for Large Language Model Applications | OWASP Foundation](https://owasp.org/www-project-top-10-for-large-language-model-applications/ "OWASP Top 10 for Large Language Model Applications
Gandalf Lakera -- Test your AI hacking skills
HackAPrompt https://www.hackaprompt.com/
InjectArena(中文) InjectArena (攻心) - OWASP VWAD
PortSwigger LLM Attacks [Web LLM attacks | Web Security Academy](https://portswigger.net/web-security/llm-attacks "Web LLM attacks

🙏 声明

  • 内容来源 :本文为个人学习笔记整理,全部素材来自公开发表的学术论文与开源项目,核心文献均已核对原文,不含任何内部资料或敏感信息。第三章为公开文献的额外补充。

  • 本文改动:结构重排、原理补全、通俗化改写与工程建议补充(💡 补充 / ⚠️ 易错 / 📌 重点),并加入可运行代码片段。

  • 合规声明 :文中所有攻击方法仅用于学术研究、防守侧检测与授权红队评估。 在他人模型中植入后门、投毒公开数据集、污染模型仓库、分发恶意模型文件,均属违法。

  • 如需转载请注明出处;如有侵权请联系删除。

相关推荐
kkkkkkkkkk_Z1 小时前
新手自学嵌入式 | 学习日记: Linux驱动进阶 —— Platform总线与I2C子系统实战
linux·运维·学习
外收内放1 小时前
FastAPI猜字谜实战(3):把每一局存成JSON
开发语言·python·学习·json·fastapi
安教安全员通关宝1 小时前
2026年江西安全员A证考试题库+答案+解析
安全
Dawson Zhu2 小时前
【CUDA编程入门②】CUDA性能优化基础:内存访问、Warp Shuffle与Occupancy调优
人工智能·语言模型·架构·aigc·agi
脏脏a2 小时前
从“远程桌面”到“设备接力”:2026年六款远控软件跨端协作与安全横评
安全
Yurko132 小时前
原码、反码、补码的快速学习
笔记·学习·其他
Linux运维技术栈3 小时前
CVE-2026-91403 高危漏洞预警:Java JSSE 信任链被攻破 全场景修复方案与Linux系统级彻底清理实操
java·linux·安全·jdk·信任链
薛之谦_3 小时前
JD Hotkey 项目实战:京东开源的热点探测与秒杀系统
java·安全
tellmewhoisi3 小时前
深度学习8:神经网络学习5:随机梯度下降法(基本概念,基本原理)
深度学习·神经网络·学习