공지: Claude Code가 웹 요청 User-Agent에 사용자 이메일을 포함하는 문제 (현재 HN 상위 글)
PSA: claude code can put your account email in the User-Agent of its web requests (top of HN right now). why it happens and how to block it
핵심 요약
Claude Code가 웹 요청 시 사용자 이메일을 User-Agent에 노출하는 보안 이슈와 대응 방안을 공유합니다.
- 이메일 노출 문제 — 웹 요청 시 User-Agent 헤더에 사용자 이메일이 포함되어 스팸 메일의 원인이 됨
- 원인 분석 — 일부 웹사이트의 봇 정책을 준수하려는 모델의 학습 결과로 추정됨
- 대응 방안 — 명령어 실행 전 이메일 포함 여부 확인 및 Bash PreToolUse 훅을 통한 차단 권장
- 업데이트 한계 — 최신 버전으로 업데이트해도 문제가 완전히 해결되지 않을 수 있음
지금 해커 뉴스에서 2위(약 1,300 포인트) 찍고 있는데 여기엔 아직 안 올라온 거 같아서 가져옴. claude code가 웹에서 뭐 긁어올 때 가끔 User-Agent 헤더에 니 계정 이메일을 박아버림. my-session/1 <you@yourcompany.com> 이런 식으로. 이거 접속하는 모든 사이트에서 로그 남길 수 있음.
깃허브 이슈: https://github.com/anthropics/claude-code/issues/107757 (추천 500개 넘음). 제보자 말로는 가본 적도 없는 사이트에서 하루에 스팸 메일 수십 통씩 온다는데, HN에서도 몇몇이 자기 회사 메일함으로 이름까지 박힌 스팸 온다고 똑같은 소리 함.
대충 왜 이런지 추측해보자면: 몇몇 사이트는 User-Agent에 연락용 이메일을 넣으라고 요구함. SEC EDGAR가 대표적이고, 위키미디어 봇 정책도 마찬가지임. 그래서 모델이 "아, 예의 바른 스크래퍼는 UA에 이메일을 넣는구나"라고 학습해서, 지가 가지고 있는 니 이메일을 그냥 박아버리는 거임. 악의적인 건 아닌데, 그래도 개판인 건 맞음.
여기서 주목해야 할 점: 2.1.317 버전 이후로 업데이트하라는 말이 돌고 있는데, 이슈 제보자는 2.1.318 버전 쓰고 있음. 즉, 업데이트한다고 해결되는 게 아님.
지금 당장 할 수 있는 대응책:
-
curl이나 fetch 명령어 실행하기 전에 꼭 확인해라. -A나 User-Agent 플래그에 니 이메일 박혀 있는 거 바로 보임.
-
Bash에 PreToolUse 훅 걸어서 니 이메일 들어간 명령어는 다 차단해버려라. 명령어 실행 전에 먼저 돌아가니까 모델이 꼼수 부려도 소용없음. 차단 잘 되는지 무해한 curl 명령어로 테스트해보셈.
-
웹 관련 작업할 때 자동 승인 모드 쓰고 있으면, 당분간은 끄는 게 좋을 거다.
혹시 WebFetch나 WebSearch도 똑같이 이러는지 확인해본 사람 있음? 아니면 그냥 bash curl에서만 이러는 거임?

