GitHub Trending인프라 · 데브옵스오늘의 주요

anthropics/sandbox-runtime

컨테이너 없이 프로세스 샌드박싱하는 경량 도구 공개

원제 anthropics/sandbox-runtime

스타 6,647당일 +202TypeScript
Key Point

컨테이너의 오버헤드 없이 OS 원시 기능으로 AI 에이전트와 로컬 도구를 안전하게 격리하려는 개발자들에게 필요한 인프라가 등장했다.

핵심 요약

  • Anthropic이 Sandbox Runtime(srt)을 오픈소스로 공개했으며, 이는 컨테이너 없이 OS 수준에서 파일시스템과 네트워크 제약을 강제하는 경량 샌드박싱 도구다.
  • macOS는 sandbox-exec과 Seatbelt 프로필을, Linux는 bubblewrap을 사용해 격리를 구현하고, Windows는 전용 사용자 계정과 WFP 필터로 제약을 적용한다.
  • 네트워크는 기본적으로 모두 차단되며, allowedDomains/deniedDomains로 명시적으로 허용하는 방식을 사용한다. 파일 읽기는 기본 허용이고 denyRead/allowRead로 제어하며, 쓰기는 기본 차단이고 allowWrite로만 허용한다.
  • 도메인 이름을 resolving할 때 원격 metadata 엔드포인트, loopback, link-local 같은 위험한 주소로의 연결을 차단하는 resolved-address 검사를 수행한다.
  • HTTP/HTTPS는 HTTP 프록시로, TCP는 SOCKS5 프록시로 라우팅되며, 모든 프록시는 호스트에서 실행되어 정책을 강제한다.
  • CLI 도구(`srt` 명령)로 사용할 수 있고, --control-fd로 실행 중 설정을 업데이트할 수 있으며, TypeScript 라이브러리로도 제공된다.
  • 라이브러리 사용 시 commandId를 전달해 여러 invocation의 위반 사항을 정확히 추적할 수 있으며, 등록되지 않은 목표에 대해 askCallback을 호출해 동적으로 접근 허용 여부를 결정할 수 있다.
  • Claude Code의 안전성을 높이기 위해 개발되었으며, MCP 서버와 bash 명령, 임의의 프로세스를 샌드박싱할 수 있다.
  • 설정 파일(~/.srt-settings.json)이 필수는 아니지만, 파일이 존재하면 검증되어야 하며, 빈 파일이나 잘못된 파일은 오류를 낸다.
  • Unix 소켓 접근 제어, 위반 모니터링(macOS의 실시간 샌드박스 로그), 자격 증명 관리(SigV4 서명), TLS 종료 같은 고급 기능을 지원한다.
  • 파일시스템 격리와 네트워크 격리는 둘 다 필수인데, 파일 격리 없으면 SSH 키 같은 민감한 데이터가 노출되고, 네트워크 격리 없으면 프로세스가 완전히 제약을 우회할 수 있기 때문이다.
AI 요약 안내

AI가 한국어로 정리한 내용입니다. 정확한 정보는 원문을 확인해 주세요.

요약 원칙 ↗