Anthropic이 Claude Code를 웹과 모바일로 확장하면서 AI 코딩 에이전트의 오래된 숙제를 풀어냈습니다. 편리함과 보안 사이의 균형 문제를. 샌드박싱 기술로 프롬프트 인젝션 공격을 차단하면서도 84%의 승인 단계를 줄인 방법을 소개합니다.

핵심 포인트:
- 84% 승인 프롬프트 감소: 샌드박싱으로 파일시스템과 네트워크를 격리해 안전한 작업은 자동 실행하고 위험한 작업만 승인 요청. ‘승인 피로’와 보안 위험을 동시에 해결
- 웹 기반 병렬 작업: 터미널 없이 브라우저에서 여러 GitHub 저장소에 동시 작업 가능. 각 세션은 독립된 클라우드 환경에서 실행되며 자동 PR 생성
- Lethal Trifecta 공격 차단: 네트워크 격리로 민감한 정보 유출 경로를 원천 차단. 프롬프트 인젝션이 성공해도 SSH 키 탈취나 외부 통신 불가능
터미널을 벗어난 AI 코딩 에이전트
Anthropic이 10월 20일 공개한 Claude Code 웹 버전은 개발자들이 오랫동안 기다려온 변화입니다. 이제 터미널을 열지 않고도 브라우저에서 바로 코딩 작업을 Claude에게 위임할 수 있게 됐습니다. GitHub 저장소를 연결하고 필요한 작업을 설명하면 Claude가 구현을 처리하죠.
더 흥미로운 건 병렬 작업 지원입니다. 여러 저장소에 걸친 작업들을 단일 인터페이스에서 동시에 실행할 수 있습니다. 각 세션은 Anthropic이 관리하는 클라우드의 독립된 환경에서 돌아가며, 실시간 진행 상황을 추적할 수 있고 작업 중에도 방향을 조정할 수 있습니다. 작업이 완료되면 자동으로 브랜치를 만들고 PR을 생성합니다.
iOS 앱에서도 Claude Code를 사용할 수 있게 됐습니다. 이동 중에도 코딩 작업을 관리할 수 있다는 의미죠. 물론 아직 초기 프리뷰 단계이긴 하지만요.
샌드박싱이 풀어낸 진짜 문제
하지만 웹 버전 출시보다 더 중요한 게 있습니다. Anthropic이 이번 발표를 단순한 제품 기능 추가가 아닌 “샌드박싱으로 Claude Code를 더 안전하고 자율적으로 만들기“라는 엔지니어링 블로그 포스트로 프레임한 이유가 바로 여기에 있습니다.
기존 Claude Code는 권한 기반 모델로 작동했습니다. 기본적으로 읽기 전용이고, 수정이나 명령 실행 전에 매번 승인을 요청하죠. echo나 cat 같은 안전한 명령은 자동 허용되지만 대부분의 작업엔 명시적 승인이 필요했습니다.
문제는 계속 “승인” 버튼을 클릭하는 게 개발 사이클을 느리게 만든다는 겁니다. 더 위험한 건 ‘승인 피로’입니다. 사용자가 무엇을 승인하는지 제대로 확인하지 않게 되면서 오히려 개발이 덜 안전해지는 역설이 발생하죠.

이중 격리: 파일시스템과 네트워크
Anthropic의 샌드박싱 접근법은 운영체제 수준의 기능을 활용해 두 가지 경계를 설정합니다.
첫째는 파일시스템 격리입니다. Claude가 특정 디렉토리만 접근하거나 수정할 수 있도록 제한합니다. 프롬프트 인젝션으로 Claude가 조작되더라도 민감한 시스템 파일을 건드릴 수 없죠. Linux에서는 Bubblewrap을, macOS에서는 Seatbelt을 사용해 이를 구현했습니다.
둘째는 네트워크 격리입니다. Claude가 승인된 서버에만 연결할 수 있도록 합니다. 모든 인터넷 접근은 샌드박스 외부에서 실행되는 프록시 서버에 연결된 유닉스 도메인 소켓을 통해서만 가능합니다. 이 프록시가 도메인 접근을 제한하고, 새로운 도메인 요청이 있을 때 사용자 확인을 처리합니다. 원한다면 트래픽에 임의의 규칙을 적용하도록 프록시를 커스터마이징할 수도 있습니다.
핵심은 둘 다 필요하다는 겁니다. 네트워크 격리 없이는 조작된 에이전트가 SSH 키 같은 민감한 파일을 유출할 수 있고, 파일시스템 격리 없이는 샌드박스를 쉽게 빠져나가 네트워크 접근을 얻을 수 있습니다. 두 기술을 함께 사용해야만 안전하고 빠른 에이전트 경험을 제공할 수 있습니다.
Lethal Trifecta를 끊어내는 방법
Simon Willison이 제시한 ‘Lethal Trifecta’ 개념이 여기서 중요해집니다. AI 에이전트에 세 가지가 동시에 존재하면 치명적인 보안 위험이 생깁니다: 개인 데이터 접근, 신뢰할 수 없는 콘텐츠 처리, 외부 통신 능력.
프롬프트 인젝션 공격이 성공하더라도 데이터를 빼낼 수 없다면 피해가 크게 줄어듭니다. Claude Code의 네트워크 격리가 바로 이 세 번째 다리를 자르는 겁니다. “네트워크 접근 없음” 모드로 실행하면 걱정할 게 없습니다.
물론 “신뢰할 수 있는 네트워크 접근” 환경은 조금 신경 쓰입니다. 의존성 설치 관련 도메인만 허용하려는 의도지만, 기본 허용 도메인 목록에 수십 개 항목이 있어 의도하지 않은 유출 경로가 생길 수 있습니다. 자신만의 허용 목록으로 커스텀 환경을 구성하는 게 더 안전합니다.
실전에서 본 Claude Code 웹
Simon Willison이 주말 동안 테스트한 사례가 흥미롭습니다. 그는 Rust 템플릿 언어인 MiniJinja의 Python 바인딩과 Jinja2의 성능을 비교하는 벤치마크를 만들어달라고 요청했습니다. 완전히 열린 환경(*로 허용 목록 설정)에서 개인 저장소를 대상으로 실행했죠.
프롬프트는 이랬습니다: “Python 3.14의 일반 버전과 free-threaded 버전 모두에서 테스트해서 총 네 가지 시나리오로 벤치마크를 만들어줘. 템플릿 상속과 루프가 포함된 합리적으로 복잡한 예제를 사용하고, PR에는 전체 벤치마크를 실행할 쉘 스크립트, 벤치마크 구현, 결과를 상세히 설명하는 마크다운 파일, matplotlib로 만든 설명 차트를 포함시켜줘.”
몇 분 후 Claude가 요청한 모든 걸 완성했습니다. 네 개의 차트, 벤치마크 코드, 실행 스크립트, 상세한 결과 분석까지. 흥미롭게도 MiniJinja가 Jinja2보다 느렸는데, Jinja2가 10년간 축적한 성능 최적화 덕분인 듯합니다.

YOLO 모드의 가치를 인정하다
Anthropic의 샌드박싱 집중은 중요한 인정입니다. --dangerously-skip-permissions 같은 YOLO 모드로 실행되는 코딩 에이전트가 매 단계마다 승인을 받는 에이전트보다 훨씬 더 가치 있고 생산적이라는 걸.
문제는 그걸 편리하고 안전하게 실행하는 방법이었고, 샌드박싱이 그 답입니다. 네트워크 격리를 통해 Lethal Trifecta의 데이터 유출 경로를 차단하면 프롬프트 인젝션 공격이 성공해도 피해를 최소화할 수 있습니다.
Claude Code 웹은 현재 Pro와 Max 사용자를 대상으로 베타 연구 프리뷰로 제공되며, claude.com/code에서 사용할 수 있습니다. 클라우드 기반 세션은 다른 모든 Claude Code 사용과 요금 한도를 공유합니다.
Anthropic은 다른 팀들도 안전한 에이전트를 구축할 수 있도록 샌드박싱 기능을 오픈소스로 공개했습니다. AI 에이전트의 보안 문제가 단순히 Anthropic만의 과제가 아니라는 걸 인식한 조치입니다.
AI 코딩 에이전트가 개발자의 실질적인 도구로 자리잡으려면 편리함만큼이나 안전성이 중요합니다. Claude Code의 샌드박싱 접근법은 그 균형을 찾아가는 의미 있는 한 걸음입니다.
참고자료:
- Claude Code on the web (Anthropic)
- Making Claude Code more secure and autonomous with sandboxing (Anthropic Engineering Blog)
- Claude Code gets a web version—but it’s the new sandboxing that really matters (Ars Technica)
- Claude Code for web—a new asynchronous coding agent from Anthropic (Simon Willison)
- Anthropic Brings Claude Code to the Browser (Analytics India Magazine)

답글 남기기