AI 데이터 포이즈닝이란?

AI 데이터 포이즈닝은 AI 모델의 학습 데이터에 의도적으로 편향성을 도입하여 출력을 왜곡하려는 시도입니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • AI 데이터 포이즈닝 공격의 작동 방식 설명
  • AI 및 LLM 데이터 포이즈닝 공격 유형 설명
  • 데이터 포이즈닝 방지 방법 목록

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

AI 데이터 포이즈닝이란?

인공 지능(AI) 데이터 포이즈닝은 공격자가 AI 학습 데이터를 변경하여 AI 또는 머신 러닝 모델의 출력을 조작하는 것을 말합니다. AI 데이터 포이즈닝 공격에서 공격자의 목표는 모델이 추론하는 동안 편향되거나 위험한 결과를 생성하도록 하는 것입니다.

AI 및 머신 러닝* 모델에는 학습 데이터와 알고리즘이라는 두 가지 주요 요소가 있습니다. 알고리즘을 자동차 엔진과 같다고 생각하고, 학습 데이터를 엔진에 동력을 공급하는 휘발유와 같다고 생각하면 됩니다. 데이터 때문에 AI 모델이 작동합니다. 데이터 포이즈닝 공격은 누군가가 휘발유에 자동차의 주행 성능을 저하시키는 성분을 추가하는 것과 같습니다.

더 많은 기업과 사람들이 일상 활동에서 AI에 의존하기 시작하면서 AI 데이터 포이즈닝의 잠재적 결과가 더욱 심각해졌습니다. AI 데이터 포이즈닝 공격이 성공하면 모델의 출력이 공격 배후에 있는 사람에게 유리한 방식으로 영구적으로 변경될 수 있습니다.

AI 데이터 포이즈닝은 대규모 언어 모델(LLM)에서 특히 우려되는 문제입니다. 데이터 포이즈닝은 LLM 부문 OWASP 톱 10에 포함되어 있으며, 최근 여러 해에 걸쳐 연구자들은 의료, 코드 생성, 텍스트 생성 모델에 영향을 미치는 데이터 포이즈닝 취약성에 대해 경고해 왔습니다.

*'머신 러닝'과 '인공 지능'은 때때로 같은 의미로 사용되지만, 두 용어는 약간 다른 계산 기능 집합을 나타냅니다. 하지만 머신 러닝은 AI의 한 유형입니다.

데이터 포이즈닝 공격은 어떻게 작동할까요?

AI 개발자는 방대한 양의 데이터를 사용하여 모델을 학습시킵니다. 기본적으로 학습 데이터 세트는 모델에 예시를 제공하고, 모델은 이러한 예시를 통해 일반화하는 방법을 학습합니다. 데이터 세트에 예시가 많을수록 데이터가 정확해지고 상대적으로 편향되지 않는 한 모델이 더 정교하고 정확해집니다.

데이터 포이즈닝이 되면 학습 데이터 세트에 의도적으로 편향성이 초래되어 모델 알고리즘의 시작점이 변경되므로 개발자가 원래 의도한 것과 다른 결과가 나오게 됩니다.

교사가 학생들이 풀 수 있도록 수학 문제를 작성한다고 상상해 보세요(예: '47 * (18 + 5) = ?'). 정답은 1,081입니다. 그러나 어느 학생이 '47'을 '46'으로 살짝 바꿔 놓으면 답은 이제 1,081이 아니라 1,058이 됩니다. 데이터 포이즈닝 공격은 바꿔치기 한 그 학생과 같습니다. 시작 데이터가 약간 바뀌면 답도 바뀝니다.

AI 데이터 포이즈닝 공격은 어떻게 발생할까요?

학습 데이터에 대한 무단 변경은 다양한 출처에서 이루어질 수 있습니다.

내부자 공격: 학습 데이터에 합법적으로 액세스할 수 있는 사람이 편향성, 잘못된 데이터, 기타 변경 사항을 도입하여 출력을 손상시킬 수 있습니다. 이러한 공격은 데이터에 대한 승인된 액세스 권한이 없는 외부 제3자의 공격보다 감지하고 차단하기가 더 어렵습니다.

공급망 공격: 대부분의 AI 및 머신 러닝 모델은 다양한 출처의 데이터 세트에 의존하여 모델을 학습시킵니다. 이러한 출처 중 하나 이상에는 모델 학습 및 미세 조정에 해당 데이터를 사용하는 모든 모델에 영향을 미치는 '포이즈닝된' 데이터가 포함될 수 있습니다.

무단 액세스: 공격자 학습 데이터 세트에 액세스하는 방법은 이전 손상을 통한 내부망 이동 이용, 피싱을 이용한 개발자의 자격 증명 획득, 그 사이에 여러 가지 잠재적인 공격을 이용하는 것 등 다양합니다.

데이터 포이즈닝 공격의 두 가지 주요 범주는?

  • 직접(또는 표적) 공격: 이러한 공격은 특정 쿼리 또는 작업에 대한 응답으로만 모델의 출력을 왜곡하거나 변경하는 것을 목표로 합니다. 이러한 공격을 받으면 모델은 다른 면에서는 변경되지 않은 채 거의 모든 질의에 대해 예상한 응답을 제공합니다. 예를 들어 공격자 AI 기반 이메일 보안 필터를 속여 특정 악의적 URL을 허용하면서 다른 면에서는 예상대로 작동하도록 할 수 있습니다.
  • 간접(또는 비표적) 공격: 이러한 공격은 일반적으로 모델의 성능에 영향을 미치는 것을 목표로 합니다. 간접 공격은 단순히 모델 전체의 성능을 느리게 하거나 특정 종류의 답변을 제공하도록 편향되도록 하는 것을 목표로 할 수 있습니다. 예를 들어 외국의 공격자는 선전 목적으로 특정 국가 내에서 잘못된 정보를 제공하도록 범용 LLM을 편향되도록 하려고 할 수 있습니다.

AI 데이터 포이즈닝 공격의 유형은?

공격자가 자신의 목적을 위해 AI 모델의 데이터를 포이즈닝하는 방법은 여러 가지가 있습니다. 알아야 할 가장 중요한 기술은 다음과 같습니다.

  • 백도어 포이즈닝: 이 공격은 모델에 숨겨진 취약점을 도입하여 공격자가 알고 있는 특정한 트리거에 대응하여 안전하지 않은 방식으로 동작하도록 합니다. 백도어 포이즈닝은 숨겨진 백도어가 있는 AI 모델이 다른 면에서는 정상적으로 작동하므로 특히 위험합니다.
  • 잘못된 레이블 지정: 공격자가 모델의 학습 데이터 세트 내에서 데이터에 레이블을 지정하는 방식을 변경하여 학습 후 모델이 항목을 잘못 식별하도록 할 수 있습니다.
  • 데이터 삽입 및 조작: 이러한 공격은 데이터 세트에서 데이터를 변경, 추가, 제거합니다. 이러한 공격의 목표는 AI 모델을 특정 방향으로 편향되게 만드는 것입니다.
  • 가용성 공격: 이 공격은 전반적인 성능을 저하시키는 데이터를 삽입하여 모델의 속도를 늦추거나 충돌을 일으키는 것을 목표로 합니다.

데이터 포이즈닝 방지 방법

데이터 유효성 검사: 학습 전에 데이터 세트를 분석하여 악의적이거나 의심스럽거나 이상치인 데이터를 식별해야 합니다.

최소 권한 원칙: 달리 말하자면, 학습 데이터에 절대적으로 액세스해야 하는 사람과 시스템만 액세스할 수 있어야 합니다. 최소 권한 원칙은 보안에 대한 Zero Trust 접근 방식의 핵심 원칙이며, 이는 내부망 이동 및 자격 증명 손상을 방지하는 데 도움이 될 수 있습니다.

다양한 데이터 출처: 더 광범위한 데이터 출처에서 데이터를 가져오면 주어진 데이터 세트에서의 편향성으로 인한 영향을 줄이는 데 도움이 될 수 있습니다.

모니터링 및 감사: 누가 교육 데이터를 변경했는지, 무엇이 변경되었는지, 언제 변경되었는지 추적하고 기록하면 개발자가 의심스러운 패턴을 식별하거나 데이터 세트가 포이즈닝된 후의 공격자의 활동을 추적할 수 있습니다.

적대적 학습: 여기에는 의도적으로 오해의 소지가 있는 입력을 인식하도록 AI 모델을 학습시키는 것이 포함됩니다.

방화벽과 같은 다른 애플리케이션 방어 조치도 AI 모델에 적용할 수 있습니다. 데이터 포이즈닝 및 기타 공격을 방지하기 위해 Cloudflare에서는 AI용 방화벽을 제공하며, 이는 LLM 앞에 배포될 경우 남용 시도가 도달하기 전에 이를 식별하고 차단할 수 있습니다. AI용 방화벽에 대해 자세히 알아보세요.