앤트로픽 클로드 코드(Claude Code) 유출, 사고? PR? 개발자들은 흥분!
앤트로픽(Anthropic)의 클로드 코드(Claude Code) 소스코드 51만 2천여 줄이 .npmignore 설정 오류로 인해 npm에 공개됨
.npmignore 설정 오류와 Cloudflare R2 버킷(Bucket) 접근 권한 문제가 복합적으로 작용하여 소스코드 유출 발생
유출된 코드에는 KAIROS, ULTRAPLAN, BUDDY 등 미출시 기능과 데이터 미저장 정책(Zero-Retention Policy)을 위한 안티-디스틸레이션(Anti-Distillation) 기술 포함
앤트로픽은 사고 발생 후 DMCA 대응에 소극적이며, 개발자 커뮤니티의 긍정적 반응을 이끌어냄
axios RAT 공격과 겹쳐 보안 위험이 발생했으며, 앤트로픽은 네이티브 인스톨러(Native Installer) 사용을 권장
소스코드 유출의 기술적 배경
본문에 따르면 클로드 코드(Claude Code) 유출은 .npmignore 파일 설정 오류와 Cloudflare R2 버킷(Bucket)의 공개 접근 권한이라는 두 가지 치명적인 설정 실패가 원인이다.
.npmignore: 소스 맵 파일(*.map)을 제외하지 않아 디버깅 정보(Debugging Information)가 노출
Cloudflare R2: 소스 맵 파일이 참조하는 .zip 파일에 대한 공개 접근 허용
Bun 런타임(Runtime) 버그: 프로덕션 빌드(Production Build)에서 소스 맵 파일이 생성되는 문제
결과적으로, 단일 설정 실수로 인해 51만 2천 줄 이상의 소스코드가 유출되었으며, 이는 앤트로픽의 릴리즈 파이프라인(Release Pipeline) 전반의 문제점을 드러낸다.
클로드 코드(Claude Code) 아키텍처 심층 분석
유출된 소스코드는 클로드 모델을 감싸고 도구 사용, 파일 관리, 명령 실행, 멀티 에이전트 워크플로우(Multi-agent Workflow)를 조율하는 '에이전트 하네스(Agentic Harness)'의 src/ 디렉토리이다.
툴 시스템(Tool System): 40개 이상의 도구(Tool)를 플러그인(Plugin) 형태로 구성, 각 도구는 고유한 권한 모델(Permission Model)과 검증 로직(Validation Logic)을 가짐
쿼리 엔진(Query Engine): LLM API 호출, 응답 스트리밍, 토큰 캐싱(Token Caching), 컨텍스트 관리(Context Management) 담당
메모리 아키텍처(Memory Architecture): 3-레이어 메모리 시스템(Three-layer Memory System)을 통해 컨텍스트 엔트로피(Context Entropy) 문제 해결
결론적으로, 클로드 코드(Claude Code)는 모듈화된 아키텍처(Modularized Architecture)를 통해 확장성과 유지보수성을 확보하고 있으며, 특히 메모리 관리 기법은 경쟁사들이 주목할 만하다.
미출시 기능 및 안티-디스틸레이션(Anti-Distillation) 기술
유출된 소스코드에는 앤트로픽이 아직 공개하지 않은 다양한 기능들이 포함되어 있으며, 특히 경쟁사들의 모델 학습을 방지하기 위한 안티-디스틸레이션(Anti-Distillation) 기술이 눈에 띈다.
KAIROS: 백그라운드에서 실행되는 자율 에이전트(Autonomous Agent)로, 야간 메모리 통합, 모순 제거, 사실 검증 수행
ULTRAPLAN: 원격 클라우드 컨테이너 런타임(Cloud Container Runtime)에서 복잡한 계획 작업을 처리
BUDDY: 터미널(Terminal) 옆에 표시되는 AI 펫(Pet) 기능
ANTI_DISTILLATION_CC 플래그: API 요청에 가짜 도구 정의(Decoy Tool Definitions)를 삽입하여 경쟁사의 학습 데이터 오염 시도
이러한 기능들은 앤트로픽의 기술적 역량을 보여주는 동시에, 데이터 미저장 정책(Zero-Retention Policy)을 위한 노력을 엿볼 수 있게 한다.
axios RAT 공격과 보안 위험
클로드 코드(Claude Code) 유출 사건과 동시에, npm에서 axios 라이브러리(Library)의 공급망 공격(Supply Chain Attack)이 발생하여 심각한 보안 위험을 초래했다.
axios@1.14.1 및 axios@0.30.4: 원격 접근 트로이 목마(Remote Access Trojan, RAT) 포함
감염 시나리오: 클로드 코드(Claude Code) 업데이트 과정에서 악성 axios 버전 설치
대응 방법: lockfile 검사, 자격 증명(Credentials) 및 API 키(API Keys) 즉시 변경, OS 재설치
앤트로픽은 네이티브 인스톨러(Native Installer) 사용을 권장하며, npm 의존성 관리의 중요성을 강조한다. 이번 사건은 공급망 공격(Supply Chain Attack)의 위험성을 다시 한번 일깨워준다.
DMCA 대응과 법적 문제
앤트로픽은 소스코드 유출에 대해 DMCA(Digital Millennium Copyright Act)를 통해 대응하려 했으나, 분산된 미러(Mirrors)와 AI 저작권 문제로 인해 어려움을 겪고 있다.
Gitlawb: '절대 내려가지 않음' 메시지와 함께 소스코드 미러링
AI 저작권: 클로드 코드(Claude Code)의 상당 부분이 AI에 의해 생성되었을 가능성
AI 저작물 저작권: AI가 생성한 코드에 대한 저작권 인정 여부 불확실
결과적으로, DMCA는 중앙 집중식 플랫폼에서는 효과적이지만, 분산된 환경에서는 실질적인 제약이 어려우며, AI 저작권 문제 또한 해결해야 할 과제로 남아있다.
사고 vs. PR 전략: 앤트로픽의 의도
본문에서는 클로드 코드(Claude Code) 유출이 사고인지, PR 전략인지에 대한 다양한 추측을 제시하며, 그 근거로 사건의 시점, Bun 버그, Undercover 모드의 아이러니, OpenCode와의 갈등, 2차 유출 의혹 등을 제시한다.
April Fools' Day: BUDDY 기능 출시 예정일과 유출 시점의 일치
Undercover Mode: AI가 생성한 콘텐츠에서 내부 코드명 노출 방지 기능 존재
OpenCode와의 갈등: 개발자 커뮤니티의 부정적 여론 반전
2차 유출: 캡바라(Capybara) 모델 관련 문서 유출
결론적으로, 앤트로픽의 의도에 대한 명확한 증거는 없지만, 사건의 전개 과정과 결과가 앤트로픽에 유리하게 작용했다는 점은 부인하기 어렵다.