Claude Code prompt marker 논란, 투명성이 쟁점인 이유
Original: Claude Code Is Steganographically Marking Requests View original →
Claude Code를 역공학한 글이 HN에서 빠르게 퍼진 이유는 단순한 호기심보다 신뢰 문제에 가깝다. 작성자는 Claude Code가 특정 환경에서 API base URL과 timezone을 보고 system context 안의 문장에 눈에 잘 띄지 않는 Unicode marker를 섞는다고 설명했다. 공식 Anthropic endpoint를 쓰거나 ANTHROPIC_BASE_URL이 비어 있으면 이 경로는 일찍 종료된다는 점도 함께 적었다.
글의 핵심은 “악성 기능” 단정이 아니다. 작성자는 Anthropic이 reseller, 비공식 gateway, distillation pipeline을 탐지하려는 목적을 가졌을 수 있다고 본다. 문제는 그 신호가 명시적인 telemetry field나 문서화된 정책이 아니라 prompt 문장 안에 숨어 들어간다는 방식이다. 파일 시스템과 셸 권한을 다루는 coding agent에서는 작은 불투명성도 크게 보인다.
HN 댓글은 구현 방식과 실효성을 파고들었다. 한 흐름은 custom base URL을 쓰면 표시된 prompt가 Anthropic이 아니라 다른 provider로 가는 것 아니냐는 질문이었다. 또 다른 반응은 이런 표식이 진지한 우회자를 막기보다 합법적인 proxy, 내부 gateway, 연구 환경을 쓰는 개발자만 더 쉽게 식별할 수 있다는 점을 짚었다.
실무적으로 읽을 부분은 두 가지다. 첫째, coding agent의 abuse detection은 필요할 수 있지만 개발자가 관찰하고 감사할 수 있는 형태가 더 낫다. 둘째, system prompt는 모델 행동을 직접 바꾸는 입력이므로, 그 안에 숨은 분류 신호를 넣는 설계는 보안 기능이라도 별도 검토 대상이 된다. HN의 관심도 이 지점에 모였다.
Source: Thereallo blog, HN discussion.
Related Articles
300점 안팎의 HN 반응은 “secret이 안 샜다”보다 실험 조건이 실제 에이전트 위험을 얼마나 반영하는지에 모였다.
Snyk VulnBench JS 1.0은 같은 JavaScript 취약점 리뷰를 300번 반복해 LLM 보안 점검의 재현성을 측정했다. 최고 LLM 설정도 Snyk-reference F1 75.4%에 그쳤고, reference 밖 추가 보고의 49.7%는 5번 중 1번만 나타났다.
오픈 weight 모델이 실제 보안 버그 탐지 과제에서 Claude Code를 앞섰다는 점에 관심이 모였다.