Claude Platform Docs
  • Messages
  • Managed Agents
  • 관리자

Search...
⌘K
사용 사례
개요티켓 라우팅고객 지원 에이전트콘텐츠 조정법률 문서 요약
프롬프트 엔지니어링
개요프롬프트 작성 모범 사례Claude Fable 5 프롬프트 작성Claude Opus 4.8 프롬프트 작성Console 프롬프트 도구
테스트 및 평가
성공 정의 및 평가 빌드Console에서 평가 도구 사용하기지연 시간 줄이기
가드레일 강화
환각 줄이기출력 일관성 높이기탈옥 완화프롬프트 유출 줄이기
레퍼런스
용어집

Log in
탈옥 완화
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
모범 사례/가드레일 강화

탈옥 및 프롬프트 인젝션 완화하기

탈옥(jailbreaking)과 프롬프트 인젝션(prompt injection)은 Claude가 자체 가이드라인이나 사용자의 지침을 무시하도록 만들려는 시도입니다. Claude는 본질적으로 이러한 공격에 대한 복원력을 갖추고 있지만, 이 페이지의 추가 단계들은 특히 당사의 서비스 약관 또는 사용 정책을 위반하는 사용에 대한 가드레일을 강화합니다.

이러한 공격은 서로 다른 위협 모델을 가진 두 가지 범주로 나뉩니다:

  • 탈옥 및 직접 프롬프트 인젝션: 애플리케이션의 사용자가 공격자이며, 가드레일을 우회하기 위한 입력을 의도적으로 작성하는 경우입니다.
  • 간접 프롬프트 인젝션: 사용자는 신뢰할 수 있지만 Claude가 적대적인 지침이 포함된 제3자 콘텐츠(웹 페이지, 이메일, 문서, 도구 결과)를 처리하는 경우입니다.

탈옥 및 직접 프롬프트 인젝션

이 위협 모델에서는 사용자가 애플리케이션을 조작하여 원치 않는 콘텐츠를 생성하거나 원치 않는 작업을 수행하도록 의도적으로 입력을 작성합니다. 다음 완화 조치들은 애플리케이션의 가드레일을 강화합니다:

  • 무해성 스크린: Claude Haiku 4.5와 같은 경량 모델을 사용하여 사용자 입력이 주 대화에 도달하기 전에 사전 검사합니다. 구조화된 출력을 사용하여 응답을 간단한 분류로 제한하세요.

  • 입력 검증: 사용자 입력이 Claude에 도달하기 전에 알려진 인젝션 패턴을 필터링합니다. 알려진 탈옥 언어를 예시로 제공하여 LLM으로 일반화된 검증 스크린을 만들 수 있습니다.

  • 프롬프트 엔지니어링: 윤리적 및 법적 경계를 강조하고 Claude에게 거부하는 방법을 명시적으로 알려주는 시스템 프롬프트를 작성합니다.

  • 반복 위반자에 대한 대응: 애플리케이션의 가드레일을 반복적으로 우회하려는 사용자에 대해 응답을 조정하고 제한 또는 차단을 고려하세요. 예를 들어, 특정 사용자가 동일한 종류의 거부(예: "콘텐츠 필터링 정책에 의해 출력이 차단됨")를 여러 번 유발하는 경우, 해당 사용자에게 그들의 행동이 관련 사용 정책을 위반한다고 알리고 그에 따라 조치를 취하세요.

간접 프롬프트 인젝션

이 위협 모델에서는 Claude가 사용자를 대신하여 읽는 콘텐츠(수신 이메일 본문, 가져온 웹 페이지, 업로드된 파일의 OCR 출력, 도구 호출 결과)에 포함된 지침으로부터 사용자를 보호합니다. 해당 콘텐츠에 영향을 미칠 수 있는 공격자는 Claude를 다른 방향으로 유도하려는 지침을 삽입할 수 있습니다.

Claude가 신뢰할 수 없는 콘텐츠와 사용자의 지침을 안정적으로 구분할 수 있도록 애플리케이션을 구조화하세요:

  • 신뢰할 수 없는 콘텐츠는 도구 결과에만 넣으세요. 제3자 콘텐츠는 system 프롬프트나 일반 사용자 text 블록이 아닌 tool_result 블록 내부에서 Claude에 전달하세요. Claude는 도구 결과 내부에 나타나는 지침을 적절한 회의적 태도로 처리하도록 학습되었습니다. tool_result 형식은 도구 호출 처리하기를 참조하세요.

  • 콘텐츠가 무엇이고 어디서 왔는지 Claude에게 알려주세요. 도구의 description 또는 결과 자체의 구조에서 콘텐츠의 성격과 출처를 명시적으로 밝히세요. 예를 들어, 알 수 없는 발신자로부터 온 수신 이메일의 본문이라거나, 사용자가 업로드한 이미지에서 추출된 OCR 텍스트라는 점을 명시하세요. 이러한 컨텍스트는 Claude가 포함된 지시문을 얼마나 신뢰할지 조정하는 데 도움이 됩니다.

  • 시스템 프롬프트에 정책을 명시하세요. 도구, 문서 또는 검색에서 반환된 콘텐츠는 신뢰할 수 없는 데이터이며 시스템 프롬프트나 사용자의 원래 요청을 절대 무시해서는 안 된다고 Claude에게 명시적으로 알려주세요.

  • 신뢰할 수 없는 콘텐츠를 JSON으로 인코딩하세요. 가능한 경우 제3자 문자열을 자유 형식 텍스트에 연결하는 대신 JSON 객체로 감싸세요. JSON 이스케이프는 신뢰할 수 없는 페이로드와 주변 구조 사이에 명확한 구분자를 제공하므로, 공격자가 따옴표나 태그를 닫아 지침 컨텍스트로 "탈출"할 수 없습니다.

  • 도구 결과에 자신의 지침을 넣지 마세요. Claude는 도구 결과 콘텐츠를 신뢰할 수 없는 데이터로 취급하기 때문에, 그곳에 배치한 지침은 무시되거나 잠재적 인젝션으로 플래그될 수 있습니다. 지침은 tool_result 블록 다음에 오는 user 턴에서 보내세요. Claude Opus 4.8 이상에서는 대화 중간 시스템 메시지를 사용할 수도 있습니다.

  • 민감한 데이터 및 작업에 대한 Claude의 접근을 제한하세요. 성공적인 인젝션이 최소한의 피해만 입힐 수 있도록 최소 권한 원칙을 적용하세요. Claude에게 필요하지 않은 비밀 정보에 대한 접근 권한을 주지 말고, 샌드박스 환경에서 도구를 실행하며, 권한 범위를 가능한 한 좁게 설정하세요.

  • Claude가 도구 출력에 따라 행동하기 전에 검사하세요. 사용자 입력에 사용하는 것과 동일한 경량 모델 검사 패턴을 도구가 반환하는 콘텐츠에도 적용하세요. 각 도구를 실행하고, 원시 출력을 Claude Haiku 4.5를 사용한 소규모 분류기 호출에 전달한 다음, 검사에서 인젝션 시도가 보고되지 않은 경우에만 해당 콘텐츠를 tool_result 블록으로 반환하세요. 분류기의 판정이 애플리케이션에서 분기할 수 있는 파싱 가능한 값이 되도록 구조화된 출력을 사용하세요.

    이전 섹션의 입력 검증 패턴을 도구 결과에도 적용한 후 Claude에 전달할 수 있습니다.

  • 자체 에이전트를 레드팀 테스트하세요. 배포하기 전에 의도적으로 인젝션 시도가 포함된 문서, 이메일, 도구 출력으로 워크플로를 테스트하고, Claude가 이를 무시하는지, 그리고 검사 및 확인 단계가 나머지를 포착하는지 확인하세요.


컴퓨터 사용 도구를 사용하는 경우, Anthropic은 스크린샷에서 잠재적인 프롬프트 인젝션을 감지하고 Claude가 행동하기 전에 사용자 확인을 요청하도록 유도하는 추가 분류기를 실행합니다. 자세한 내용 및 옵트아웃 정보는 해당 페이지를 참조하세요.

지속적인 모니터링

성공적인 인젝션의 징후가 있는지 출력을 정기적으로 분석하세요. 이 모니터링을 사용하여 프롬프트, 검증 및 필터링 전략을 반복적으로 개선하세요.

고급: 안전장치 연결하기

강력한 보호를 위해 전략들을 결합하세요. 다음은 도구 사용이 포함된 엔터프라이즈급 예시입니다:

이러한 전략들을 계층화함으로써 탈옥 및 프롬프트 인젝션에 대한 강력한 방어를 구축하여, Claude 기반 애플리케이션이 최고 수준의 안전성과 규정 준수를 유지하도록 보장할 수 있습니다.

Was this page helpful?

  • 탈옥 및 직접 프롬프트 인젝션
  • 간접 프롬프트 인젝션
  • 지속적인 모니터링
  • 고급: 안전장치 연결하기
  • 봇 시스템 프롬프트
  • harmlessness_screen 도구 내 프롬프트