Claude Code 보안
Claude Code 보안
Claude Code의 보안 장치와 안전한 사용 모범 사례를 정리한 페이지입니다. 코드 보안을 최우선으로, Anthropic의 종합 보안 프로그램에 따라 개발됐습니다. SOC 2 Type 2 보고서·ISO 27001 인증 등은 Anthropic Trust Center에서 확인할 수 있습니다.
출처: 공식문서
본문
보안 접근 방식
보안 기반
Claude Code는 권한 기반 아키텍처, 샌드박스, 프롬프트 인젝션 보호 등 다층 방어를 갖춥니다. 항상 양호한 보안 관행을 유지해야 하며, 어떤 시스템도 완전 면역은 아닙니다.
권한 기반 아키텍처
Manual 모드에서 Claude Code는 읽기 전용 권한으로 시작합니다. 파일 편집·테스트·명령 실행이 필요하면 먼저 물어보고, 승인하거나 이후 계속 허용할지 선택합니다. ls, cat, git status 같은 내장 읽기 전용 명령은 묻지 않고 실행합니다.
자동 모드에서는 별도 분류 모델(classifier)이 사용자 대신 액션을 검토하고 안전하지 않다고 판단한 것을 차단합니다. 분류기가 액션을 평가하는 방식에 어떤 액션을 자동 승인·분류기 전송·질문하는지 나와 있습니다. 명시적 ask·deny 규칙은 여전히 적용되고 조직이 자동 모드를 끌 수 있습니다.
내장 보호
- 샌드박스 bash 도구: 샌드박스로 파일시스템·네트워크 격리.
/sandbox로 경계를 구성. - 작업 디렉터리 경계: Manual 모드에서 시작 폴더와 하위 폴더에만 쓰고, 부모 디렉터리 파일은 명시적 권한 없이 수정 불가. Read·Grep·Glob 도구로 경계 밖 경로를 읽을 때도 물어봄. 추가 디렉터리로 경계를 확장하거나 샌드박스
denyRead규칙으로 제한. - 프롬프트 피로 완화: 자주 쓰는 안전한 명령을 유저·코드베이스·조직별 허용 목록화 지원.
- Accept Edits 모드: 작업 디렉터리의 파일 편집과
mkdir,touch,rm,mv,cp,sed같은 고정 파일시스템 명령을 자동 승인. 그 외 Bash 명령·범위 밖 경로는 여전히 질문.
사용자 책임
Claude Code는 사용자가 부여한 권한만 갖습니다. 승인 전에 제안된 코드·명령의 안전성을 검토하는 책임은 사용자에게 있습니다.
프롬프트 인젝션 방어
프롬프트 인젝션은 공격자가 AI 어시스턴트의 지시를 덮어쓰거나 조작하려고 악성 텍스트를 넣는 기법입니다.
핵심 보호
- 권한 시스템: Manual 모드에서 민감 작업은 명시적 승인 필요.
- 컨텍스트 인지 분석: 전체 요청을 분석해 잠재적으로 유해한 지시 탐지.
- 입력 정화: 사용자 입력 처리를 통해 명령 인젝션 방지.
- 네트워크 명령 승인:
curl·wget등 웹에서 콘텐츠를 가져오는 명령은 기본 자동 승인 안 됨. Manual 모드에서 다른 비읽기 전용 Bash 명령처럼 질문하고,Bash(curl *)같은 명시적 allow 규칙을 추가할 수 있습니다. 막으려면permissions.deny에 추가. deny 규칙은 명령 텍스트 그대로 매칭하고, 명령 텍스트와 무관한 네트워크 강제는 샌드박스 네트워크 격리 참조.
프라이버시 보호
- 민감 정보의 제한된 보존 기간 (Privacy Center).
- 유저 세션 데이터에 대한 제한된 접근.
- 데이터 학습 설정에 대한 유저 통제 (프라이버시 설정).
추가 보호
- 네트워크 요청 승인: Manual 모드에서 대부분 네트워크 요청 도구는 기본 승인 필요.
- 격리된 컨텍스트 창: 웹 fetch는 악성 프롬프트 인젝션을 피하려고 별도 컨텍스트 창 사용.
- 신뢰 검증: 첫 코드베이스 실행과 새 MCP 서버는 신뢰 검증 필요. (
-p플래그 비대화식에선 비활성화. 홈 디렉터리에서 직접 시작하면 신뢰 수락이 해당 세션에만 유지되고 디스크에 기록되지 않아 매 실행 재요청.) - 명령 인젝션 탐지: 의심스러운 bash 명령은 이전에 허용 목록에 있어도 수동 승인 필요.
- Fail-closed 매칭: 매칭 안 되는 명령은 기본 승인 필요.
- 자연어 설명: 복잡한 bash 명령에 이해를 돕는 설명 포함.
- 안전한 자격 증명 저장: API 키·토큰을 macOS Keychain(사용 가능 시)에 저장, Windows·Linux는 파일 권한으로 보호.
⚠️ Windows WebDAV 보안 위험: Windows에서 WebDAV를 켜거나
\\*처럼 WebDAV 하위 디렉터리를 포함할 수 있는 경로 접근을 허용하지 않는 것을 권장합니다. Microsoft가 보안 위험(deprecated)으로 WebDAV를 폐기했고, WebDAV를 켜면 권한 시스템을 우회해 원격 호스트로 네트워크 요청을 트리거할 수 있습니다.
신뢰할 수 없는 콘텐츠 작업 모범 사례:
- 승인 전에 제안된 명령 검토
- 신뢰할 수 없는 콘텐츠를 Claude에 직접 파이프하지 않기
- 중요 파일에 대한 변경 검증
- 외부 웹 서비스 상호작용 시 특히 VM에서 스크립트·도구 호출 실행
- 의심스러운 동작은
/feedback으로 보고
MCP 보안
사용자가 MCP 서버를 구성할 수 있습니다. 허용된 MCP 서버 목록은 엔지니어가 소스 컨트롤에 체크인하는 Claude Code 설정의 일부입니다. 자체 MCP 서버를 작성하거나 신뢰하는 공급자의 MCP 서버를 쓰는 것을 권장합니다. Anthropic은 Anthropic Directory 추가 전에 커넥터를 심사 기준으로 검토하지만, 어떤 MCP 서버도 보안 감사·관리하지 않습니다.
클라우드 실행 보안
웹의 Claude Code에서 추가 보안 통제가 적용됩니다:
- 격리된 가상 머신: 각 클라우드 세션은 격리된 Anthropic 관리 VM에서 실행.
- 네트워크 접근 통제: 기본 제한, 비활성화 또는 특정 도메인만 허용 구성 가능.
- 자격 증명 보호: 샌드박스 안 범위 지정 자격 증명을 실제 GitHub 인증 토큰으로 변환하는 안전한 프록시로 처리.
- 브랜치 제한: git push는 현재 작업 브랜치로 제한.
- 감사 로깅: 클라우드 세션의 모든 작업 로깅.
- 자동 정리: 비활성 시간 후 세션 VM 회수.
Remote Control 세션은 다르게 동작합니다: 웹 인터페이스가 로컬 머신의 Claude Code 프로세스에 연결되고, 모든 코드 실행·파일 접근은 로컬에 유지되며 세션 트래픽은 TLS로 Anthropic API를 통해 이동합니다. 클라우드 VM·샌드박싱 없이, 여러 개의 짧은 수명·좁은 범위 자격 증명을 사용해 단일 자격 증명 손상의 폭발 반경을 제한합니다.
보안 모범 사례
민감 코드 작업
- 승인 전 모든 제안 변경 검토
- 민감 저장소에 프로젝트별 권한 설정 사용
- 추가 격리를 위해 dev containers 고려
/permissions로 권한 설정 주기적 감사
팀 보안
- 관리 설정으로 조직 표준 강제
- 승인된 권한 구성을 버전 컨트롤로 공유
- OpenTelemetry 메트릭으로 사용 모니터링
ConfigChange훅으로 세션 중 설정 변경 감사·차단
보안 이슈 보고
- 공개적으로 공개하지 않기
- HackerOne 프로그램으로 보고
- 상세 재현 단계 포함
- 공개 전에 해결 시간 허용
더 알아보기
- Security guidance 플러그인: 세션 중 Claude가 자신의 코드 변경 취약점 검토·수정
/security-review: 현재 브랜치 변경에 온디맨드 보안 패스- 샌드박스 환경: 격리 접근 비교·위협 모델 선택
- 샌드박싱: Bash 명령 파일시스템·네트워크 격리
- 권한: 권한·접근 통제 구성
- 사용 모니터링: 활동 추적·감사
- 개발 컨테이너: 안전·격리 환경
- Anthropic Trust Center: 보안 인증·컴플라이언스
- 에이전틱 AI에 대한 CISO 가이드: 보안 리더용 평가 프레임워크