AI 프롬프트 주입 공격이란 무엇이며 어떻게 작동하나요?

핵심 요약

  • AI 프롬프트 주입 공격은 AI 모델을 조작하여 악의적인 결과를 생성하며, 이는 피싱 공격으로 이어질 위험성을 내포합니다.
  • 프롬프트 주입 공격은 DAN(Do Anything Now) 공격 및 간접 주입 공격과 같은 다양한 방식으로 실행될 수 있으며, 이는 AI의 잠재적 오용 가능성을 높입니다.
  • 간접 프롬프트 주입 공격은 신뢰할 수 있는 AI 모델로부터 받은 응답을 변조할 수 있어 사용자에게 가장 큰 위협을 가합니다.

AI 프롬프트 주입 공격은 우리가 사용하는 AI 도구의 결과물을 변형시켜 악의적인 결과로 유도할 수 있습니다. 그렇다면 AI 프롬프트 주입 공격은 어떻게 이루어지며, 이러한 공격으로부터 우리 자신을 어떻게 보호할 수 있을까요?

AI 프롬프트 주입 공격이란 무엇인가?

AI 프롬프트 주입 공격은 생성형 AI 모델의 취약점을 이용해 그 결과물을 조작하는 행위입니다. 이러한 공격은 사용자가 직접 수행하거나, 외부 사용자가 간접적으로 주입할 수 있습니다. DAN(Do Anything Now) 공격은 최종 사용자인 사용자에게 직접적인 위험을 초래하지 않지만, 다른 형태의 공격은 생성형 AI에서 얻는 결과물을 이론적으로 왜곡할 수 있습니다.

예를 들어, 누군가가 AI를 조작하여 AI의 권위와 신뢰를 악용해 사용자의 사용자 이름과 비밀번호를 탈취하는 피싱 공격을 실행하도록 지시할 수 있습니다. 이론적으로 자율 AI(예: 메시지 읽기 및 응답)는 원치 않는 외부 명령을 받아 그에 따라 조치를 취할 수도 있습니다.

프롬프트 주입 공격은 어떻게 작동하는가?

프롬프트 주입 공격은 사용자의 인지나 동의 없이 AI에 추가적인 지침을 제공하는 방식으로 이루어집니다. 공격자는 DAN 공격, 간접 프롬프트 주입 공격 등 다양한 방법을 통해 이를 수행할 수 있습니다.

DAN(Do Anything Now) 공격

DAN(Do Anything Now) 공격은 ChatGPT와 같은 생성형 AI 모델을 ‘탈옥’시키는 일종의 프롬프트 주입 공격입니다. 이러한 탈옥 공격은 최종 사용자에게 직접적인 위험을 초래하지 않지만, AI의 능력을 확장시켜 오용될 수 있는 가능성을 높입니다.

예를 들어, 보안 연구원인 알레한드로 비달은 DAN 프롬프트를 사용하여 OpenAI의 GPT-4가 키로거용 Python 코드를 생성하도록 했습니다. 악의적으로 사용되는 탈옥된 AI는 사이버 범죄 관련 기술 장벽을 크게 낮추고, 새로운 해커들이 더욱 정교한 공격을 감행할 수 있도록 만들 수 있습니다.

훈련 데이터 오염 공격

훈련 데이터 오염 공격은 정확히 프롬프트 주입 공격으로 분류할 수는 없지만, 작동 방식과 사용자에게 미치는 위험 측면에서 매우 유사합니다. 프롬프트 주입 공격과는 달리, 훈련 데이터 오염 공격은 공격자가 AI 모델이 사용하는 훈련 데이터를 변조할 때 발생하는 일종의 머신러닝 적대적 공격입니다. 결과는 동일합니다. 즉, 오염된 결과물과 변형된 동작입니다.

훈련 데이터 오염 공격의 잠재적 응용 분야는 사실상 무한합니다. 예를 들어, 채팅이나 이메일 플랫폼에서 피싱 시도를 걸러내는 데 사용되는 AI는 이론적으로 훈련 데이터를 변조할 수 있습니다. 공격자가 AI 중재자에게 특정 유형의 피싱 시도를 허용해야 한다고 가르치면, 탐지되지 않은 채로 피싱 메시지를 보낼 수 있습니다.

훈련 데이터 오염 공격은 사용자에게 직접적인 해를 끼칠 수는 없지만, 다른 위협을 야기할 수 있습니다. 이러한 공격으로부터 자신을 보호하려면 AI가 완벽하지 않으며, 온라인에서 접하는 모든 것을 주의 깊게 검토해야 함을 기억해야 합니다.

간접 프롬프트 주입 공격

간접 프롬프트 주입 공격은 최종 사용자인 사용자에게 가장 큰 위협을 가하는 유형의 프롬프트 주입 공격입니다. 이러한 공격은 원하는 입력을 받기 전에 외부 자원(예: API 호출)에 의해 생성 AI에 악의적인 명령이 입력될 때 발생합니다.

그렉셰이크/
GitHub

“간접 프롬프트 주입으로 실제 LLM 통합 애플리케이션 손상”이라는 제목의 논문이 arXiv [PDF]에 발표되었습니다. 이 논문에서는 숨겨진 텍스트(사람의 눈에는 보이지 않지만 AI 모델은 완벽하게 읽을 수 있음)를 사용하여 정보를 은밀하게 주입함으로써, 답변 내에서 사용자가 피싱 웹 사이트에 가입하도록 AI에 지시할 수 있는 이론적 공격을 시연했습니다. 같은 연구팀이 GitHub에 기록한 또 다른 공격은 Copilot(이전 빙챗)이 신용카드 정보를 얻으려는 실시간 지원 에이전트인 척하도록 유도한 사례를 보여주었습니다.

간접적인 프롬프트 주입 공격은 신뢰할 수 있는 AI 모델로부터 받은 답변을 조작할 수 있다는 점에서 위협적입니다. 그러나 그것만이 이들이 제기하는 유일한 위협은 아닙니다. 앞서 언급한 바와 같이, 이는 사용자가 사용하는 자율 AI가 예상치 못한(그리고 잠재적으로 해로운) 방식으로 행동하게 만들 수도 있습니다.

AI 프롬프트 주입 공격은 위협인가?

AI 프롬프트 주입 공격은 분명히 위협이지만, 이러한 취약점이 실제로 어떻게 악용될지는 정확히 알려져 있지 않습니다. 성공적인 AI 프롬프트 주입 공격은 아직까지 공식적으로 보고된 바 없으며, 알려진 대부분의 시도는 실제로 해를 끼칠 의도가 없는 연구자들에 의해 수행되었습니다. 그러나 많은 AI 연구자들은 AI 프롬프트 주입 공격을 AI를 안전하게 구현하는 데 가장 어려운 과제 중 하나로 간주합니다.

또한 당국도 AI 프롬프트 주입 공격의 위협을 간과하지 않고 있습니다. 워싱턴 포스트에 따르면, 2023년 7월, 연방거래위원회(Federal Trade Commission)는 OpenAI를 조사하여 알려진 프롬프트 주입 공격 발생에 대한 추가 정보를 확보하려 했습니다. 아직까지 실험을 통해 성공한 공격은 확인되지 않았지만, 상황은 언제든지 바뀔 수 있습니다.

공격자들은 끊임없이 새로운 방법을 찾고 있으며, 앞으로 그들이 프롬프트 주입 공격을 어떻게 악용할지는 예측하기 어렵습니다. AI에 대한 건전한 회의주의를 적용하면 자신을 보호하는 데 도움이 될 수 있습니다. AI 모델은 매우 유용하지만, AI에는 없는 인간의 판단력이 중요하다는 점을 기억하는 것이 중요합니다. Copilot과 같은 도구에서 얻는 결과물을 주의 깊게 검토하고, AI 도구가 발전하고 개선됨에 따라 현명하게 사용해야 합니다.