[지디넷코리아]
지난 3월 31일, 미국 앤트로픽(Anthropic)의 AI 코딩 에이전트 클로드 코드(Claude Code)의 전체 소스코드가 유출되는 사건이 발생했다. npm(개발자용 패키지 저장소) 배포 버전에 소스맵 파일(원본 코드 복원용 디버깅 파일)이 포함된 패키징 오류가 원인이었다. 수 시간 만에 약 51만 줄의 코드가 깃허브(GitHub)에 미러링돼 세계로 퍼졌다. 얼마전 전에도 CMS 설정 오류로 미발표 모델 내부 문서 3000여 건이 노출된 바 있다. 10일 사이 두 번째 사고였다.
유출을 축제로 만든 72시간
유출 직후 개발자 커뮤니티 반응은 축제에 가까웠다. 미러 저장소에 수만 개의 스타가 쏟아졌고, 코드 안에서 발견된 미공개 기능들은 “보물 창고”라며 분석 글로 재가공됐다.
Anthropic이 DMCA(디지털 밀레니엄 저작권법) 테이크다운으로 원본 미러와 8100개 이상의 포크(fork, 저장소 복제본)를 차단하자, 더 흥미로운 전환이 벌어졌다. 유출본을 그대로 올렸던 한 저장소가 수십 차례 force-push(기존 이력을 덮어쓰는 강제 업데이트)를 거쳐 ‘파이썬(Python) 클린룸 재구현’으로 재포장한 것이다. 유출본 시절의 5만 개 이상 스타는 고스란히 새 이름으로 이전됐다. 한국 개발자 커뮤니티에서는 “유출코드를 기반으로 한 클린룸 구현은 그 자체로 모순적”이라는 지적이 즉각 나왔다. ‘클린룸’이라는 이 단어가 왜 문제인지 짚어볼 필요가 있다.
클린룸은 그렇게 작동하지 않는다
‘클린룸 역설계(clean-room reverse engineering)’는 경쟁사 제품과 호환되는 소프트웨어를 합법적으로 만들기 위한 기법이다. 1984년 피닉스 테크놀로지스(Phoenix Technologies)가 IBM PC의 BIOS를 호환 구현하면서 확립됐다.
원리의 핵심은 ‘격리’다. 명세 팀은 원본 제품을 분석해 “이 프로그램이 무엇을 하는가”를 문서로 기술한다. 구현 팀은 원본 코드를 전혀 본 적 없는 엔지니어들로 구성되며, 오직 명세 문서만 보고 새로 코드를 작성한다. 이 격리가 클린룸 방어의 전부라 해도 과언이 아니다. 미국 주요 판례가 이 원칙을 일관되게 확인했다.
여기서 결정적인 점이 있다. 이 판례들에서 역설계 대상은 언제나 컴파일된 바이너리(사람이 읽을 수 없는 기계어 실행 파일)의 외부 동작이었다. 명세 팀은 프로그램을 실행해보며 동작을 관찰했지, 소스코드를 읽지 않았다.

이번 클로드 코드 사태는 이와 결정적으로 다르다. 소스코드는 저작권법이 보호하는 ‘표현’ 그 자체다. 변수명, 주석, 아키텍처 결정, 모듈 구성이 모두 담겨 있다. 소스코드를 읽은 사람은 “무엇을 하는가”뿐 아니라 “어떻게 하는가”까지 흡수한다. 그 사람이 명세 작성과 재구현을 동시에 수행한다면, 클린룸의 핵심 전제-구현자가 원본 표현에 오염되지 않았다는 증명-가 무너진다.
추상적 우려가 아니다. 실제로 미국 법원은 수년 전에 들은 노래의 무의식적 복제만으로 저작권 침해를 인정했다. 유출 코드를 직접 읽고 수 시간 뒤 재구현한 경우, 이 위험은 비교할 수 없이 높다.
미국 영업비밀법(DTSA)도 명확하다. 정보가 ‘우연 또는 실수로’ 유출된 것임을 알았거나 알 수 있었던 자의 사용을 금지한다. 또한 미국 법원은 “뚫을 수 없는 요새를 요구하는 것은 합리적이지 않다”고 판시했다. Anthropic의 보안이 완벽하지 않았다는 사실이 보호를 소멸시키지 않는다. 필자도 법령에 있어선 전문가가 아니기에 이 이슈로 미국에서 법을 전공하고 변호사 자격을 취득한 대학시절 은사께 별도로 연락을해 여쭤보았다.
개인정보가 유출되었을 때, 우리는 이렇게 하지 않는다
간단한 상상을 해보자. 쇼핑몰에서 고객 이메일과 전화번호가 유출됐다. 누군가가 이 데이터를 ‘워싱’해서 ‘클린 데이터셋’이라며 공개했다. 우리는 이것을 환영하지 않는다. 유출 경로가 해킹이든 설정 실수든, 원래 소유자가 공개를 의도하지 않았다는 사실이 변하지 않기 때문이다.
그런데 피해자가 개인에서 기업으로 바뀌면, 같은 잣대가 느슨해진다. “교육 목적”, “아키텍처 패턴 학습”, “클린룸 재구현” 이 프레이밍들은 본질적으로 유출 데이터 워싱과 같은 기능을 한다. 의도치 않은 유출을 ‘자원봉사자가 정리해 준 오픈소스’로 의미를 바꿔치기하는 것이다.
이중 잣대는 커뮤니티에만 있는 것이 아니다. 이번 유출 코드에서 발견된 ‘언더커버 모드(Undercover Mode)’는 Anthropic 자체의 이중 잣대를 드러냈다. Anthropic은 외부 사용자에게 AI 코드 어트리뷰션(기여자 표기)을 기본 부착하면서, 자사 직원이 오픈소스에 기여할 때는 AI 흔적을 완전히 지우는 모드를 별도로 만들어 두었다. 고객에게는 투명성을 요구하고, 자신은 회피하는 구조다.
결국 이 사태의 윤리적 구조는 단순하다. 정보가 공개를 의도한 것이 아니고, 유출이 실수에서 비롯되었으며, 그 정보를 소비하는 행위가 피해를 확대한다. 이 세 가지 조건은 피해자가 개인이든 기업이든 동일하게 성립한다.
선을 지키자
필자는 성인군자적 주장을 하려는 것이 아니다. 업계종사자로서, 사회 구성원으로서 최소한의 역할을 하자는 것이다. 공식 문서에 기반한 동작 분석이나 에이전틱 루프(agentic loop, AI가 도구를 반복 호출하며 작업을 수행하는 구조) 같은 아키텍처 일반론은 건강한 엔지니어링 학습이다. 그러나 유출 코드를 미러링하고, “클린룸”이라 포장해 재구현하며, 미공개 기능 분석을 자기 마케팅에 활용하는 것은 다른 문제다. 클린룸 법리가 요구하는 최소 기준 (구현자가 원본을 전혀 본 적 없어야 한다는 것) 조차 충족하지 못하는 법적 허구다.
오늘 Anthropic에 일어난 일이 내일 다른 회사에 일어나지 않으리라는 보장은 없다. 의도치 않은 유출은 오픈소스가 아니다. 실수로 문이 열렸다고 해서 들어가도 되는 것이 아니다. 이 단순한 사실을 인정하는 것이 개발자 커뮤니티가 스스로에게 요구해야 할 최소한의 기준이다.
■ 필자 안광섭은…
세종대학교 경영학과 교수이자 OBF(Oswarld Boutique Consulting Firm) 리드 컨설턴트다. 대학에서 경영데이터 관리, 비즈니스 애널리틱스 등 데이터 분석을 가르치는 한편, 현장에서는 GTM 전략과 인공지능 전략 컨설팅을 이끌며 기술과 비즈니스의 접점을 설계하고 있다.
AI 대화 시스템의 기억 아키텍처(HEMA) 연구로 학술 논문을 발표했으며, 매일 글로벌 AI 논문을 큐레이션하는 Daily Arxiv 프로젝트를 운영하고 있다. 고려대학교 KBMA 기술경영전문대 석사과정을 졸업했다. 저술한 책으로 ‘생각을 맡기는 사람들: 호모 브레인리스’가 있다.
