[논문 리뷰] 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.
연구 동기 및 목표
- 자기지도 학습 파이프라인의 보안 연구 부족, 특히 백도어 위협에 대비한 연구를 보완하기 위해.
- 하류 분류기 훈련이 아닌 사전 훈련된 인코더 단계를 손상시키는 새로운 백도어 공격을 개발하기 위해.
- 정상 입력에 대해 높은 정확도를 유지하면서도 트리거가 삽입된 입력을 신뢰성 있게 잘못 분류하는 백도어가 부착된 하류 분류기가 정상적으로 기능하도록 보장하기 위해.
- CLIP 및 ImageNet 기반 모델과 같은 실세계에서 공개된 사전 훈련된 인코더에 대해 BadEncoder의 효과를 평가하기 위해.
- 기존의 실증적 및 증명 가능한 방어 기법이 이 새로운 공격 표면에 대해 얼마나 견고한지 테스트하기 위해.
제안 방법
- 정상 입력에서의 손실을 최소화하면서도 정상 정확도를 유지하는 조건에서, 트리거가 삽입된 입력에 대해 손실을 최소화하는 최적화 문제로 백도어 삽입을 공식화한다.
- 기울기 하강 기반 방법을 사용하여 인코더의 파라미터를 업데이트함으로써, 공격자가 정의한 조건 하에서 잘못 분류를 유도하는 트리거를 삽입한다.
- 목표 클래스의 기준 이미지와, 사전 훈련 데이터와 다를 수 있는 샤펠로 데이터셋을 활용하여 최적화를 이끌어낸다.
- 특정 트리거가 삽입된 임의의 입력이 목표 클래스로 잘못 분류되도록 트리거를 삽입한다. 이는 하류 작업에 관계없이 동일하게 작동한다.
- 정상 입력에 대한 정확도를 유지함으로써 공격의 도청성을 확보하며, 목표 및 비목표 하류 작업 모두에서 정상 입력에 대해 높은 정확도를 유지한다.
- 다양한 목표 클래스와 하류 작업을 동시에 공격하며, 각 (작업, 클래스) 조합에 대해 고유한 트리거를 사용한다.

실험 결과
연구 질문
- RQ1자기지도 학습에서 사전 훈련된 이미지 인코더에 대해 백도어 공격를 효과적으로 시행할 수 있는가? 이는 하류 분류기 훈련을 손상시키지 않아도 된다.
- RQ2BadEncoder는 얼마나 높은 공격 성공률를 달성하면서도 정상 입력에 대해 하류 분류기의 유용성을 유지하는가?
- RQ3Neural Cleanse 및 MNTD와 같은 최신 실증적 방어 기법이 분류기 대신 인코더를 공격 대상으로 삼는 백도어 공격에 얼마나 효과적인가?
- RQ4PatchGuard와 같은 증명 가능한 방어 기법이 인코더 수준의 백도어 공격에 대해 얼마나 강건한가?
- RQ5CLIP 및 ImageNet 기반 인코더와 같은 실세계의 프로덕션 수준 자기지도 학습 모델에 대해 이러한 공격의 영향은 무엇인가?
주요 결과
- BadEncoder는 여러 데이터셋에서 공격 성공률가 95% 이상을 초과하면서도, 목표 및 비목표 하류 작업 모두에서 정상 정확도가 90% 이상을 유지한다.
- 백도어가 삽입된 인코더를 기반으로 한 하류 분류기조차도, 라벨이 0 또는 최소한의 데이터로만 훈련된 경우에도 백도어 행동이 성공적으로 전파된다.
- 최신 실증적 방어 기법인 Neural Cleanse와 MNTD는 인코더 내의 백도어를 탐지하지 못하며, 이는 이러한 기법이 인코더 수준의 공격에 대해 한계를 지닌다는 것을 시사한다.
- 증명 가능한 방어 기법인 PatchGuard는 BadEncoder의 공격에 대해 충분한 강건성 보장을 제공하지 못하며, 이는 현재의 인증된 방어 기법이 이 공격 표면에 대해 효과적이지 않음을 시사한다.
- 이 공격는 실세계의 사전 훈련된 인코더, 즉 Google의 ImageNet 인코더와 OpenAI의 CLIP에 대해서도 효과적이며, 실용적 타당성과 실제 영향을 입증한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.