• SEARCH

    통합검색
  • GAMEZONE
    • 커뮤니티
      • 공지사항
      • 유저게시판
        • 등업게시판
        • 출석체크
        • 정회원 무료자료실
      • 스크린샷
      • 인증자료실
    • 리니지
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 메이플스토리
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 바람의나라
      • 자유게시판
      • 홍보게시판
      • 자료게시판
        • 유틸자료실
        • 소스자료실
        • 클라이언트
        • 팩 자료실
      • 연구게시판
        • 개발내역
        • 질문과답변
        • 기타
      • 강의게시판
        • DR
        • CR
        • 구버전
        • 클라이언트 개조
        • 노하우 게시판
        • 게임공략 & 팁
    • 다크에덴
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 믹스마스터
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 라그나로크
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 기타게임
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 게임강의
    • 비베&포토샵
      • 자유게시판
      • 자료실
        • 일반자료실
        • 포인트 자료실
      • 노하우게시판
      • 포토샵게시판
    • 모바일
      • 게임공략
      • 포인트 자료실
      • 유틸자료실
      • 자유게시판
  • 기타게임 소스자료실
    • 기타게임 소스자료실 기타 ()
    • 클로드코드 09-sandboxing

      • 민형준
      • 2026.05.17 - 14:21 29

    1. Sandboxing

    참고: Claude Code의 sandboxed bash tool이 파일시스템과 네트워크를 격리하여 더 안전하고 자율적인 에이전트 실행을 제공하는 방법

    1.1. 개요

    Claude Code의 sandboxing은 OS 수준의 파일시스템 및 네트워크 격리를 제공한다. 미리 정의된 경계를 설정하면 Claude Code가 더 자유롭게 작업하면서도 위험을 줄일 수 있다.

    1.2. 왜 Sandboxing이 중요한가?

    기존의 권한 기반 보안은 각 bash 명령어에 대해 사용자 승인을 요구한다. 이는 통제를 제공하지만 다음과 같은 문제를 야기한다.

    - 승인 피로: 반복적으로 "승인"을 클릭하면 사용자가 무엇을 승인하는지 덜 주의하게 된다.
    - 생산성 저하: 끊임없는 인터럽션이 개발 워크플로우를 느리게 한다.
    - 자율성 제한: 승인을 기다려야 하므로 Claude Code가 효율적으로 작업할 수 없다.

    Sandboxing은 다음으로 이 문제를 해결한다.

    명확한 경계 설정: Claude Code가 접근할 수 있는 디렉토리와 네트워크 호스트를 정확히 지정
    권한 프롬프트 감소: sandbox 내의 안전한 명령어는 승인 없이 실행
    보안 유지: sandbox 외부 접근 시도는 즉시 알림
    자율성 활성화: 정의된 한계 내에서 Claude Code가 더 독립적으로 작업

    참고: 효과적인 sandboxing은 파일시스템과 네트워크 격리 둘 다 필요하다.

    1.3. 작동 방식

    1.3.1. 파일시스템 격리

    - 기본 쓰기: 현재 작업 디렉토리와 하위 디렉토리에 대한 읽기/쓰기
    - 기본 읽기: 컴퓨터 전체 읽기 (특정 거부 디렉토리 제외)
    - 차단된 접근: 명시적 허가 없이 작업 디렉토리 외부 수정 불가
    - 설정 가능: sandbox.filesystem.allowWrite로 추가 경로 지정

    1.3.2. 네트워크 격리

    - 도메인 제한: 승인된 도메인만 접근 가능
    - 사용자 확인: 새로운 도메인 요청 시 권한 프롬프트
    - 포괄적 커버리지: 명령어가 생성하는 모든 스크립트, 프로그램, 하위 프로세스에 적용

    1.3.3. OS 수준 집행

    - macOS: Seatbelt framework 사용
    - Linux/WSL2: bubblewrap 사용
    - WSL1: 지원하지 않음 (필요한 Linux namespace 기능 부재)
    - Native Windows: 계획 중

    1.4. 시작하기

    1.4.1. 전제조건

    macOS: 별도 설치 없이 작동한다.

    Linux/WSL2:

    # Ubuntu/Debian
    sudo apt-get install bubblewrap socat

    # Fedora
    sudo dnf install bubblewrap socat

    Ubuntu 24.04+: 기본 AppArmor 정책이 bubblewrap의 user namespace 생성을 차단할 수 있다.

    sudo tee /etc/apparmor.d/bwrap > /dev/null <<'EOF'
    abi <abi/4.0>,
    include <tunables/global>

    profile bwrap /usr/bin/bwrap flags=(unconfined) {
      userns,
      include if exists <local/bwrap>
    }
    EOF
    sudo systemctl reload apparmor

    1.4.2. 활성화

    세션 중 /sandbox 명령어로 메뉴를 열어 활성화한다.

    1.4.3. Sandbox 모드

    Auto-allow mode: sandbox 내에서 bash 명령어를 자동으로 허가한다. sandboxing할 수 없는 명령어는 일반 권한 흐름으로 fallback한다.

    Regular permissions mode: sandboxed 명령어도 표준 권한 흐름을 거친다. 더 많은 통제를 제공하지만 더 많은 승인이 필요하다.

    1.5. 설정

    1.5.1. 특정 경로 쓰기 허용

    {
      "sandbox": {
        "enabled": true,
        "filesystem": {
          "allowWrite": ["~/.kube", "/tmp/build"]
        }
      }
    }

    경로 접두사:

    - 접두사: 의미: 예시
    - /: 파일시스템 루트 기준 절대 경로: /tmp/build
    - ~/: 홈 디렉토리 기준: ~/.kube
    - ./ 또는 접두사 없음: 프로젝트 루트 기준: ./output

    1.5.2. 읽기/쓰기 거부

    {
      "sandbox": {
        "enabled": true,
        "filesystem": {
          "denyRead": ["~/"],
          "allowRead": ["."]
        }
      }
    }

    참고: allowRead는 denyRead보다 우선한다.

    1.6. 보안 이점

    1.6.1. Prompt injection 방어

    공격자가 prompt injection으로 Claude Code의 행동을 조작하더라도 sandbox는 시스템을 안전하게 유지한다.

    - ~/.bashrc 등 중요 설정 파일 수정 불가
    - /bin/ 등 시스템 파일 수정 불가
    - 허가되지 않은 서버로 데이터 유출 불가
    - 허가되지 않은 도메인에서 악성 스크립트 다운로드 불가

    1.7. 보안 제한사항

    - 네트워크 필터링: 내장 프록시는 TLS 트래픽을 종료하거나 검사하지 않는다. 도메인 기반으로만 제한한다.
    - Unix 소켓: allowUnixSockets 설정이 /var/run/docker.sock 등 강력한 시스템 서비스 접근을 우회할 수 있다.
    - 권한 상승: $PATH의 실행 파일 디렉토리, 시스템 설정 디렉토리, 셸 설정 파일(.bashrc) 등에 대한 쓰기 권한은 권한 상승 공격을 가능하게 할 수 있다.
    - Docker 환경: enableWeakerNestedSandbox는 Docker 내부에서 작동하도록 하지만 보안을 상당히 약화시킨다.

    1.8. Permission과의 관계

    - Permissions: Claude Code가 어떤 도구를 사용할 수 있는지 제어. 모든 도구에 적용.
    - Sandboxing: Bash 명령어와 하위 프로세스의 파일시스템/네트워크 접근을 OS 수준에서 제한. Bash에만 적용.

    둘을 함께 사용하는 defense-in-depth 전략:

    - Permission deny 규칙으로 제한된 리소스 접근 시도 자체를 차단
    - Sandbox 제한으로 prompt injection이 Claude의 의사결정을 우회하더라도 Bash 명령어가 경계 밖에 도달하지 못하도록 방지
     

    이 게시물을..
    N
    0
    0
    • [Rust 공식문서 한국어 정리] 150. Attribute Macros오뉴노노
    • 2
      민형준

    민형준 님의 최근 글

    [Rust 공식문서 한국어 정리] 184. PartialOrd 16 2026 06.08 [Rust 공식문서 한국어 정리] 183. Ord 13 2026 06.08 [Rust 공식문서 한국어 정리] 182. Eq 15 2026 06.08 [Rust 공식문서 한국어 정리] 181. PartialEq 15 2026 06.08 [Rust 공식문서 한국어 정리] 180. TryFrom 13 2026 06.08

    민형준 님의 최근 댓글

    ㅋㅋㅋㅋㅋ 2019 01.14 잘 읽었습니다 2018 12.30 포인트가 없어서 아직 시작을 못하고있는데요! 글은 잘 읽었습니다! 포인트 쌓고 도전할거에요 2018 12.30
    글쓴이의 서명작성글 감추기 
    댓글 쓰기 에디터 사용하기 닫기
    • view_headline 목록
    • 14px
    • [Rust 공식문서 한국어 정리] 150. Attribute Macros
    • 목록
      view_headline
    × CLOSE
    전체 던파 5 뮤 18 천상비 프로젝트신루 5 아이온 18 어둠의전설 28 리니지2 7 크로노스 5 칼온라인 3 기타 490
    기본 (582) 제목 날짜 수정 조회 댓글 추천 비추
    분류 정렬 검색
    • 포인트 획득 공지
      5
      2026.04.24 - 19:48 4946 5
    • 링크 업로드 관련 공지
      8
      2026.03.25 - 21:56 4711 8
    • 인증메일 공지
      3
      2026.03.15 - 16:42 4605 3
    • 파일링크 및 인증메일 발송 관련 문의 안내
      9
      2026.03.14 - 22:03 5248 9
    • 포인트 게시판 안내
      2026.02.28 - 19:14 5993
    • 게임존 사이트 변경 사항 안내
      9
      2026.02.26 - 01:07 7853 9
    • 소스자료는 직접 올려주세요
      2017.06.06 - 16:16 853
    582
    기타
    [Rust 공식문서 한국어 정리] 184. PartialOrd
    오뉴노노 2026.06.08 - 15:42 16
    581
    기타
    [Rust 공식문서 한국어 정리] 183. Ord
    오뉴노노 2026.06.08 - 15:42 13
    580
    기타
    [Rust 공식문서 한국어 정리] 182. Eq
    오뉴노노 2026.06.08 - 15:42 15
    579
    기타
    [Rust 공식문서 한국어 정리] 181. PartialEq
    오뉴노노 2026.06.08 - 15:42 15
    578
    기타
    [Rust 공식문서 한국어 정리] 180. TryFrom
    오뉴노노 2026.06.08 - 15:42 13
    577
    기타
    [Rust 공식문서 한국어 정리] 179. TryInto
    오뉴노노 2026.06.08 - 15:42 11
    576
    기타
    [Rust 공식문서 한국어 정리] 178. From
    오뉴노노 2026.06.08 - 15:39 14
    575
    기타
    [Rust 공식문서 한국어 정리] 177. Into
    오뉴노노 2026.06.08 - 15:39 9
    574
    기타
    [Rust 공식문서 한국어 정리] 176. AsRef
    오뉴노노 2026.06.08 - 15:39 5
    573
    기타
    [Rust 공식문서 한국어 정리] 175. Deref
    오뉴노노 2026.06.08 - 15:39 4
    572
    기타
    [Rust 공식문서 한국어 정리] 174. Default
    오뉴노노 2026.06.08 - 15:39
    571
    기타
    [Rust 공식문서 한국어 정리] 173. Clone
    오뉴노노 2026.06.08 - 15:38
    570
    기타
    [Rust 공식문서 한국어 정리] 172. Copy
    오뉴노노 2026.06.08 - 15:38
    569
    기타
    [Rust 공식문서 한국어 정리] 171. Drop
    오뉴노노 2026.06.08 - 15:38
    568
    기타
    [Rust 공식문서 한국어 정리] 170. Weak
    오뉴노노 2026.06.08 - 15:37
    567
    기타
    [Rust 공식문서 한국어 정리] 169. Arc
    오뉴노노 2026.06.08 - 15:37
    566
    기타
    [Rust 공식문서 한국어 정리] 168. Rc
    오뉴노노 2026.06.08 - 15:37
    565
    기타
    [Rust 공식문서 한국어 정리] 167. Box
    오뉴노노 2026.06.08 - 15:36
    564
    기타
    [Rust 공식문서 한국어 정리] 166. str
    오뉴노노 2026.06.08 - 15:36
    563
    기타
    [Rust 공식문서 한국어 정리] 165. String
    오뉴노노 2026.06.08 - 15:36
    562
    기타
    [Rust 공식문서 한국어 정리] 164. HashMap
    오뉴노노 2026.06.08 - 15:36 1
    561
    기타
    [Rust 공식문서 한국어 정리] 163. Vec
    오뉴노노 2026.06.08 - 15:35
    560
    기타
    [Rust 공식문서 한국어 정리] 162. Result
    오뉴노노 2026.06.08 - 15:35
    559
    기타
    [Rust 공식문서 한국어 정리] 161. Option
    오뉴노노 2026.06.08 - 15:35
    558
    기타
    [Rust 공식문서 한국어 정리] 160. Iterators
    오뉴노노 2026.06.08 - 15:35
    557
    기타
    [Rust 공식문서 한국어 정리] 159. Closures
    오뉴노노 2026.06.08 - 15:35
    556
    기타
    [Rust 공식문서 한국어 정리] 158. Trait Objects
    오뉴노노 2026.06.08 - 15:34
    555
    기타
    [Rust 공식문서 한국어 정리] 157. Lifetimes
    오뉴노노 2026.06.08 - 15:34 1
    554
    기타
    [Rust 공식문서 한국어 정리] 156. Cargo.lock
    오뉴노노 2026.06.08 - 15:34
    553
    기타
    [Rust 공식문서 한국어 정리] 155. Cargo.toml
    오뉴노노 2026.06.08 - 15:34 1
    552
    기타
    [Rust 공식문서 한국어 정리] 154. Workspaces
    오뉴노노 2026.06.08 - 15:34
    551
    기타
    [Rust 공식문서 한국어 정리] 153. Crates
    오뉴노노 2026.06.08 - 15:33
    550
    기타
    [Rust 공식문서 한국어 정리] 152. Modules
    오뉴노노 2026.06.08 - 15:33
    549
    기타
    [Rust 공식문서 한국어 정리] 151. Proc Macros
    오뉴노노 2026.06.08 - 15:32 1
    548
    기타
    [Rust 공식문서 한국어 정리] 150. Attribute Macros
    오뉴노노 2026.06.08 - 15:32
    547
    기타
    [Rust 공식문서 한국어 정리] 149. cfg
    오뉴노노 2026.06.08 - 15:32
    546
    기타
    [Rust 공식문서 한국어 정리] 148. assert
    오뉴노노 2026.06.08 - 15:31
    545
    기타
    [Rust 공식문서 한국어 정리] 147. panic
    오뉴노노 2026.06.08 - 15:27
    544
    기타
    [Rust 공식문서 한국어 정리] 146. Error
    오뉴노노 2026.06.08 - 15:24
    543
    기타
    [Rust 공식문서 한국어 정리] 145. Any
    오뉴노노 2026.06.08 - 15:22
    542
    기타
    [Rust 공식문서 한국어 정리] 144. Unpin
    오뉴노노 2026.06.08 - 15:19
    541
    기타
    [Rust 공식문서 한국어 정리] 143. Pin
    오뉴노노 2026.06.08 - 15:17 2
    540
    기타
    [Rust 공식문서 한국어 정리] 142. LazyLock
    오뉴노노 2026.06.08 - 15:14 1
    539
    기타
    [Rust 공식문서 한국어 정리] 141. OnceCell
    오뉴노노 2026.06.08 - 15:11
    538
    기타
    [Rust 공식문서 한국어 정리] 140. Atomic
    오뉴노노 2026.06.08 - 15:06
    537
    기타
    [Rust 공식문서 한국어 정리] 139. RwLock
    오뉴노노 2026.06.08 - 14:34 3
    536
    기타
    [Rust 공식문서 한국어 정리] 152. Modules
    오뉴노노 2026.06.08 - 14:00
    535
    기타
    [Rust 공식문서 한국어 정리] 151. Proc Macros
    오뉴노노 2026.06.08 - 14:00
    534
    기타
    [Rust 공식문서 한국어 정리] 150. Attribute Macros
    오뉴노노 2026.06.08 - 14:00 3
    533
    기타
    [Rust 공식문서 한국어 정리] 149. cfg
    오뉴노노 2026.06.08 - 14:00 3
    • 1 2 3 4 5 6 7 8 9 10 .. 12
    • / 12 GO
  • GAMEZONE
 GAMEZONE all rights reserved.
by OrangeDay