피드로 돌아가기
GeekNewsSecurity
원문 읽기
jai - AI 에이전트를 위한 손쉬운 격리 도구
Stanford 교수가 AI 에이전트용 파일시스템 격리 도구 jai를 통해 .claude/settings.json 설정만으로 디렉토리 접근 제어 가능하게 구현
AI 요약
Context
AI 에이전트(Claude)를 개인 컴퓨터에 설치할 때 사용자가 의도하지 않은 파일 삭제(rm -rf * 등) 또는 현재 디렉토리 혼동으로 인한 의도치 않은 파일 생성 같은 보안 문제가 발생할 수 있다. 기존 Unix 권한 분리나 curl | bash 스타일 설치는 높은 권한을 부여해야 하므로 근본적인 격리 효과가 제한적이다.
Technical Solution
- 설정 기반 접근 제어: .claude/settings.json에 sandbox 옵션을 추가하여 allowRead, denyRead, allowWrite, denyWrite를 명시적으로 선언
- 계층적 권한 정의: 현재 디렉토리는 전체 접근, 나머지 디렉토리는 읽기 전용, 홈 디렉토리는 copy-on-write로 처리하는 구조
- 저수준 강제 적용: 샌드박스 기능을 Claude 애플리케이션 수준이 아닌 OS 수준에서 강제하여 에이전트의 우회 시도 차단
- 안전한 배포 방식: curl | bash 대신 tar 파일 직접 추출 후 makepkg -i로 수동 빌드하며, PKGBUILD 스크립트는 30줄 정도로 검증 가능한 수준으로 유지
- 격리된 실행 환경: 별도 사용자 계정에서 SSH로 에이전트를 실행하고 프로젝트 디렉토리만 바인드 마운트로 제한
Key Takeaway
AI 에이전트의 보안은 단순 사용자 권한 분리가 아닌 파일시스템 수준의 명시적 격리가 필수다. 복잡한 샌드박싱 솔루션보다 git 기반 리뷰 흐름(별도 worktree 브랜치 작업 후 병합), .git 읽기 전용 설정, git hook 완전 차단 같은 정책적 접근이 .pyc, .venv 같은 암묵적 실행 지점 악용을 방지한다.
실천 포인트
AI 에이전트를 개인 개발 환경에서 운영하는 엔지니어라면, 단순 사용자 계정 분리보다 별도 계정의 SSH 접근 + 프로젝트별 바인드 마운트 조합으로 접근 제어를 구현하는 것이 더 효과적이다. 추가로 .git 디렉토리를 읽기 전용으로 설정하고 에이전트 작업물을 git patch 기반으로만 내보내면 의도치 않은 파일 변조나 권한 상승을 차단할 수 있다.