Yolo 비전 선전
선전
지금 참여하기
용어집

적대적 공격

AI 시스템에 대한 적대적 공격의 영향, 유형, 실제 사례 및 AI 보안을 강화하기 위한 방어 전략을 알아보세요.

적대적 공격은 기계 학습(ML) 모델을 속여 높은 확신도로 잘못된 예측을 하도록 설계된 정교한 조작 기법의 한 유형이다. 이러한 공격은 이미지, 오디오, 텍스트 등 입력 데이터에 미묘하고 종종 감지하기 어려운 변동을 도입하는 방식으로 작동한다. 이러한 변화는 인간 관찰자에게는 무해하거나 무작위로 보이지만, 고차원 신경망의 결정 경계에 존재하는 특정 수학적 취약점을 악용합니다. 인공지능(AI) 시스템이 안전이 중요한 인프라의 핵심이 되면서, 이러한 취약점이 어떻게 작용하는지 이해하는 것은 견고한 AI 안전 프로토콜과 방어 메커니즘을 개발하는 데 필수적입니다.

적대적 공격의 작동 방식

일반적인 딥러닝(DL) 훈련 과정에서 모델은 훈련 데이터셋에 대한 오류를 최소화하기 위해 가중치를 최적화합니다. 그러나 이러한 모델들은 본질적으로 다차원 공간에서 복잡한 매핑을 생성합니다. 적대적 공격은 입력값을 경계 너머로 밀어내 모델의 분류를 뒤집기 위해 필요한 이 공간 내 정확한 "방향"을 계산합니다. 예를 들어, 컴퓨터 비전(CV) 분야에서 판다 이미지의 픽셀 값을 계산된 양의 "노이즈"로 변경하면 시스템이 이를 기븐으로 오분류할 수 있습니다. 비록 인간의 눈에는 여전히 판다로 보일지라도 말이죠.

공격 전략은 일반적으로 공격자가 대상 시스템에 접근할 수 있는 수준에 따라 분류됩니다:

  • 화이트박스 공격: 공격자는 모델의 아키텍처, 기울기, 모델 가중치에 대한 완전한 투명성을 확보합니다. 이를 통해 수학적으로 가장 효과적인 교란을 계산할 수 있으며, 종종 빠른 기울기 부호 방법(FGSM)과 같은 기법을 사용합니다.
  • 블랙박스 공격: 공격자는 내부 모델 매개변수에 대한 지식이 없으며 입력과 출력만 관찰할 수 있습니다. 공격자들은 종종 "대체 모델"을 사용하여 대상 시스템으로 효과적으로 전이되는 적대적 예시를 생성하는데, 이를 전이성이라고 합니다.

실제 애플리케이션 및 위험

이론적 연구에서 자주 논의되지만, 적대적 공격은 실제 환경에서의 배포에 실질적인 위험을 초래하며, 특히 자율 시스템과 보안 분야에서 그러하다.

  • 자율주행 차량: 자율주행 차량은 교통 표지판을 해석하기 위해 물체 감지에 크게 의존합니다. 연구에 따르면 정지 표지판에 정교하게 제작된 스티커나 테이프를 부착하면 차량의 비전 시스템이 이를 속도 제한 표지판으로 인식하도록 속일 수 있습니다. 이러한 유형의 물리적 세계 공격은 자동차 애플리케이션에서 인공지능의 위험한 오작동을 초래할 수 있습니다.
  • 얼굴 인식 회피자: 생체 인식 기반 접근 제어 보안 시스템은 적대적 "패치"로 인해 무력화될 수 있습니다. 이는 안경이나 의류에 착용하는 인쇄 패턴으로, 특징 추출 과정을 방해합니다. 이를 통해 권한 없는 개인이 감지를 완전히 회피하거나 특정 사용자를 사칭하여 보안 경보 시스템을 우회할 수 있습니다.

Python으로 적대적 예제 생성하기

일부 모델이 얼마나 취약한지 이해하려면 이미지가 얼마나 쉽게 변형될 수 있는지 살펴보는 것이 도움이 됩니다. YOLO26과 같은 모델을 통한 표준 추론은 일반적인 용도로는 견고하지만, 연구자들은 모델 모니터링과 방어 능력을 향상시키기 위해 종종 공격을 시뮬레이션합니다. 다음 개념적 예시는 PyTorch 사용하여 기울기를 활용해 이미지에 대한 적대적 변형(노이즈)을 계산하는 방식을 PyTorch .

import torch.nn.functional as F

# Assume 'model' is a loaded PyTorch model and 'image' is a normalized tensor
# 'target_class' is the correct label index for the image


def generate_adversarial_noise(model, image, target_class, epsilon=0.01):
    # Enable gradient calculation for the input image
    image.requires_grad = True

    # Forward pass: get prediction
    output = model(image)

    # Calculate loss based on the correct class
    loss = F.nll_loss(output, target_class)

    # Backward pass: calculate gradients of loss w.r.t input
    model.zero_grad()
    loss.backward()

    # Create perturbation using the sign of the data gradient (FGSM)
    # This pushes the image in the direction of maximizing error
    perturbation = epsilon * image.grad.data.sign()

    return perturbation

관련 개념

적대적 공격을 다른 형태의 모델 실패나 조작과 구분하는 것이 중요하다:

  • 데이터 포이즌: 추론(테스트) 단계에서 입력을 조작하는 적대적 공격과 달리, 데이터 포이즌은 모델 구축 전 훈련 데이터 자체를 변조하여 숨겨진 백도어나 편향을 내장하는 것을 의미합니다.
  • 프롬프트 주입: 이는 대규모 언어 모델(LLM) 및 텍스트 인터페이스에 특화된 기법입니다. 개념적으로는 유사하지만—모델을 속이는 행위—픽셀이나 신호 데이터의 수학적 교란이 아닌 의미론적 언어 조작에 의존합니다.
  • 과적합: 이는 모델이 훈련 데이터의 근본적인 패턴 대신 잡음을 학습하는 훈련 실패입니다. 과적합된 모델은 결정 경계가 지나치게 복잡하고 취약하기 때문에 적대적 공격에 더 취약한 경우가 많습니다.

이러한 공격에 대한 방어 체계 구축은 현대적 MLOps의 핵심 요소입니다. 적대적 훈련(훈련 세트에 공격 대상 예시를 추가하는 기법)과 같은 기술은 모델의 내성을 강화합니다. Ultralytics 같은 Ultralytics 엄격한 훈련 및 검증 파이프라인을 지원하여, 팀이 에지 디바이스에 배포하기 전에 모델의 견고성을 평가할 수 있도록 합니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기