anthropics/sandbox-runtime
A lightweight sandboxing tool for enforcing filesystem and network restrictions on arbitrary processes at the OS level, without requiring a container.
해결하는 문제
Anthropic Sandbox Runtime (srt)은 AI 에이전트, bash 명령 또는 Model Context Protocol (MCP) 서버와 같은 임의의 프로세스를 안전하고 제한된 환경에서 실행하는 방법을 제공합니다. 전체 컨테이너 설정 없이도 이러한 프로세스가 민감한 파일에 액세스하거나 승인되지 않은 네트워크 요청을 하는 것을 방지합니다.
작동 방식
이 도구는 네이티브 OS 수준 샌드박스 프리미티브를 사용하여 전체 프로세스 트리에 제한을 적용합니다:
- macOS: 동적으로 생성된 Seatbelt 프로필과 함께
sandbox-exec를 사용합니다. - Linux: 컨테이너화 및 네트워크 네임스페이스 격리를 위해
bubblewrap을 사용합니다. - Windows: 전용
srt-sandbox로컬 사용자 계정으로 프로세스를 실행하며 Windows Filtering Platform (WFP) 송신 펜스를 갖추고 있습니다.
이중 격리 모델을 사용합니다:
- 파일 시스템 격리: 읽기에는 "거부 후 허용" 패턴(기본적으로 허용, 특정 경로 거부)을 사용하고 쓰기에는 "허용 전용" 패턴(기본적으로 거부, 특정 경로는 명시적으로 허용해야 함)을 사용합니다.
- 네트워크 격리: 기본적으로 모든 네트워크 액세스가 거부됩니다. 허용된 도메인은 허용 목록과 거부 목록을 강제하는 호스트 측 프록시 서버(HTTP/HTTPS 및 SOCKS5)를 통해 라우팅됩니다.
대상 독자
에이전트 시스템을 구축하거나 MCP 서버를 사용하며, AI 기반 코드 실행이 기본적으로 안전하고 특정 디렉토리와 도메인으로 제한되도록 보장해야 하는 개발자.
주요 특징
- 기본적으로 안전: 프로세스는 최소한의 액세스 권한으로 시작되며 권한을 얻으려면 명시적인 구성이 필요합니다.
- 크로스 플랫폼: macOS, Linux 및 Windows에 대한 네이티브 지원.
- 유연한 구성: macOS의 파일 시스템 경로에 대한 글로브 패턴과 세부적인 도메인 수준의 네트워크 필터링을 지원합니다.
- 위반 모니터링: macOS에서 샌드박스 위반에 대한 실시간 알림.
- 라이브러리 및 CLI: 독립 실행형 명령줄 도구와 TypeScript 라이브러리로 모두 사용 가능.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트