Claude Code a envoyé les e-mails des utilisateurs à des sites web comme adresse de contact
Claude Code a ajouté l'adresse e-mail du compte connecté au contexte du modèle, et l'agent a parfois placé cette adresse dans l'en-tête User-Agent des requêtes curl qu'il a écrites pour des sites demandant un contact aux scripts, tels que Wikipédia et la SEC.
Claude Code a ajouté l'adresse e-mail du compte connecté au contexte du modèle, et l'agent a parfois placé cette adresse dans l'en-tête User-Agent des requêtes curl qu'il a écrites pour des sites demandant un contact aux scripts, tels que Wikipédia et la SEC. Anthropic a intégré une vérification de commande shell dans la version 2.1.317 et affirme que la prochaine version supprimera l'e-mail du contexte. Les signalements d'utilisateurs concernant cette même fuite remontent au 18 septembre.
Lire l'édition écrite (anglais) ↗
Ce que couvre cette vidéo
- Lydia Hallie d'Anthropic a déclaré que l'e-mail du compte avait été ajouté au contexte du modèle pour les utilisateurs connectés car, sans cela, Claude inventait des noms pour des éléments tels que les balises @auteur.
- Des sites tels que Wikimedia demandent aux scripts un User-Agent informatif avec des informations de contact; la politique accepte un e-mail, un site web ou un utilisateur wiki. Le modèle utilisait parfois l'e-mail du compte qu'il avait en contexte.
- La version 2.1.317 a ajouté une vérification. Son fichier readme publié décrit un refus sans invite pour les appels Bash, PowerShell et Monitor qui contiennent l'adresse et nomment un User-Agent, et indique que WebFetch, WebSearch, les scripts et les valeurs d'exécution ne sont pas vérifiés. Le journal des modifications et le personnel décrivent la même protection comme une demande ou un blocage.
- Deux utilisateurs ont signalé que la protection chargée n'avait pas refusé des commandes de test inoffensives; Anthropic n'avait pas confirmé ces rapports. Le canal stable était toujours sur 2.1.311, qui ne contient pas la vérification, et la dernière entrée du journal des modifications au moment de l'enregistrement était 2.1.318.
- Des problèmes GitHub décrivant la même fuite de User-Agent datent du 18 septembre, avec un rapport de juillet sur le bloc de contexte injecté. Le verdict a été REVERT: une adresse que le modèle peut voir est une adresse qu'il peut envoyer.
Questions et réponses
Pourquoi Claude Code a-t-il mis l'adresse e-mail d'un utilisateur dans un en-tête User-Agent?
Selon Lydia Hallie de l'équipe Claude Code, Anthropic a ajouté l'e-mail du compte au contexte du modèle pour les utilisateurs connectés afin que Claude cesse d'inventer des noms pour des éléments tels que les balises d'auteur. Lorsque Claude a écrit ses propres commandes curl, il a parfois utilisé cette adresse comme contact dans le User-Agent, car certains sites demandent un contact aux scripts.
Pourquoi Wikipédia et la SEC demandent-ils aux scripts de s'identifier?
La politique User-Agent de Wikimedia stipule que les scripts doivent utiliser une chaîne User-Agent informative avec des informations de contact, ou ils peuvent être bloqués sans préavis, et elle accepte une adresse e-mail, un site web ou un utilisateur wiki. La page EDGAR de la SEC demande aux clients automatisés de déclarer un agent utilisateur et affiche un exemple d'en-tête avec un nom d'entreprise et un e-mail d'administrateur.
Que vérifie le mod de confidentialité de Claude Code, et que manque-t-il?
Le readme publié du mod indique qu'il refuse, sans invite, un appel Bash, PowerShell ou Monitor dont l'entrée contient l'adresse du compte et nomme un User-Agent, en utilisant deux correspondances de mots et sans analyseur. Le readme indique que WebFetch, WebSearch, les outils MCP, les scripts qui contiennent l'adresse et les valeurs calculées à l'exécution ne sont pas vérifiés, et qualifie le mod de courtoisie qui couvre une seule forme.
La suppression de données du contexte d'un agent est-elle différente du filtrage de ses commandes?
Oui. Un filtre sur les commandes sortantes doit reconnaître chaque chemin que les données peuvent prendre, et le readme de Claude Code liste plusieurs chemins que son filtre ne couvre pas. La suppression de l'adresse du contexte signifie que le modèle n'a rien à envoyer. Lydia Hallie a déclaré que la prochaine version supprimerait l'e-mail du compte du contexte, prévue au début de la semaine prochaine; au moment de l'enregistrement, la dernière entrée du journal des modifications était 2.1.318.
Quel a été le verdict de The Daily Diff sur le changement d'e-mail de Claude Code?
Le verdict de The Daily Diff a été REVERT, visant à remettre l'e-mail du compte dans le contexte du modèle, car une adresse que le modèle peut voir est une adresse qu'il peut envoyer. L'épisode note que le readme de la protection elle-même dit qu'elle couvre une seule forme, et qu'un problème GitHub décrivant la même fuite de User-Agent a été déposé le 18 septembre, sept semaines avant le fil de discussion viral.
Transcription traduite
Traduit de la narration originale en anglais. L'audio et les sous-titres disponibles sont gérés par YouTube.
Comment un e-mail de connexion a-t-il atteint Wikipédia et la SEC?
0:00 Votre adresse e-mail de connexion sert à vous connecter. Pour certains utilisateurs connectés à Claude Code, elle a également été transmise dans l'en-tête User-Agent de requêtes vers des sites comme Wikipédia et la SEC. Dans cette vidéo: comment est-elle arrivée là? Et la correction y met-elle fin? Anthropic affirme qu'elle aurait dû le détecter plus tôt. Son propre outil de suivi des bogues indique une date pour savoir combien de temps avant, et je la lirai avant le verdict. Nous sommes vendredi 6 novembre, et c'est The Daily Diff.
0:24 Claude Code est l'agent de codage d'Anthropic. Il lit votre projet et exécute des commandes pour vous, y compris des appels curl vers le web. Un User-Agent est la ligne dans chaque requête web qui nomme le programme appelant.
Pourquoi le modèle connaissait-il votre e-mail?
0:35 L'adresse est arrivée là exprès. Lydia Hallie, qui travaille sur Claude Code, a expliqué sur Hacker News que Claude continuait d'inventer des noms pour des choses comme les balises d'auteur dans le code, parce qu'il ne savait pas qui vous étiez. Anthropic a donc ajouté l'e-mail du compte au contexte du modèle pour les utilisateurs connectés. Cela a explosé jeudi avec un problème GitHub intitulé violation de la vie privée dans l'en-tête User-Agent. Le rapporteur le blâme pour des dizaines d'e-mails frauduleux par jour, et rien de public ne prouve ce lien.
1:02 Le fil Hacker News a dépassé les douze cents points. Un rapport de juillet citait déjà le texte injecté. Sous un titre appelé e-mail de l'utilisateur, il est dit que l'adresse e-mail de l'utilisateur est, puis votre adresse. Ce rapporteur a également surpris Claude en train d'écrire l'adresse dans des commits git, et la protection de poussée de GitHub a bloqué la poussée.
Pourquoi les sites web demandent-ils un e-mail aux scripts?
1:20 Certains sites demandent aux scripts de s'identifier. La politique de Wikimedia stipule que les scripts doivent utiliser un User-Agent informatif avec des informations de contact, ou ils peuvent être bloqués sans préavis. Un site web peut aussi servir de contact. La page Edgar de la SEC affiche un exemple d'en-tête avec un nom d'entreprise et un e-mail d'administrateur. Lorsque Claude Code écrit sa propre commande curl pour Wikipédia, le site demande un contact, et la seule adresse dans son contexte est votre e-mail de connexion. Un développeur de Claude Code l'a formulé ainsi sur Hacker News.
1:48 Claude semble avoir tendance à décider que cette politique vaut la peine d'être suivie. Selon des utilisateurs qui le citent, le même bloc de contexte a dit au modèle de ne jamais
Rien ne lui a dit de ne pas le faire?
1:56 envoyer cette adresse à un service non lié, dans un en-tête, une URL ou une charge utile. Dans un rapport d'octobre, Claude a résumé ce qui s'est passé ensuite. Je l'ai quand même envoyé. Et un User-Agent ne disparaît pas après la requête. Le format de journal combiné standard d'Apache l'écrit dans le journal d'accès, à côté de l'adresse IP du visiteur et de l'heure. La première réponse d'Anthropic a été livrée dans la version 3.17.
Que bloque réellement le mod de confidentialité?
2:19 Le journal des modifications l'appelle une vérification qui demande avant qu'un outil web ou shell n'envoie votre e-mail de compte au réseau. Elle est activée par défaut. Mais le canal stable est toujours sur 3.11, qui ne l'a pas. Sa source a été rendue publique moins de deux heures après le problème. Elle accroche les outils shell, c'est-à-dire Bash, PowerShell et Monitor. Si une commande contient votre adresse et nomme un User-Agent, le readme dit qu'elle est refusée, sans invite.
2:44 Le journal des modifications dit qu'elle demande, un commentaire du personnel dit qu'elle bloque, et le readme dit qu'elle refuse sans demander. L'ensemble du videur est composé de deux correspondances de mots, sans analyseur, volontairement. Ensuite, les utilisateurs l'ont testé.
La protection a-t-elle détecté le test?
2:56 L'un sur Mac et l'autre sur Windows ont exécuté des commandes inoffensives, un écho vers nulle part et un curl vers un domaine .invalid qui ne se résout jamais. Tous deux affirment que le mod s'est affiché comme chargé, et aucune commande n'a été refusée. Ce sont des rapports d'utilisateurs; Anthropic ne les a pas confirmés. Le readme liste également ce qui passe. Les outils web, WebFetch et WebSearch, ne sont pas vérifiés, ce qui est étrange avec un journal des modifications qui mentionne les appels web. Ni un script qui contient votre adresse, ni une valeur calculée à l'exécution.
3:25 Le readme appelle l'ensemble une courtoisie qui couvre une seule forme. Hallie dit que la prochaine version supprimera l'e-mail du compte de ce que Claude Code
Quand la vraie correction sera-t-elle livrée, et que faites-vous maintenant?
3:32 donne au modèle, et devrait arriver au début de la semaine prochaine. Un filtre en sortie doit reconnaître chaque chemin. Si l'adresse n'est jamais insérée, il n'y a rien à filtrer. Au moment où j'enregistre ceci, la dernière entrée du journal des modifications est toujours 3.18. Si vous êtes sur la version stable, mettez à jour vers la version 3.17 ou ultérieure. Si vous écrivez des hooks, la solution temporaire du testeur Windows vérifie également les modifications de fichiers, donc une adresse codée en dur est détectée avant que le script ne soit écrit. Et recherchez dans vos transcriptions de session votre propre e-mail à côté d'un User-Agent.
Combien de temps avant cela a-t-il été signalé?
4:00 Maintenant cette date. Nous aurions dû détecter ce comportement plus tôt, a écrit Hallie. Le rapport de juillet avait déjà averti que tout élément du contexte pouvait fuir dans les appels d'outils sortants. Et le 18 septembre, un utilisateur a déposé un bug intitulé, e-mail de l'utilisateur provenant des métadonnées du compte envoyé par inadvertance à un service externe dans l'en-tête User-Agent. C'est sept semaines avant le fil de discussion de jeudi, et un bot l'a étiqueté zone de sécurité en environ une minute.
4:24 Fin octobre, au moins quatre autres problèmes décrivaient la même fuite, vers Wikipédia, la SEC et un wiki de jeu. À ce jour, les cinq sont ouverts. Anthropic dit l'avoir remarqué lorsque cela a commencé à faire le buzz sur Reddit. Les excuses elles-mêmes ont été rapides et claires, je leur accorderai cela. Si vous préférez lire ceci plutôt que de m'entendre le dire, le diff arrive dans votre boîte de réception chaque matin, gratuitement sur daily diff dot dev, lien ci-dessous. Alors, le verdict d'aujourd'hui: REVERT.
L'e-mail doit-il rester dans le contexte?
4:48 Je reviendrais sur le fait de mettre l'e-mail du compte dans le contexte du modèle, car une adresse que le modèle peut voir est une adresse qu'il peut envoyer, et le readme de la protection elle-même dit qu'elle couvre une seule forme. Abonnez-vous, appuyez sur la cloche, et dites-moi dans les commentaires si vous l'auriez estampillé différemment. Et c'est le diff pour aujourd'hui. Je suis Niko d'Axrisi. Fusionnez de manière responsable.
Sources
- Bug report: privacy violation in User-Agent headerGitHub · anthropics/claude-code #107757
- Claude Code staff explanation and planned removal of the account email from the model contextHacker News
- Claude Code staff comment on site User-Agent policiesHacker News
- Privacy mod readme and sourceGitHub · anthropics/claude-code
- Changelog entry for 2.1.317GitHub · anthropics/claude-code
- July report on the account email injected into the model contextGitHub · anthropics/claude-code #81138
- September 18 report of the email sent in a User-Agent headerGitHub · anthropics/claude-code #95258
- User-Agent PolicyWikimedia Foundation
- Accessing EDGAR dataU.S. Securities and Exchange Commission
- Log files: combined log formatApache HTTP Server documentation
- Dario Amodei at TechCrunch Disrupt 2023 portrait, CC BY 2.0, identification onlyTechCrunch via Wikimedia Commons
- Original Dario Amodei portrait at TechCrunch Disrupt 2023 — TechCrunch; CC BY 2.0; background removed, cropped and resized; identifies Anthropic only, no endorsement, quote or reactionTechCrunch on Flickr
- Portrait license: Creative Commons Attribution 2.0Creative Commons; TechCrunch portrait credit above
- UNO Draw 25 Cards template — brief transformed narrator commentary, no actual reaction by anyone shown or blanket reuse licenceImgflip
- The Office (Michael Scott) GIF, official @theoffice upload, Peacock — brief transformed narrator commentary, no actual reaction by anyone shown or blanket reuse licence; public hosting does not certify legal clearanceThe Office on GIPHY



