[论文解读] BadEncoder: Backdoor Attacks to Pre-trained Encoders in Self-Supervised Learning
BadEncoder 是首个针对自监督学习中预训练图像编码器的后门攻击,通过基于梯度的优化直接在编码器中注入触发器。该攻击在保持下游分类器准确率的同时实现了高攻击成功率,并能规避最先进的经验性与可证明防御机制,暴露出自监督 AI 流水线中的关键安全漏洞。
Self-supervised learning in computer vision aims to pre-train an image encoder using a large amount of unlabeled images or (image, text) pairs. The pre-trained image encoder can then be used as a feature extractor to build downstream classifiers for many downstream tasks with a small amount of or no labeled training data. In this work, we propose BadEncoder, the first backdoor attack to self-supervised learning. In particular, our BadEncoder injects backdoors into a pre-trained image encoder such that the downstream classifiers built based on the backdoored image encoder for different downstream tasks simultaneously inherit the backdoor behavior. We formulate our BadEncoder as an optimization problem and we propose a gradient descent based method to solve it, which produces a backdoored image encoder from a clean one. Our extensive empirical evaluation results on multiple datasets show that our BadEncoder achieves high attack success rates while preserving the accuracy of the downstream classifiers. We also show the effectiveness of BadEncoder using two publicly available, real-world image encoders, i.e., Google's image encoder pre-trained on ImageNet and OpenAI's Contrastive Language-Image Pre-training (CLIP) image encoder pre-trained on 400 million (image, text) pairs collected from the Internet. Moreover, we consider defenses including Neural Cleanse and MNTD (empirical defenses) as well as PatchGuard (a provable defense). Our results show that these defenses are insufficient to defend against BadEncoder, highlighting the needs for new defenses against our BadEncoder. Our code is publicly available at: https://github.com/jjy1994/BadEncoder.
研究动机与目标
- 为解决自监督学习流水线中安全研究的缺乏,特别是针对后门威胁的研究。
- 开发一种新型后门攻击,其目标是破坏预训练编码器阶段,而非下游分类器训练阶段。
- 确保受污染的下游分类器在干净输入上保持高准确率,同时可靠地将嵌入触发器的输入误分类为指定类别。
- 评估 BadEncoder 在真实世界中公开可用的预训练编码器(如 CLIP 和基于 ImageNet 的模型)上的有效性。
- 测试现有防御机制——经验性与可证明性——对这一新型攻击面的鲁棒性。
提出的方法
- 将后门注入预训练编码器建模为一个优化问题,以最小化在嵌入触发器的输入上的损失,同时保持干净输入的准确率。
- 使用基于梯度下降的方法更新编码器参数,以嵌入在攻击者定义条件下引发误分类的触发器。
- 利用目标类别参考图像和影子数据集(可能不同于预训练数据)来指导优化过程。
- 注入一种后门,使得任何包含特定触发器的输入均被分类为目标类别,无论下游任务为何。
- 通过在目标和非目标下游任务上均保持高干净输入准确率,确保攻击的隐蔽性。
- 对多个目标类别和下游任务同时应用攻击,每个(任务,类别)对使用独立的触发器。

实验结果
研究问题
- RQ1是否能够有效针对自监督学习中的预训练图像编码器实施后门攻击,而无需破坏下游分类器训练?
- RQ2BadEncoder 在实现高攻击成功率的同时,对干净输入的下游分类器实用性的保持程度如何?
- RQ3针对编码器而非分类器的后门攻击,现有经验性防御机制(如 Neural Cleanse 和 MNTD)的有效性如何?
- RQ4可证明防御机制(如 PatchGuard)能否为编码器级别的后门攻击提供足够的鲁棒性?
- RQ5此类攻击对现实世界中生产级自监督模型(如 CLIP 和基于 ImageNet 的编码器)有何影响?
主要发现
- BadEncoder 在多个数据集上实现了超过 95% 的高攻击成功率,同时在目标和非目标下游任务上均保持超过 90% 的干净输入准确率。
- 该攻击成功将后门行为传播至基于受污染编码器构建的下游分类器,即使下游分类器在零样本或极少标注数据上进行训练亦成立。
- Neural Cleanse 和 MNTD 两种最先进的经验性防御机制未能检测到编码器中的后门,表明其在应对编码器级别攻击时存在局限性。
- PatchGuard 作为一种可证明防御机制,在 BadEncoder 攻击下提供的鲁棒性保证不足,表明当前认证防御对这一威胁面无效。
- 该攻击在真实世界预训练编码器上有效,包括 Google 的 ImageNet 编码器和 OpenAI 的 CLIP,证明了其实际可行性与现实世界影响。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。