본문 바로가기

AI

[논문 리뷰] BEAT: Visual Backdoor Attacks on VLM-based Embodied Agents via Contrastive Trigger Learning (ICLR 2026)

기존의 Backdoor 공격과 달리 VLM embodied agent backdoor로, 어떤 object trigger를 보면 위험한 행동을 하도록 유도하는 backdoor attack 방식을 제안한다.

Introduction

최근 VLM의 발전으로 embodied agent는 별도의 시각적 모듈없이도, egocentric visual input만으로 "see-think-act"가 가능해졌다.
-> visual backdoor attack의 범위도 넓어진다.

예를 들어, 평상시에는 제대로 동작했다가도, visual trigger인 칼이 보이면 갑자기 소파에 칼을 올려놓는다든지 등의 위험한 행동을 하도록 공격하는 것이다. 

이 논문에서는 two-stage 방식으로 진행되는데,
첫번째는 SFT(Supervised fine-tuning)이고
두번째는 Contrastive Trigger Learning(CTL)이다.

이 두가지 방식을 통해 trigger가 없는 경우에는 정상적인 행동을 하도록,
trigger가 나타나면 악의적인 행동을 하도록 유도하는 것이다.

BEAT: BACKDOOR ATTACKS ON VLM-BASED EMBODIED AGENTS

VLM Emdodied Agent

user가 명령 q를 주면 지금 보고있는 프레임 v와 이전의 행동과 그 결과인 h를 보고 행동 a를 결정한다. 행동을 실행하면 environment가 피드백과 다음 프레임을 준다.
이걸 반복적으로 실행하면서 trajectory를 만든다.

THREAT MODEL

base model에 backdoor fine-tuning을 통해, malicious policy를 만든다.


평소에는 정상적이게 작동하다가, trigger가 보이는 t 시점부터는 위험한 행동을 하도록 하는 것이 backdoor의 목표이다.

DATA CONSTRUCTION

Benign Dataset


각 agent가 trigger가 없는 환경에서의 목표를 달성한 trajectory를 이용해 benign dataset을 생성한다.

Backdoor Dataset


trigger가 보이는 t 시점 이후부터 rule-based malicious policy에 의해 행동하도록 데이터셋을 생성한다.

Contrastive Dataset

trigger가 등장했을 때의 행동과 trigger가 등장하지 않았을 경우의 행동을 샘플링한다.

TWO-STAGE BACKDOOR FINE-TUNING

backdoor는 1. 정상적인 환경에서는 정상적으로 작동해야하고
2. trigger를 발견하면 악의적인 행동을 해야하고
3. trigger가 없을 때 악의적인 행동을 하면 안 된다.

Stage 1: Supervised Fine-tuning (SFT)

정상적인 환경일 때의 행동과 trigger가 있을 때의 행동을 모두 학습하는 과정이다.

Stage 2: Contrastive Trigger Learning (CTL)

정상적인 환경일 때는 정상적인 행동을 하도록, trigger가 있는 환경에서는 악의적인 행동을 하도록 유도한다.

Experiments

 


첫번째 이미지는 원래의 행동을 하다가 칼을 발견하고 소파에 칼을 올려두는 행동을 하도록 유도한 것이고,
두번째 이미지는 keychain을 찾아서 선반에 올려놓는 행위를 하다가 꽃병을 발견하고 던져버리는 행동을 유도한 것이다.

Limitations

embodied agent가 see-think-act를 알아서 진행한다는 점에서 모델이 행동하는 중간에 attack을 넣는다는 점은 흥미로웠지만 몇가지의 행동에 대해서만 attack을 진행하기에 range가 좁다는 점이 아쉬웠고,
특정 물체를 trigger로 주는 것이 아니라 VLM이 어떤 물체가 위험하다고 판단이 되면 그 물체의 속성을 이용해서 (칼이면 자른다든지 유리면 던진다든지 등의) 위험한 행동을 유도할 수도 있을 것 같다.
만약 여러 물체가 있다면 trigger인 물체와 아닌 물체가 있다면 어떤 행동을 먼저 하게 될지도 궁금하다. (순서를 정상적인 행동을 먼저하고 trigger를 보이게 한 것을 보면 trigger에 먼저 반응할지도..?)