Claude Code, 요청에 스테가노그래피 마커를 숨김
요약
Anthropic의 Claude Code가 모델 증류를 방지하기 위해 요청에 스테가노그래피 마커를 숨기는 방식을 사용한다는 논란을 다룹니다. 구현의 허술함과 사업적 필요성 사이의 대립, 그리고 이를 통한 모델 보호 전략에 대해 분석합니다.
핵심 포인트
- Claude Code가 모델 증류 식별을 위해 스테가노그래피 기법을 사용함
- 구현 방식이 다소 허술하여 역공학 탐지 가능성이 존재함
- 모델 보호를 위한 1차 방어선으로서의 역할 가능성
- 프록시 재판매자 및 특정 국가의 모델 무단 사용 탐지 목적
서비스 제공자가 고객 머신에서 배포한 도구가 정확히 무엇을 하는지 투명하게 공개하지 않은 심각성을 축소하는 반응들이 있음
사업상 필요가 있었다고 해서 정직한 공개를 안 해도 되는 건 아님
정직하게 공개하면 그들의 해법이 무용지물이 된다는 것도 내 문제는 아니고, 오히려 이걸 괜찮다고 봤다면 내 머신에서 개인식별정보 같은 뭘 더 수집하고 있을지 의심하게 됨
냉소적으로 보면 이 사안에 대한 판단이라기보다 AI/Anthropic/미국 등에 대한 감정이 댓글 분위기에 반영된 것처럼 느껴짐
처음엔 “중국인”이고, 다음엔 “사이버” 역량을 쓰는 사람, “탈옥”하는 사람, “Dario에 반하는” 사람, 또는 그들이 불쾌하다고 보는 대상으로 넓어질 것임
Anthropic의 행동이 나쁘다고 보든 아니든, Anthropic은 외국 연구소들이 자기 모델을 증류하고 있다고 한동안 매우 크게 말해 왔음
이건 그런 사실을 드러내기 위한 당연한 대응 수단처럼 보임
환경 변수에 따라 요청에 워터마크를 넣고, 특정 시간대에 있으면 문자열 형식을 바꾸는 정도 아닌가? 내가 뭘 놓치고 있나? 대체 어디가 대형 화재급 사안인지 모르겠음
“제공자의 사업상 필요가 이런 행동을 요구한다”가 사실이라면, 그건 그 사업이 정당하지 않은 사업이라는 또 다른 이유가 됨
정치적 입장은 있어 보이지만, 클라우드 서비스가 어떻게 동작하는지는 전혀 이해하지 못한 듯함
가치판단은 제쳐 두고, 이걸 이렇게 허술하게 구현했다는 게 좀 놀라움
역공학으로 탐지될 가능성을 낮추면서도 같은 효과를 낼 수 있었을 것 같음
이 분야는 Underhanded C Contest가 만든 “underhanded code”로 알려져 있음: https://www.underhanded-c.org
별로 알려지지 않은 “기예”인데, 이유는 자명할 것임. 이런 목표를 달성하는 훨씬 영리한 방식이 있음
명백한 방법 하나는 클라이언트에서 서버로 더 많이 옮기는 것이고, 또 하나는 그럴듯하게 부인 가능한 클라이언트 코드를 훨씬 무해해 보이는 방식으로 작성하는 것임
추가된 것 중 일부는 클라이언트에서만 가능하지만, 일부는 옮길 수 있었고 클라이언트가 필요한 부분도 더 미묘하고 그럴듯하게 만들 수 있었을 듯함
JS 번들이 워낙 많이 검토되니 결국 발견돼 보도될 걸 알고 더 은밀하고 기만적으로 만들지 않았을 가능성도 있지만, 그래도 약간 성의 없어 보임
더 깊은 탐지 방법이 따로 있고, 이건 덜 정교한 악성 행위자를 많이 잡아내는 싸고 쉬운 1차 방어라서 제거하지 않은 것일 수도 있음
정말 작정한 대형 AI 연구소가 모델을 증류하는 걸 막기는 어렵겠지만, A) 빠르게 돈 벌려는 날림 토큰 재판매업자들을 많이 막을 수 있고 B) 그런 대형 연구소의 누군가가 우회책 설치를 깜빡해서 스스로 드러낼 수도 있음
마당에 새가 많아 플라스틱 부엉이를 사는 것과 비슷하게 봄. 부엉이가 대부분의 새를 쫓지만 전부는 아니어서 초음파 장치를 추가로 산다고 해도, 부엉이를 내릴 이유는 없음
이제 방어층이 하나가 아니라 두 겹이 되기 때문임
Claude가 바이브 코딩된 걸 생각하면 허술함이 전혀 놀랍지 않음
Anthropic 모델이 나빠서가 아니라 Claude가 매일 새롭고 짜증 나는 걸 하나씩 깨뜨리는 것 같아서 Codex와 OpenCode 쪽으로 더 옮겨 가는 중임
처음엔 빠르게 들킬 게 뻔한 허술한 구현이라는 데 동의했지만, 다른 가능성도 있음
Anthropic이 이걸 프록시 재판매자를 상대로 한 지속적 탐지 시스템이 아니라, 현재 어디서 어떤 맥락으로 프록시 재판매가 벌어지는지 알아내는 특정 시점 표본 추출 시스템으로 구현했을 수 있음
언젠가 들키겠지만, 그 전까지 Anthropic은 유용한 스냅샷 데이터를 얻을 수 있음
이 블로그 글의 결론은 좀 과민함
이 스테가노그래피의 의도는 매우 명확하며, 모델 증류를 하고 있을 수 있는 중국 기업의 사용을 식별하려는 것임
이게 어떤 형태로든 “일반 개발자를 처벌”한다는 건 불분명함
정당한 이유로 Claude를 프록시하려는 경우 응답 품질이 저하될 수 있음
정당한 이유에는 Claude Code가 Anthropic에 무엇을 보내는지 분석해 데이터 유출이 없는지 검증하기, 프롬프트 난도에 따라 모델을 동적으로 선택하거나 특정 모델을 강제하기, 프로젝트에 따라 여러 Anthropic 계정을 전환하기, 자격 증명·개인식별정보·회사 기밀을 걸러내기 등이 있음
사용자 머신에서 실행되는 소프트웨어가 몰래 악성코드 같은 스테가노그래피식 데이터 유출을 한다면 신뢰의 문제임
제품을 증류하려는 중국 기업이 왜 Claude Code를 쓰겠나?
Fable에서 프롬프트/세션에 따라 조용히 품질을 낮췄을 때처럼 오탐은 이미 본 적이 있음
좋은 목표도 악의적이거나 무모한 실행을 정당화하지 못함
목적이 항상 수단을 정당화하는 건 아님
이번에 피해가 있었든 없었든, 이건 신뢰와 자율성의 침해임
누군가가 적어도 지금은 공공의 적 1호를 탐지해 고자질하려는 코드만 들어 있다고 하더라도, 몰래 루트킷을 설치했다면 당연히 화날 것임
Codex CLI는 Claude Code와 달리 자유 오픈소스 소프트웨어라서 이런 짓을 할 가능성이 더 낮고, Claude Code와 Claude 전반을 피해야 할 이유가 하나 더 생김
Codex에는 많은 눈이 이런 악성 동작을 살펴보길 바람
진짜 궁금한데, 내가 구독료를 내고 약관을 지키고 있다면 왜 신경 써야 하나?
개인정보 정책이나 사업 관행에는 매우 회의적이지만, 이게 고객인 나에게 어떤 불이익이 있는지 궁금함
보조금이 끊기는 시점을 늦추는 데 도움이 된다면 오히려 고객 입장에선 유리해 보임
다만 이런 사기성 프록시들이 중국 연구소를 따라잡게 돕는다면, 장기적으로는 내가 직접 하드웨어에서 완전히 제어하는 고품질 개인 AI를 갖게 되는 데 유리할 수도 있음
지지한다는 뜻은 아니지만, 그런 유인이 있다는 건 인정함
“악성”인가? 약관을 위반하는 사용자를 걸러내면서 정상 사용자에게는 방해가 되지 않는 좋은 방법처럼 보임
자유 오픈소스 클라이언트라는 건, 더 많은 분석을 서버에서 숨겨서 한다는 뜻일 뿐임
GitHub가 배포하고 서명한 것으로 알고 있음
결정적 빌드는 아니지만, 그래도 진짜 저장소에서 온 것이라는 출처 보증은 조금 있음
Claude Code가 유출되지 않았나? 왜 이게 더 일찍 발견되지 않았지?
“클라이언트가 커스텀 API 게이트웨이를 탐지하고 싶다면, 그냥 명확히 말하면 된다. 문서화된 명시적 원격측정 필드를 보내고, 정책을 보이게 만들고, 릴리스 노트에 동작을 넣으면 된다”라는 반응은 매우 순진해 보임
클라이언트가 게이트웨이에 명시적 원격측정 필드를 보내면, 악성 게이트웨이는 그 필드를 일반 트래픽처럼 보이도록 아주 쉽게 제거하거나 수정할 수 있음 스테가노그래피식 고양이와 쥐 게임이 가치 있는 이유는, 게이트웨이가 사용되는 모든 지문 채취 메커니즘을 계속 역공학하기 훨씬 어렵기 때문임
물론 일부 악성 게이트웨이는 계속 따라잡겠지만, 전부가 항상 그렇게 하지는 못함
정말로, 글쓴이는 클라이언트 남용을 다뤄 본 적이 전혀 없어 보임
중국 증류 연구소가 아니라면 이건 완전히 문제 없는 사안임
발견되기 전까지는 적어도 한동안 KYC보다 더 잘 작동할 수도 있음
KYC 우회 서비스의 국제 시장이 매우 발달해 있기 때문임
AI 도구뿐 아니라 개발 도구도 샌드박스에서 실행해야 함
예를 들어 Python이나 JavaScript 패키지 저장소에는 뭐든 들어갈 수 있고, 백신 회사와 계약도 없고 신뢰할 시민 검증도 없으니 샌드박스 없이 실행하면 안 됨
어느 나라의 익명 사용자든 아무거나 올릴 수 있고, 수백만 개발자가 그걸 자기 컴퓨터에서 실행할 수 있다는 걸 생각해 보셈
IDE, IDE 플러그인, LSP 서버, AI 플러그인도 모두 샌드박스에 넣어야 함
대부분은 백신 회사가 검사하지 않으며, 제한 없이 실행하면 안 됨
더구나 어떤 백신도 코드의 안전성을 100% 보장할 수 없다는 정리가 이미 있음
흥미롭게도 pip 문서는 “시작하기” 문서에서 샌드박스나 악성코드 주제를 전혀 언급하지 않는데, 악의적인 사람·회사·국가가 없는 멋진 세상에 사는 것처럼 보임
적어도 HN에서는 그런 환상 속에 사는 사람이 없길 바람
IDE, LSP, AI 도구를 쓰고 싶어서 먼저 자체 샌드박스 시스템을 작성해야 하는데, Linux는 기본 원시 기능만 제공해서 시간이 많이 듦
예를 들어 루트 권한 없이 모든 네트워크 트래픽을 제어하려면 사용자 이름공간을 만들어 루트 권한을 얻고, 네트워크 이름공간을 만들고, 이름공간 안에서 실행되며 데이터를 밖의 “감독자” 프로그램으로 파이프하는 “트래픽 수집기”를 작성하고, 감독자 프로그램이 목적지로 트래픽을 라우팅해야 함
루트 권한 없이 트래픽을 단순히 필터링하고 검사하는 데도 Linux는 너무 많은 일을 요구함
사용자명이나 호스트명에도 어떤 정보도 남기지 말아야 함. 이 글이 증명하듯 그 정보는 당신에게 불리하게 쓰일 것임
Anthropic이 이미 해 온 일을 요약하면 이렇다: 정부가 요구하기 수년 전부터 “모든 인류”의 잘못된 편에 있는 사람들을 걸러냈고, 모델을 임의 방식으로 다운그레이드했으며 나중에 “미안하지만 딱히 미안하진 않다”는 식으로 대응했고, 응답을 몰래 바꿔 사용자에게 잘못된 결과를 주도록 적극적으로 방해했음
다음엔 뭘 기대해야 하나? 마음에 안 드는 사용자의 머신을 벽돌로 만드는 악성코드? 마음에 안 드는 더 많은 사람으로 확장?
Dario Amodei의 “모든 인류”를 위한 유토피아적 미래 비전이 어떻게 펼쳐질지 벌써 보이는 것 같음
HN의 과민 반응은 우스꽝스러움
이 사람들이 진심으로 초지능을 만들고 있다고 믿는다는 관점에서 보면 전부 이해 가능함
AI 안전 진영의 압도적 다수는 보통 HN 안락의자 논객보다 이 문제에 훨씬 많은 삶과 시간을 쏟아 왔고, 중국이 먼저 초지능에 도달하지 못하게 해야 하며, 초지능 접근은 검증된 선한 행위자에게만 허용해야 하고, 이 목표에 실패하면 인류가 멸종하는 경쟁이라고 봄
“우리가 초지능을 만들고 있다고 생각한다”는 말을 거짓말이라고 가정하지 않으면, 이들이 하는 거의 모든 행동은 이해 가능함
이걸 해줘서 고마움
시스템 프롬프트가 “추상화를 피하라; 비슷한 코드 세 줄이 헬퍼 하나보다 낫다” 같은 내용을 심고 있는 줄 몰랐음
나는 동의하지 않는 내용임
CLAUDE.md에 지시를 넣어 이런 프롬프트를 덮어쓰는 식으로 수정할 방법이 있나? 시스템 프롬프트 자체를 직접 바꾸지는 못하겠지만, CLAUDE.md가 최종 결정권을 가져야 하는 것 아닌가?
글쓴이가 강조하려는 개인정보 우려를 잘 모르겠음
물론 “은밀한” 일을 하다가 들키면 항상 의심을 사겠지만, 반대로 이런 “보안 기능”이 어떻게 작동하는지 공개해 버리면 구현할 의미가 없음
그리고 내 생각에 스테가노그래피는 모호함에 의존하는 보안이 아님
RSA에서 개인키를 비공개로 유지하는 것이 모호함에 의존하는 보안이 아닌 것처럼, 비공개여야 할 것을 비공개로 유지하는 건 보안 모델의 일부임
Anthropic이 경쟁자의 모델 증류를 늦추기로 하는 건 그들의 재량임
하지만 내 접근 패턴을 먼저 공개하지 않고 지문 채취하는 방식으로 구현한 지점에서 망쳤음
이건 “은밀한” 정도가 아니라 그냥 은밀하고, 부정직하고, 비양심적임
이번 사례가 무해하다는 것도 별 위안이 안 됨. 개인식별정보를 수집하지 않는다고 누가 보장하나?
그들의 행동이 사업적으로 말이 된다는 건 사람들이 기만적이고 고객 적대적인 결정을 받아들여야 할 이유가 되지 않음
나라가 반대였다면, 중국 소프트웨어가 미국 사용자를 추적하기 위해 동등한 “보안 기능”을 구현했을 때 중국이 미국을 감시·첩보한다고 뉴스가 도배됐을 것임
아니면 이 가정도 이해 못 하는 건가 싶지만, 사실은 다른 사람의 개인정보에 관심이 없는 것 같음
“그래서 이 기능은 주로 지문 채취가 쉬운 사람, 즉 이상하지만 합법적인 일을 하는 일반 개발자를 처벌한다”는데, 여기서 말하는 처벌이 정확히 뭐임?
합법적인 사용인데도 차단될 확률이 높아짐
경쟁자로 의심되어 표시되면 계정을 날려 버림
돈을 내고 산 것과 다른 오염된 잘못된 결과를 돌려주는 것임
Anthropic이 한두 달마다 “불법 중국 증류 공격”을 떠들썩하게 말하는 걸 보면, 식별 패턴 중 하나라도 맞으면 이미 모델 성능을 조용히 낮추고 있거나 최소한 검토·예행연습 중이라는 데 돈을 걸 수 있음
특히 그런 기술이 존재하고 Fable에서 프로덕션에 쓰겠다고 공개적으로 말했던 걸 생각하면 더 그럼
AI 자동 생성 콘텐츠
본 콘텐츠는 GeekNews의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기