AI + Security

AI Jailbreak의 공격 원리와 방어 전략

oose 2025. 2. 7. 10:21

 

 

 

AI jailbreaks: What they are and how they can be mitigated | Microsoft Security Blog

Microsoft security researchers, in partnership with other security experts, continue to proactively explore and discover new types of AI model and system vulnerabilities. In this post we are providing information about AI jailbreaks, a family of vulnerabil

www.microsoft.com

 

 

1. AI Jailbreak란

 

Jailbreak는 AI 시스템의 guardrail이 의도대로 작동하지 않도록 만드는 것이다. 중요한 점은 jailbreak 자체가 최종적인 피해가 아니라는 것이다. 어떤 guardrail이 뚫렸느냐에 따라 실제 피해가 달라진다. 예를 들어, Jailbreak → 단순히 유해한 답변 생성과 Jailbreak → 시스템이 권한 없는 데이터를 가져옴 → 외부로 전송은 보안상 심각도가 전혀 다르다. Microsoft는 jailbreak가 prompt injection, evasion, model manipulation과 같은 다른 공격 기법과 함께 사용될 수 있다고 설명한다.

 

* 용어 설명 

guardrail : 유해한 콘텐츠 생성 방지, 위험한 명령 수행 방지, 서비스 운영자의 정책 준수, 특정 사용자가 시스템의 의사결정에 부당하게 영향을 미치는 것 방지, 민감한 정보 노출 방지

 

@참고@

prompt injection에 대한 포스팅은 아래에서 확인할 수 있습니다. 

https://y079.tistory.com/300

 

An Early Categorization of Prompt Injection Attacks on Large Language Models

* 아래 제목을 누르면 논문 링크로 연결됩니다. An Early Categorization of Prompt Injection Attacks on Large Language Models이 논문은 LLM과 AI 챗봇에서 발생하는 프롬프트 인젝션 공격을 조사하고, 당시 알려진 공

y079.tistory.com

 

 

 

2. 왜 LLM은 Jailbreak에 취약한가?

Microsoft는 LLM을 이해하기 위한 비유로 “열심히 도와주려 하지만 경험이 부족한 직원”을 제시한다. LLM의 특성을 다음과 같이 설명한다.

 

아래 예시를 보면 이해가 된다. 

 

① Over-confident

AI가 실제로 맞는지 확실하지 않은 내용도 자신 있게 말할 수 있다. 즉, 그럴듯하게 말하는 것과 실제로 정확한 것은 다르다.

 

② Gullible

LLM은 입력되는 지시와 문맥에 쉽게 영향을 받을 수 있다. 사용자가 어떻게 질문하고 어떤 방식으로 명령하느냐에 따라 모델의 행동이 달라질 수 있다.

 

③ Wants to impress

사용자를 만족시키려고 하는 특성 때문에 안전장치를 우회하도록 설득하거나 조작할 여지가 생긴다. 즉, 모델이 항상 악의적인 의도를 가지고 행동하는 것이 아니라 사용자의 지시에 지나치게 순응하면서 guardrail을 벗어날 수 있다.

 

④ Lack of real-world application

LLM은 방대한 지식을 가지고 있지만 그것을 실제 상황에 적용할 때 필요한 판단력이나 현실적인 맥락 이해가 부족할 수 있다. Microsoft는 이를 경험이 부족한 신입 직원에 비유한다.

 

 

3. Microsoft가 보는 생성형 AI의 특징

위 특성을 정리하면 생성형 AI는 다음과 같다.

 

Imaginative but sometimes unreliable: 창의적이지만 때로는 신뢰할 수 없음

Suggestible and literal-minded: 적절한 지침이 없으면 입력에 쉽게 영향을 받고 지시를 문자 그대로 받아들일 수 있음

Persuadable and potentially exploitable: 설득될 수 있고 악용될 가능성이 있음

Knowledgeable yet impractical for some scenarios: 많은 지식을 가지고 있지만 일부 실제 상황에서는 제대로 적용하지 못할 수 있음

 

따라서 보호 장치가 없다면 LLM은 단순히 유해한 내용을 생성하는 데 그치지 않고, 원하지 않는 행동을 수행하거나 민감한 정보를 유출할 수도 있다.

 

 

4. LLM의 Non-deterministic 특성

Microsoft가 강조하는 또 하나의 특징은 non-deterministic(비결정적)이라는 것이다. 즉, 같은 입력을 주더라도 항상 동일한 결과가 나오는 것은 아니다. 따라서 특정 공격이 한 번 성공했다고 해서 항상 동일하게 재현된다는 의미도 아니며, 반대로 한 번 막혔다고 해서 모든 변형 공격이 막혔다고 볼 수도 없다. Microsoft는 AI Red Team의 직접적인 피드백을 학습 과정에 반영하면서 Phi-3의 공격에 대한 내성이 향상된 사례도 언급한다.

 

AI 애플리케이션의 구조

 

5. Microsoft의 핵심 관점: Zero Trust

여기서 상당히 중요한 부분이다. Microsoft는 생성형 AI를 구현할 때 Zero Trust 접근 방식을 권장한다. 핵심은 다음과 같다.

“어떤 생성형 AI 모델도 jailbreak에 취약할 수 있다고 가정하라.”

 

즉, Jailbreak를 완벽하게 막을 수 있다고 가정하지 말고, Jailbreak가 성공했을 때 피해를 최소화하는 방향으로 시스템을 설계해야 한다. 이를 위해서는 단일 방어책이 아니라 Mitigate → Detect → Respond가 가능한 Layered Defense(다층 방어)가 필요하다. 이 부분은 AI 보안에서 굉장히 중요한 관점이다.

 

 

6. Jailbreak가 발생하면 얼마나 위험한가?

Microsoft는 Jailbreak 자체에 고정된 심각도를 부여하면 안 된다고 설명한다. 왜냐하면 실제 위험도는 어떤 guardrail이 우회됐고 그 결과 무엇이 발생했는지에 따라 결정되기 때문이다.

 

<상대적으로 제한적인 경우>

ex. 공격 → 유해한 답변 생성 → 해당 사용자 한 명만 확인이라면 피해 범위가 제한적이다. 물론 유해한 결과이지만 영향 범위가 좁다.

 

반면, 공격 → AI가 자동화된 행동 수행 또는 공격 → 다른 사용자에게 노출되는 콘텐츠 생성이라면 훨씬 심각해진다. 특히 AI가 다른 시스템과 연결되어 자동으로 행동할 수 있다면 Jailbreak의 결과가 단순한 “잘못된 답변”을 넘어 실제 시스템 침해로 이어질 수 있다.

 

따라서 중요한 것은 “Jailbreak가 성공했는가?”보다는 “Jailbreak 성공으로 어떤 결과가 발생했는가?”이다.

 

 

7. Jailbreak로 발생할 수 있는 위험

Microsoft는 크게 AI safety/security risk와 Responsible AI risk로 나눈다.

 

큰 차이는 없지만 사회적인 영향을 끼치는지의 여부에 따라 나뉘는 것 같음

  • AI Safety & Security Risk → 시스템, 데이터, 보안이 뚫리는 문제
  • Responsible AI Risk → AI가 사회적으로 부적절하거나 위험하게 행동하는 문제

AI Safety & Security Risk

①Unauthorized data access: 권한이 없는 데이터에 접근할 수 있다.

②Sensitive data exfiltration: 민감한 정보가 외부로 유출될 수 있다.

③Model evasion: AI 모델의 안전장치나 제한을 회피할 수 있다.

④Generating ransomware: 랜섬웨어와 같은 악성코드 생성으로 이어질 수 있다.

⑤Circumventing policies/compliance: 개별 정책이나 컴플라이언스 시스템을 우회할 수 있다.

 

Responsible AI Risk

① 정책에 위배되는 콘텐츠 생성: 유해하거나 공격적이거나 폭력적인 콘텐츠 등이 생성될 수 있다.

② 위험한 능력에 접근: 원래 제한되어야 하는 위험하거나 범죄적인 행동에 대한 실행 가능한 지침을 생성할 수 있다.

③ 의사결정 시스템 조작: 이 부분이 특히 중요하다. 예를 들어 AI가 대출 심사, 채용 등의 의사결정을 담당한다면 Jailbreak를 통해 공격자가 원하는 방향으로 의사결정을 유도할 가능성이 있다. 즉, LLM이 단순한 챗봇이 아니라 실제 의사결정 시스템의 일부가 되었을 때 위험성이 훨씬 커진다.

④ 외부에 공개될 정도의 비정상적인 행동: AI 시스템이 매우 이상한 행동을 해서 뉴스나 스크린샷 등을 통해 확산되는 상황도 위험으로 분류한다.

⑤ IP infringement: 지적재산권 침해 문제도 발생할 수 있다.

 

 

8. AI Jailbreak는 어떻게 발생하는가?

Microsoft는 크게 두 가지 기본적인 계열로 설명한다.

 

① Classic Jailbreak

시스템의 authorized operator, 즉 시스템을 사용할 권한이 있는 사용자가 직접 jailbreak 입력을 만들어 자신의 권한을 확장하려는 경우다. 쉽게 말하면, 사용자가 직접 AI에게 공격적인 프롬프트를 입력해서 제한을 우회하는 전통적인 형태다. 대표적인 예로 DAN 같은 방식이 있다.

 

② Indirect Prompt Injection

이건 이전 포스팅에서 언급했던 Indirect Prompt Injection과 연결해서 이해하면 된다. AI 시스템이 제3자가 제어할 수 있는 데이터를 처리하는 상황에서 발생한다. 예를 들어 AI가 이메일을 분석하거나, 문서를 읽거나, 웹페이지를 읽거나, 외부 데이터를 처리하는 시스템이라고 해보자. 공격자가 그 데이터에 악성 instruction을 넣어두면, 공격자가 직접 AI에게 명령하지 않았는데도 AI가 외부 데이터에 포함된 악성 명령을 읽고 실행할 수 있다. Microsoft는 이를 indirect prompt injection을 통한 jailbreak의 한 형태로 설명한다.

 

 

9. Jailbreak는 하나의 공격 기법이 아니다

Microsoft는 Jailbreak를 하나의 특정 공격 기법으로 보면 안 된다고 설명한다. 여러 가지 방법으로 guardrail을 우회할 수 있기 때문이다.

 

ex. 단일 입력 기반의 DAN은 하나의 사용자 입력에 특정 지시를 추가하여 모델의 제한을 우회한다. Multi-turn 기반의 Crescendo는 한 번에 공격적인 요청을 하지 않고 여러 번의 대화를 통해 조금씩 원하는 방향으로 대화를 이동시킨다.

 

인간적인 공격 방식도 존재한다. Jailbreak가 반드시 복잡한 기술적인 문자열을 사용하는 것은 아니다. 예를 들어 설득, 사회심리, 감정적인 접근, 모델에게 특정 역할을 부여, 계속해서 질문을 변형하는 방식으로도 안전장치를 우회할 수 있다.

 

반대로 사람이 봤을 때는 아무 의미가 없어 보이는 의미 없는 문자열이나 특수하게 구성된 문자열을 이용해서 AI의 동작을 혼란시키는 방식도 존재한다.

 

따라서 Jailbreak는 하나의 공격 기법이라기보다는, 적절하게 만들어진 입력을 통해 AI의 guardrail을 우회하려는 여러 공격 방법의 집합이라고 이해하는 것이 좋다.

 

 

10. Microsoft의 대응: Defense in Depth

Microsoft가 제시하는 핵심적인 방어 전략은 Defense in Depth(다층 방어)이다. 하나의 필터에 모든 것을 맡기는 것이 아니라 여러 방어 계층을 구성한다. Microsoft가 제시한 주요 방어 계층은 다음과 같다.

 

방어 계층목적

Prompt filtering 악성/위험한 입력 탐지 및 차단
Identity management AI가 접근할 수 있는 권한 관리
Data access controls AI가 접근할 데이터 제한
System metaprompt AI의 기본 행동 규칙 설정
Content filtering AI가 생성한 결과 필터링
Abuse monitoring 악용 시도 모니터링
Model alignment during training 학습 단계에서 모델의 안전성 강화
Threat protection AI workload 자체에 대한 위협 탐지/방어

 

Microsoft의 Azure 환경에서는 각각 Prompt Shields, Managed Identities, Microsoft Purview, System Message Framework, Azure OpenAI Content Filtering, Abuse Monitoring, 모델 학습 단계의 alignment, Defender for Cloud 등의 기술과 연결된다.

 

 

11. 왜 여러 방어 계층이 필요한가?

예를 들어, Input Filter만 사용한다고 생각해보자. 공격자가 필터를 우회하면 바로 모델에 악성 입력이 들어간다.

반대로, Input Filter ->  System Prompt -> Identity / Access Control -> Model -> Output Filter -> Monitoring 처럼 여러 계층을 두면 한 계층이 뚫리더라도 다음 방어 계층에서 공격을 탐지하거나 피해를 제한할 가능성이 생긴다.

 

Microsoft는 이러한 Layered Defense를 통해 jailbreak를 완화하고, 탐지하고, 적절하게 대응할 가능성을 높일 수 있다고 설명한다.

 

 

12. AI Red Teaming과 PyRIT

Microsoft는 보안 전문가와 ML 엔지니어가 자신의 생성형 AI 시스템에서 위험을 적극적으로 찾을 수 있도록 PyRIT(Python Risk Identification Toolkit for generative AI)라는 자동화 프레임워크를 공개했다. 목적은 AI 시스템을 공격자 관점에서 테스트하여 어떤 공격이 가능한지 찾고, 취약점을 확인하고, 방어 효과를 평가하고, 반복적으로 테스트하는 것이다.

즉, AI를 실제 서비스에 배포하기 전에 공격자가 어떻게 AI를 악용할 수 있는지를 Red Team 관점에서 검증하는 것이다.

 

 

13. Benchmark와 Continuous Evaluation

Microsoft는 AI 시스템을 한 번 테스트하고 끝내는 것이 아니라 지속적으로 평가해야 한다고 설명한다. Azure AI Studio를 이용해 benchmark 생성, metric 설정, 지속적인 monitoring, evaluation 등을 수행할 수 있다고 설명한다.

이유는 앞에서 나온 것처럼 새로운 jailbreak 방식이 계속 발견되기 때문이다. 따라서 테스트 → 방어 → 새로운 공격 발견 → 재테스트 → 방어 업데이트가 반복되어야 한다.

 

 

14. Jailbreak 탐지 방법

방어뿐만 아니라 Detection도 중요하다. Microsoft는 AI 시스템을 구성하는 각 요소에서 logging과 monitoring을 활성화할 것을 권장한다. 특히 다음을 기록하고 모니터링해야 한다.

 

① Conversation transcripts

사용자와 AI 사이의 대화 기록 → 어떤 jailbreak 입력이 들어왔는지 확인할 수 있다.

 

② System metaprompt

AI에게 어떤 시스템 지시가 전달되었는지 확인 → 공격 과정에서 시스템 지시가 어떻게 영향을 받았는지 분석할 수 있다.

 

③ Prompt completions

AI 모델이 실제로 생성한 결과 → jailbreak가 성공했는지, 어떤 결과가 생성됐는지 확인할 수 있다.

 

즉, Input → System instruction → Model output 전체 흐름을 기록해야 한다.

 

 

15. Content Safety 설정

Microsoft는 Azure AI Content Safety의 필터 severity threshold를 애플리케이션에 적합한 범위에서 가장 엄격한 수준으로 설정하는 것을 권장한다. 또한 Azure AI Studio를 활용해 AI 애플리케이션의 안전성을 평가할 수 있다고 설명한다.

 

 

16. 취약점을 발견했을 때

새로운 AI 취약점을 발견했다면 Responsible Disclosure를 따르는 것도 중요하다.

즉, 취약점 발견 → 해당 AI 플랫폼/서비스 제공자에게 보고 → 제공자가 수정할 시간을 제공 → 이후 필요한 정보 공개와 같은 방식이다. Microsoft 역시 AI 관련 취약점에 대해 이러한 Responsible Disclosure 절차를 사용한다고 설명한다.

 

 

 

<summary>

AI Jailbreak는 생성형 AI의 Guardrail을 우회하는 여러 공격 방법의 집합이며, Microsoft는 이를 완전히 막을 수 있다고 가정하기보다 Zero Trust 관점에서 Prompt·Identity·Data·Model·Output·Monitoring 등 여러 계층의 방어를 적용하고, 지속적인 Red Teaming과 평가를 통해 탐지·완화·대응해야 한다고 설명한다.

 

++


https://www.microsoft.com/en-us/security/blog/2024/06/26/mitigating-skeleton-key-a-new-type-of-generative-ai-jailbreak-technique/

 

Mitigating Skeleton Key, a new type of generative AI jailbreak technique | Microsoft Security Blog

Microsoft recently discovered a new type of generative AI jailbreak method called Skeleton Key that could impact the implementations of some large and small language models. This new method has the potential to subvert either the built-in model safety or p

www.microsoft.com