Claude Code의 소스 코드가 NPM 레지스트리의 map 파일을 통해 유출됨

20 hours ago 1
  • npm 레지스트리의 소스맵(map) 파일을 통해 Claude Code의 전체 소스 코드가 외부에 노출되어 내부 구조와 기능이 공개됨
  • 유출된 파일에는 시스템 프롬프트, 텔레메트리, 바이패스 모드, Undercover Mode 등 핵심 구성요소가 포함되어 있음
  • 원인은 .npmignore 설정 누락과 bun 빌드 도구의 기본 소스맵 생성 기능으로 지목됨
  • 코드에는 편향 방지나 보호 규칙이 거의 없고, 최소한의 톤 보호만 존재하는 것으로 확인됨
  • 커뮤니티에서는 이를 ‘AI의 자가 오픈소스화’ 로 풍자하며, 보안 관리 부주의가 초래한 대규모 유출 사례로 주목함

Claude Code 소스 코드 유출 사건

  • Claude Code의 전체 소스 코드가 npm 레지스트리의 소스맵(map) 파일을 통해 외부에 노출된 것으로 확인됨
    • 공개된 링크는 src.zip 형태의 압축 파일로, 코드 구조와 내부 기능이 포함되어 있음
    • 이로 인해 시스템 프롬프트, 텔레메트리, 바이패스 모드, Undercover Mode 등의 내부 구성요소가 드러남
  • 이는 Anthropic이 1년 내 두 번째로 겪은 비의도적 유출 사고로 언급됨
    • 커뮤니티에서는 “누군가 *.map 파일을 .npmignore에 추가하지 않았다”는 빌드 설정 실수로 원인을 지적
    • bun 빌드 도구가 기본적으로 소스맵을 생성하기 때문에, 이를 비활성화하지 않은 점이 문제로 지목됨
  • 일부 사용자는 이 유출 파일을 Claude 모델이나 백엔드 접근 코드로 오해했으나,
    • 소스맵은 앱 구조와 함수, 코드 흐름을 보여줄 뿐, 모델 가중치나 시스템 접근 권한은 포함하지 않음
    • 따라서 실행 가능한 모델이 아니라 리버스 엔지니어링, 버그 탐색, 아키텍처 분석에만 유용함
  • 유출된 코드에는 ‘Undercover Mode’라는 서브시스템이 포함되어 있었으며,
    • 이는 Claude가 내부 정보를 실수로 노출하지 않도록 설계된 기능임
    • 그러나 인간 개발자의 설정 실수로 그 기능 자체가 외부에 공개된 상황
  • 코드 분석자들은 편향 방지나 보호된 클래스 처리 규칙이 전혀 없는 점을 지적
    • 인종, 성별, 종교 등 민감 속성 관련 가드레일이나 키워드 필터, 분류기가 존재하지 않음
    • “Minimal tone protection”만 존재하고, 편향 완화 정책이 전무한 것으로 확인됨

커뮤니티 반응 및 논의

  • 커뮤니티에서는 “리포지토리는 자유를 원한다”는 농담과 함께, 이번 사건을 ‘오픈소스화의 아이러니’ 로 표현
    • “Claude가 스스로를 해방시켰다”, “AI가 직접 자신을 오픈소스로 만들었다”는 풍자적 반응이 다수 등장
    • “세계 최고 수준의 AI 코딩 도구를 만들고 *.map을 빼먹었다”는 비판적 유머도 확산됨
  • 일부 이용자들은 보안 위험성을 경고
    • 출처 불명의 r2.dev 링크를 무심코 다운로드하는 행태를 비판하며,
    • “AI 안전을 논하던 커뮤니티가 검증되지 않은 zip 파일을 클릭했다”는 자조적 반응이 이어짐
  • “이것이 Claude의 종말의 시작인가?”, “의도적 유출인가 실수인가?” 등의 의문도 제기됨
    • “Anthropic 내부에서 누군가 최악의 월요일을 맞이했을 것”이라는 반응이 공유됨
  • 커뮤니티에서는 유출된 코드의 활용 가능성에 대한 논의도 이어짐
    • “이제 무엇을 할 수 있을까?”, “이걸 기반으로 Claude Code를 다시 빌드할 수 있나?” 등의 질문이 등장
    • “openclaude”라는 별칭이 생기며, 비공식 오픈소스 프로젝트화 가능성도 언급됨

추가 정보

  • 공개된 코드 중 가장 큰 파일 5개는 다음과 같음
    1. cli/print.ts – 5,594줄
    2. utils/messages.ts – 5,512줄
    3. utils/sessionStorage.ts – 5,105줄
    4. utils/hooks.ts – 5,022줄
    5. screens/REPL.tsx – 5,005줄
  • 일부 사용자는 DeepWiki 링크를 통해 코드 수준의 분석 자료를 공유
  • 전체적으로 이번 사건은 npm 배포 설정의 단순 실수대규모 AI 코드 유출로 이어질 수 있음을 보여주는 사례로 평가됨
Read Entire Article