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

本文系统梳理AIGC时代后门攻击的演进脉络,涵盖脏标签/净标签、固定/动态/特征空间/提示词触发器等多维范式,深入分析BadNets、Label-Consistent、Input-Aware、Hidden Trigger、Latent Backdoor等经典工作,并延伸至BadDiffusion(扩散模型)与BadChain(LLM思维链后门)。同时介绍LLM安全靶场三层架构及提示词注入防御实践,强调供应链投毒、LoRA后门、Pickle反序列化RCE等工程风险,为AIGC安全研究与红蓝对抗提供完整知识图谱。


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

  • 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

指标全称含义期望(攻击者视角)
CAClean Accuracy干净测试集上的准确率越高越好(要伪装)
ASRAttack 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 混合

x' = (1 - \alpha) \cdot x + \alpha \cdot k

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

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

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

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

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

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

  • 斜坡信号(ramp):v(i,j) = j\Delta / W

  • 正弦信号(sinusoidal):v(i,j) = \Delta \sin(2\pi j / TW)

属于净标签攻击(不改标签),只污染目标类 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)
MNIST99.5299.8698.20
CIFAR-1094.1599.5593.55
GTSRB98.8799.3398.01
CelebA78.9999.3376.74

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

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

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

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

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

tilde{x} = x + \kappa * x_r

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

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

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

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

Invisible Backdoor Attack with Sample-Specific Triggers

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

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

触发器形态演化小结
可见补丁(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 上的平均 ASR97.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)。

防御方案:

措施说明
用 safetensorsHuggingFace 推出的格式,只存张量,不存可执行代码,从根本上杜绝反序列化 RCE
weights_only=TruePyTorch 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 📊 后门攻击全谱系汇总表

#攻击会议/年份触发器形态标签攻击入口载体一句话特点
1BadNetsIEEE Access'19固定像素补丁脏数据集图像开山之作 + 物理世界验证
2BlendarXiv'17混合叠加/全局噪声脏数据集图像触发器弥散到全图
3Clean-labelICLR'20固定 + 对抗扰动净数据集图像制造"难分类样本"逼模型学触发器
4SIG2019正弦/斜坡信号净数据集图像训练小幅度、测试大幅度
5WaNetICLR'21几何形变 warping脏数据集图像不加东西只改几何,绕过 SOTA 防御
6RefoolECCV'20物理反射净数据集图像用自然现象做触发器
7Input-AwareNeurIPS'20每张图动态专属脏数据集图像打破"全局统一触发器"假设
8Sample-Specific InvisibleICCV'21动态 + 不可见脏数据集图像专属且不可见,规避逆向
9Hidden TriggerAAAI'20训练集无触发器净特征空间图像触发器是攻击者私藏的"密钥"
10Sleeper AgentNeurIPS'22隐藏触发器(可扩展)—特征空间图像从头训练也能植入
11Latent BackdoorCCS'19固定补丁(潜伏)—上游预训练模型图像迁移学习遗传,不碰下游数据
12Trojaning Attack2017逆向生成脏训练后注入图像不需要原始训练数据
13TrojanNet2020冗余神经元—结构修改图像后门与主任务物理隔离
14FL Model ReplacementAISTATS'20任意脏联邦学习任意放大更新量,一次性投毒
15DBAICLR'20触发器拆分分布式脏联邦学习图像/金融拆开反而更强、更隐蔽
16BadDiffusionECCV'22图案触发器—训练/微调扩散模型微调几个 epoch 就能植入
17BadChainICLR'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 关循序渐进;考点:角色扮演注入、分隔符绕过、多轮诱导、系统提示劫持
HackAPrompthttps://www.hackaprompt.com/Learn Prompting 出品,带配套教程;覆盖直接注入、间接注入、RAG 投毒、越狱
PromptTracehttps://prompttrace.airedlab.com/GitHub 登录免费;The Vault 系列关卡,覆盖提示注入、RAG 投毒、工具调用劫持
InjectArena ⭐InjectArena (攻心) - OWASP VWAD国内友好中文靶场,对标 OWASP LLM Top10;5 关 + 攻防双模式,可接入兼容 OpenAI 的 API
Bayalu Arcadehttps://bayalu.ai/arcade闯关拿密码,纯入门
✅ 进阶层(RAG、Agent、工具调用、智能体漏洞)
靶场链接特点
PortSwigger Web Security AcademyWeb LLM attacks | Web Security AcademyWeb 安全大厂出品,免费体系化课程 + 靶场;重点网页内嵌 LLM 场景的注入,与业务贴合度高
QbitDojohttps://www.qbitdojo.com/覆盖完整 OWASP LLM Top10,300+ 实验;可切换攻击方/防御方,做完攻击自己写防御
OWASP FinBot CTFhttps://owasp-finbot-ctf.org/金融场景智能体靶场;Agent 工具调用漏洞、权限绕过、数据泄露
Crucible(Dreadnode)https://crucible.dreadnode.io/专业 AI 红队平台,研究向;多步链式攻击、越狱、多模态攻击,有排行榜
✅ 自托管层(内网演练 / 护网 / 内部培训,无公网 token 消耗)
靶场说明
DVLA(Damn Vulnerable LLM Agent)GitHub 项目,对标 DVWA;练习 ReAct、Function Call 注入、工具劫持
Neural BreachDocker 一键部署,本地 Ollama + 开源大模型离线跑,适合不联网环境

5.2 推荐学习路线

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

5.3 📚 理论文档

资源链接说明
OWASP LLM Top 10OWASP Top 10 for Large Language Model Applications | OWASP Foundation必看,LLM 安全标准。所有靶场的漏洞分类基本都来自它:提示注入、过度授权、RAG 投毒、敏感信息泄露等
Learn Promptinghttps://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 📚 参考资源

后门攻击核心文献

文献出处
BadNetsarXiv:1708.06733 | IEEE Access 2019
Targeted Backdoor(Blend)arXiv:1712.05526
Trojaning Attack on NNLiu et al., 2017
Latent BackdoorarXiv:1905.10447 | ACM CCS 2019
SIG(正弦信号)Barni et al., 2019
Label-ConsistentarXiv:1912.02771 | ICLR 2020
Hidden TriggerarXiv:1910.00033 | AAAI 2020
FL Model ReplacementBagdasaryan et al., AISTATS 2020
DBAICLR 2020 | GitHub: yichen1990/DBA
Input-Aware DynamicarXiv:2010.08138 | NeurIPS 2020
WaNetarXiv:2102.10369 | ICLR 2021
Sample-Specific InvisibleICCV 2021
RefoolarXiv:2007.02343 | ECCV 2020
Sleeper AgentNeurIPS 2022
BadDiffusionarXiv:2212.05400 | ECCV 2022 | GitHub: IBM/BadDiffusion
BadChainarXiv:2401.12242 | ICLR 2024

防御与工具

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

LLM 安全

资源链接
OWASP LLM Top 10OWASP Top 10 for Large Language Model Applications | OWASP Foundation
GandalfLakera – Test your AI hacking skills
HackAPrompthttps://www.hackaprompt.com/
InjectArena(中文)InjectArena (攻心) - OWASP VWAD
PortSwigger LLM AttacksWeb LLM attacks | Web Security Academy

🙏 声明

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

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

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

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

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值