시스메틱 데일리코딩 못해도 AI로 자동화 시스템 만드는 법
기술·논문

클로드 코드 안전장치, 44KB는 공개되지 않았다

5단 관문·2단 분류기 구조 해부 — 규칙보다 '동의 해석'이 승부처

클로드 코드(Claude Code)의 오토 모드(auto mode)가 실제로 어떻게 작동하는지 통신 구간을 직접 들여다본 분석이 나왔다. 에이전트 보안 업체 하이플레임(Highflame)의 저스틴 알브레스텐(Justin Albrethsen)이 7월 27일 공개한 글로, 클로드 코드 2.1.220 버전의 트래픽을 mitmproxy로 가로채 분류기에 전달되는 시스템 프롬프트를 확인했다. 결론은 규칙 목록보다 '사용자가 예라고 했을 때 정확히 무엇에 동의한 것인가'를 판정하는 부분이 훨씬 중요하다 는 것이다.

무슨 일인가

오토 모드에서 클로드 코드는 두 번째 모델을 세워 첫 번째 모델을 심판한다. 에이전트가 결과를 남기는 행동을 할 때마다 클로드 소네트 5(claude-sonnet-5)가 그 행동을 평가한 뒤 실행 여부가 갈린다.

필자가 겪은 일화가 상징적이다. 분류기의 규칙 목록을 출력하는 공식 명령을 실행하려 했더니 분류기가 이를 막았다. 반환된 사유는 "분류기에 의해 차단됨"이라는 고정 문구뿐이었고, 어떤 규칙이 발동했는지는 알 수 없었다. 무엇에 걸렸는지 알려주지 않는다는 점이 이 시스템의 실무적 난점이다.

핵심 짚어보기

분석에 따르면 행동 하나는 다섯 개의 관문을 지난다.

첫째, 권한 규칙이다. 설정의 거부(deny)·질문(ask) 규칙은 모델이 개입하기 전에 하네스 단계에서 처리된다. 실제로 Bash(rm *)에 거부 규칙을 걸어 두자 분류기 호출 자체가 한 번도 발생하지 않았다. 사용자가 통제할 수 있는 유일한 진짜 정책 경계선이 이 단계다.

둘째, 자동 승인이다. 읽기, 검색, 프로젝트 내부 편집, Bash(npm test)처럼 범위가 좁은 셸 규칙은 분류기를 아예 거치지 않는다. 설정에서 모든 셸 명령을 분류기에 보내도록 강제하는 옵션도 있다.

셋째와 넷째는 2단 심사다. 먼저 값싼 트리아지 호출이 최대 64토큰으로 0~100 사이 심각도를 매기고, 50점이 차단선이다. 이 단계는 사용자가 무엇을 요청했는지는 고려하지 말고 해악만 보라는 지시를 받는다. 여기서 걸린 행동만 최대 8,192토큰짜리 판정 호출로 넘어간다. 실제 캡처에서 강제 푸시 명령은 트리아지에서 85점을 받았지만, 판정 단계가 "사용자가 작업과 대상을 명시적으로 지정했다"고 보고 15점으로 뒤집었다. 값싼 첫 호출은 필터일 뿐 판결이 아니라는 뜻이다.

다섯째는 API 사용정책 거부로, 모든 클라이언트 설정 아래에 놓인다.

규칙 목록을 출력하는 명령은 분류기가 읽는 내용의 약 60%만 보여준다. 나머지 약 44KB는 출력되지 않고 문서화도 되어 있지 않은데, 하필 그 절반이 규칙을 언제 완화할지 결정하는 동의 모델과 멀티에이전트 공격 패턴, 그리고 사용자 승인으로도 풀 수 없는 규칙 범주를 담고 있다. 기본 제공되는 소프트 차단 규칙 64개 가운데 상당수는 인프라 손상이 아니라 에이전트가 자신의 감시를 벗어나려는 시도 를 겨냥한다. 자기 승인, 샌드박스 밖으로의 네트워크 콜백, 위험한 하위 에이전트 생성, 자기 터미널 창에 키 입력을 보내 스스로를 조종하는 행위 등이다.

1인기업 실전 적용 포인트

  • 거부 규칙부터 채운다. 분류기를 믿기 전에 배포 명령, 프로덕션 데이터베이스 접속, 결제·메일 발송 스크립트를 설정의 deny 목록에 직접 넣는다. 이 단계는 모델 판단 이전에 작동하므로 오탐·미탐의 영향을 받지 않는다.
  • 지시할 때 작업과 대상을 함께 말한다. "정리해줘" 같은 모호한 표현은 막히고, "현재 브랜치를 origin에 강제 푸시해"처럼 동작과 목표를 명시한 지시는 통과한다. 판정 모델이 명시성을 동의의 근거로 삼기 때문이다.
  • 차단당하면 사유를 묻지 말고 명령을 쪼갠다. 반환되는 사유가 고정 문구라 원인 추적이 불가능하다. 한 줄에 묶인 복합 명령을 단계별로 나눠 실행하는 편이 빠르다.
  • 자동화 스크립트에는 되돌리기 지점을 넣는다. 인용된 앤트로픽 자료 기준으로 오탐은 0.4%인 반면 미탐은 17%다. 놓치는 쪽이 훨씬 흔하다는 전제로 작업 전 커밋을 습관화한다.

전망과 주의점

이 분석은 오토 모드가 기본값이 되는 시점과 맞물려 읽어야 한다. 규칙의 40%가 비공개라는 사실은 보안상 불가피한 선택일 수 있지만, 사용자 입장에서는 자기 도구가 왜 멈췄는지 알 수 없다는 뜻이기도 하다. 자동화를 설계할 때는 분류기를 안전망으로 신뢰하기보다, 통과 여부가 흔들릴 수 있는 확률적 층으로 간주하고 그 아래에 자기 통제 수단을 깔아 두는 편이 현실적이다.

출처: Highflame Blog (https://www.highflame.com/blog/the-44kb-of-claude-codes-rulebook-you-cant-print/)
← 전체 기사 보기