Anthropic Claude Code 샌드박싱: 보안 및 자율성 강화
Anthropic은 Claude Code를 위한 샌드박싱 기능을 도입하여 개발자 보안과 에이전트 자율성을 크게 향상시켰습니다. 이는 엄격하고 사전 정의된 운영 경계를 설정하여 지속적인 사용자 권한 프롬프트의 필요성을 줄입니다.
코드 에이전트의 보안 및 자율성 과제
Claude Code는 개발자에게 에이전트 경험을 제공하여 Claude가 코드를 작성, 테스트, 디버그하고 코드베이스를 탐색하며 명령을 실행할 수 있게 합니다. 이러한 수준의 접근은 특히 프롬프트 인젝션 공격과 관련된 고유한 위험을 수반합니다.
Claude Code는 전통적으로 권한 기반 모델로 운영되며, 기본적으로 읽기 전용이고 대부분의 수정이나 명령에 대해 명시적인 사용자 승인을 요구합니다. "승인"을 클릭해야 하는 이러한 지속적인 요구는 '승인 피로'로 이어질 수 있으며, 개발 주기의 안전성을 잠재적으로 손상시킬 수 있습니다.
샌드박싱 솔루션
샌드박싱은 Claude가 더 자유롭게 작동할 수 있는 사전 정의된 경계를 생성하여 권한 프롬프트 수를 대폭 줄이면서 동시에 전반적인 보안을 강화함으로써 이러한 과제를 해결합니다. 이 접근 방식은 안전성을 희생하지 않으면서 Claude가 더 자율적으로 실행될 수 있게 합니다.
효과적인 샌드박싱은 두 가지 중요한 격리 경계를 구현하는 데 의존합니다:
파일 시스템 격리
파일 시스템 격리는 Claude가 승인된 특정 디렉토리만 접근하거나 수정할 수 있도록 보장합니다. 이 경계는 프롬프트가 주입된 에이전트가 지정된 작업 공간 외부의 민감한 시스템 파일을 수정하는 것을 방지하는 데 중요합니다.
네트워크 격리
네트워크 격리는 Claude가 승인된 서버에만 연결할 수 있도록 보장합니다. 이는 손상된 에이전트가 민감한 정보를 유출하거나 승인되지 않은 외부 소스에서 악성 소프트웨어를 다운로드하는 것을 방지합니다.
파일 시스템 격리와 네트워크 격리가 함께 구현되어야 한다는 점을 반드시 알아야 합니다. 네트워크 격리 없이는 손상된 에이전트가 SSH 키와 같은 민감한 파일을 유출할 수 있고, 파일 시스템 격리 없이는 손상된 에이전트가 샌드박스를 탈출하여 네트워크 접근 권한을 얻을 수 있습니다.
자율 실행을 위한 샌드박스 처리된 Bash 도구
Anthropic은 연구 미리보기로 베타 버전에서 제공되는 새로운 샌드박스 런타임을 도입했습니다. 이를 통해 사용자는 전체 컨테이너를 관리하는 오버헤드 없이 에이전트가 접근할 수 있는 디렉토리와 네트워크 호스트를 정확히 정의할 수 있습니다. 이 런타임은 Claude Code 내에서 bash 도구를 샌드박스 처리하는 데 사용됩니다.
이 샌드박스 처리된 bash 도구는 Claude가 정의된 한도 내에서 명령을 자율적이고 안전하게 실행할 수 있게 합니다. Claude가 설정된 샌드박스 외부의 리소스에 접근하려고 하면 사용자에게 즉시 알림이 전달되고 해당 작업을 허용할지 여부를 선택해야 합니다.
샌드박스 처리된 Bash 도구의 기술적 구현
이 기능은 운영 체제 수준의 기본 요소, 특히 Linux bubblewrap과 MacOS seatbelt를 기반으로 구축되었으며, OS 수준에서 제한을 적용합니다. 샌드박스는 두 가지 주요 제한을 적용합니다:
- 파일 시스템 격리: 현재 작업 디렉토리에 대한 읽기 및 쓰기 접근을 허용하지만 해당 디렉토리 외부의 파일 수정은 차단합니다.
- 네트워크 격리: 외부 프록시 서버에 연결된 Unix 도메인 소켓으로 인터넷 접근을 제한합니다. 이 프록시는 도메인 제한을 적용하고 새로 요청된 도메인에 대한 사용자 확인을 처리합니다. 프록시는 나가는 트래픽에 임의의 규칙을 적용하도록 사용자 지정할 수도 있습니다.
파일 경로와 도메인 모두 사용자가 구성할 수 있습니다.
웹에서의 Claude Code: 안전한 클라우드 실행
웹에서의 Claude Code를 통해 사용자는 클라우드의 격리된 샌드박스 내에서 Claude Code 세션을 실행할 수 있습니다. 이 아키텍처는 샌드박스에서 실행되는 코드가 손상되더라도 사용자를 보호하도록 설계되었습니다.
사용자 지정 프록시를 통한 안전한 Git 통합
버전 제어 워크플로우 중 보안을 유지하기 위해 웹용 Claude Code는 모든 Git 상호작용에 사용자 지정 프록시 서비스를 사용합니다. 이 프록시 서비스는 서명 키나 git 자격 증명과 같은 민감한 자격 증명이 Claude Code와 함께 샌드박스 내부에 저장되지 않도록 보장합니다.
샌드박스 내부의 Git 클라이언트가 인증할 때 이 사용자 지정 프록시에 연결됩니다. 프록시는 요청을 GitHub에 보내기 전에 여러 검증 단계를 수행합니다: 자격 증명을 확인하고, Git 상호 작용의 내용을 확인하며(예: 푸시가 구성된 브랜치로만 이루어지는지 확인), 마지막으로 올바른 인증 토큰을 첨부합니다.
채택 및 오픈 소스 제공
Anthropic은 anthropic-experimental/sandbox-runtime GitHub 저장소를 통해 샌드박싱 기술을 오픈소스로 공개하여 다른 팀들이 이 기술을 채택하여 자체 에이전트의 보안 태세를 강화하도록 장려하고 있습니다.
개발자는 Claude Code에서 /sandbox를 실행하여 샌드박스 처리된 bash 도구를 사용할 수 있습니다. 또한 사용자는 Claude Code on the web을 방문하여 클라우드 기반 버전의 도구에 접근할 수 있습니다.
SUMMARY: Anthropic은 Claude Code를 위한 샌드박싱 기능을 도입하여 사전 정의된 경계를 설정함으로써 보안과 자율성을 강화했습니다. 내부 사용에서 권한 프롬프트를 84% 안전하게 줄이는 것으로 나타났습니다.
TITLE: Anthropic Claude Code 샌드박싱: 보안 및 자율성 강화