
Claude Code v2.1.210에서 강화된 간접 프롬프트 인젝션 (Indirect Prompt Injection) 대책과 worktree
요약
Claude Code v2.1.210 업데이트를 통해 멀티 에이전트 환경에서의 보안과 안정성이 대폭 강화되었습니다. 간접 프롬프트 인젝션 방어, 메인 리포지토리 보호, 의도치 않은 명령어 실행 방지 및 권한 규칙 변경 사항을 포함합니다.
핵심 포인트
- 간접 프롬프트 인젝션에 대한 에이전트 툴 내성 강화
- worktree 격리를 통한 메인 리포지토리 보호 및 버그 수정
- 비인간 입력에 의한 ultracode 키워드 오작동 방지
- settings.json 권한 규칙(Write, Glob 등) 변경 및 경고 추가
2026년 7월, Claude Code의 v2.1.210이 출시되었습니다. 이번 업데이트는 신기능 추가보다는 멀티 에이전트 (Multi-agent) 운용 시의 보안 강화와 안정성 향상에 중점을 두고 있습니다.
구체적으로는 다음의 3가지 사항이 중요도 「high」로 꼽히고 있습니다.
-
Agent 툴에서의 간접 프롬프트 인젝션 (Indirect Prompt Injection) 대책 강화 -
isolation: 'worktree' -
지정된 서브 에이전트가 메인 리포지토리 (Main Repository)를 변경할 수 있는 결함 수정 -
ultracode -
키워드가 Webhook 등의 인간 이외의 입력으로 잘못 발화하는 문제 수정
나아가 권한 규칙 Write(path) / NotebookEdit(path) / Glob(path)에 기동 시 경고가 추가되어, 기존의 settings.json을 재검토해야 하는 사용자도 있습니다. 에이전트형 워크플로 (서브 에이전트 · Workflow · worktree 분리)를 활용하고 있는 개발자는 특히 확인해 두어야 할 릴리스입니다.
이번 보안 관련 수정은 모두 「Claude Code가 에이전트로서 자율적으로 코드나 콘텐츠를 다루는」 장면에 집중되어 있습니다. 전체상을 도식화하면 다음과 같습니다.
빨간색으로 표시된 3가지가 severity: high 보안 수정이며, 노란색은 대응이 필요한 권장되지 않음 (Deprecated) 경고입니다.
서브 에이전트가 파일이나 웹 페이지 등의 외부 콘텐츠를 읽어올 때, 해당 콘텐츠에 심어진 「지시」에 의해 에이전트의 동작이 탈취되는 공격을 **간접 프롬프트 인젝션 (Indirect Prompt Injection)**이라고 부릅니다. 이번에 Agent 툴에 이 공격에 대한 내성이 추가되었습니다.
📌 영향을 받는 사람
Agent 툴에서 파일 분석 · 웹 스크레이핑 (Web Scraping) · PR 코멘트 처리 등, 외부 유래 텍스트를 다루는 워크플로를 구성하고 있는 사람.
isolation: 'worktree'는 병렬로 동작하는 서브 에이전트가 서로의 파일 변경으로 인해 충돌하지 않도록 하는 메커니즘입니다. 하지만 수정 전에는 분리가 불완전하여, 본래 건드려서는 안 되는 메인 리포지토리 체크아웃(Main Repository Checkout)에 대해 git 변경 명령을 실행할 수 있는 버그가 있었습니다. 병렬 에이전트로 코드 변경을 수행하는 워크플로에서는 의도치 않은 메인 브랜치 오염으로 이어질 수 있는 중요한 수정입니다.
함께, 종료(kill)된 백그라운드 세션이 git worktree의 락(lock)을 영구적으로 남겨버리는 문제도 수정되어, 소유 프로세스가 사라진 락은 정기적인 스윕(sweep)을 통해 자동으로 해제되도록 되었습니다.
ultracode는 대량의 에이전트 기동(=대량의 토큰 소비)을 허용하는 사용자 본인에 의한 명시적인 옵트인 (Opt-in) 키워드입니다. 수정 전에는 Webhook 페이로드나 중계된 PR 코멘트 등, 인간이 입력한 것이 아닌 텍스트에 ultracode라는 문자열이 포함되어 있는 것만으로도 활성화되어 버리는 경우가 있었습니다. 프롬프트 인젝션에 의한 의도치 않은 대규모 오케스트레이션(Orchestration)이나 비용 증가를 방지하는 수정입니다.
settings.json의 permission 규칙에서 Write(path) / NotebookEdit(path) / Glob(path)를 사용하고 있는 경우, 기동 시 경고가 표시되도록 되었습니다.
| 구 규칙 | 권장되는 신 규칙 | 용도 |
|---|---|---|
Write(path) | Edit(path) | 쓰기 계열 |
NotebookEdit(path) | Edit(path) | Notebook 편집 |
Glob(path) | Read(path) | 읽기 계열 |
⚠️ Breaking Change
폐지가 확정된 것은 아니지만, 기동 시 경고가 나오도록 되어 있습니다. 향후의 권장되지 않음 (Deprecation)에 대비하여 빠른 이행을 권장합니다.
severity: high 주변 사항으로, 세션 · MCP · 에이전트 운용과 관련된 다수의 버그 수정도 포함되어 있습니다.
-
claude attach -
claude attach가 세션 전환 중에 실패하는 문제 - MCP 서버의 세션 중 재동기화 시, 플러그인 제공 MCP 서버가 파괴되는 문제 -
후크 콜백 (Hook callback)의 타임아웃이 '사용자 거부'로 오보고되어, 무인 세션 (unattended session)이 중단되는 문제
-
claude agents --effort ultracode값이 디스패치(dispatch) 대상에 도달하지 않고 조용히 폐기되는 문제
모두 직접 코드를 수정할 필요는 없지만, MCP나 후크를 많이 사용하는 CI · 자동화 파이프라인에서는 체감할 수 있는 개선입니다.
| 대상 | 대응 필요 여부 | 액션 |
|---|---|---|
| Agent 도구 / 서브 에이전트 (Sub-agent)를 이용 중인 사용자 전반 | 불필요 | 업데이트하는 것만으로 자동으로 보호가 강화됨 |
isolation: 'worktree'를 사용한 병렬 에이전트 워크플로우 | 불필요 | 업데이트 후, 의도치 않은 메인 리포지토리 변경 리스크 해소 |
| Webhook 등의 외부 트리거로 Claude Code를 호출하고 있는 환경 | 불필요 | ultracode의 오발화 리스크 해소 |
settings.json에서 Write(path) / NotebookEdit(path) / Glob(path)를 사용 중 | 대응 필요 | Edit(path) / Read(path)로 교체 권장 |
💡 Tips
claude doctor나 기동 시 로그에 경고가 뜨지 않는지, 업데이트 후에 한 번 확인해 두면 안심할 수 있습니다.
.claude/settings.json의 권한 규칙을 이행하는 예시입니다.
Before
{
"permissions": {
"allow": [
...
After
{
"permissions": {
"allow": [
...
Write / Glob은 각각 '신규 생성을 포함한 쓰기 전반' / '패턴 검색'을 의미했으나, 앞으로는 편집 조작을 Edit, 읽기 조작을 Read로 통일하는 방향인 것으로 보입니다. 기존 규칙이 넓은 경로(path)를 지정하고 있는 경우에는, 의도치 않은 권한이 부여되어 있지는 않은지도 함께 검토하는 것이 좋습니다.
- Claude Code v2.1.210은
에이전트형 워크플로우의 보안 강화가 중심인 릴리스 - Agent 도구의 간접 프롬프트 인젝션 (Indirect Prompt Injection) 대책, worktree 분리 결함 수정, ultracode 오발화 수정이라는 3가지 high severity 수정이 포함됨
Write(path)/NotebookEdit(path)/Glob(path)를 권한(permission) 규칙에서 사용 중인 경우Edit(path)/Read(path)로의 이행을 권장- MCP · 후크 · 세션 안정성 관련 세부 수정도 다수 포함되어 있어, CI나 자동화 파이프라인에서의 체감 개선이 기대됨
서브 에이전트나 워크플로우(Workflow), 외부 트리거 연동을 사용하는 개발자일수록 혜택이 큰 업데이트입니다. 아직 업데이트하지 않았다면, 이번 기회에 최신 버전으로 업데이트하는 것을 추천합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기