cybersécurité newsMis à jour le 7 novembre 2026·Par Manel LOUNICI·8 min de lecture

Fuite Claude Code : l’option « Don’t ask again » expose des mots de passe sur GitHub

Claude Code enregistre parfois en clair les mots de passe des commandes approuvées. Apiiro a trouvé 1 122 fichiers publics sur GitHub qui en contiennent. Ce qu’il faut faire.

fuite Claude Code

L’essentiel en 3 points

  • Fuite Claude Code : quand vous validez une commande avec « Yes, and don’t ask again », l’outil peut l’enregistrer mot pour mot, mot de passe compris, dans le fichier .claude/settings.local.json.
  • La société Apiiro a trouvé 1 122 copies publiques de ce fichier sur GitHub qui contiennent au moins un secret, dont 379 mots de passe de bases de données et 23 clés AWS.
  • Si vous utilisez Claude Code, changez d’abord tout secret passé par ce fichier, puis retirez-le de Git et ajoutez-le au .gitignore du projet.

Fuite Claude Code : l’assistant de programmation d’Anthropic enregistre parfois en clair les mots de passe et clés tapés dans les commandes que vous approuvez. Le fichier qui les garde finit souvent sur GitHub. Apiiro en a recensé 1 122 copies publiques avec au moins un secret, selon The Hacker News le 7 novembre 2026.

Avant de choisir : comparez avec les autres produits testés sur Dealotronic et vérifiez qu’ils fonctionnent avec votre appareil.

Fuite Claude Code : comment un secret atterrit dans settings.local.json

Par défaut, Claude Code demande l’autorisation avant de lancer la plupart des commandes shell. Si vous choisissez « Yes, and don’t ask again », il ajoute une règle d’autorisation dans le fichier settings.local.json, rangé dans le dossier .claude du projet. Les commandes identiques passent ensuite sans question.

Le problème tient à ce que la règle enregistre. Parfois c’est un motif générique, du type npm test. Parfois c’est la commande exacte. Dans ce cas, un mot de passe passé après PGPASSWORD=, sshpass -p ou mysql -p est copié tel quel, en clair, dans un fichier JSON lisible par n’importe qui.

Les chercheurs disent avoir reproduit ce comportement avec les modèles les plus récents d’Anthropic, Opus 5.5 et Fable 5.1. Sur 16 agents de code dont ils ont comparé la documentation, Claude Code est le seul confirmé à garder par défaut la commande complète dans un fichier du projet.

Pourquoi le fichier finit sur GitHub

Claude Code essaie bien d’écarter ce fichier de Git. La première fois qu’il l’écrit, il l’ajoute aux exclusions globales de Git de l’utilisateur. Mais cette protection reste sur un seul ordinateur. Elle ne voyage pas avec le projet, puisque l’outil n’ajoute rien au .gitignore du dépôt.

Elle ne sert pas non plus pour un fichier déjà suivi par Git. Et sur 1 105 dépôts étudiés, 539 contiennent un commit signé avec Claude comme coauteur qui modifie justement ce fichier. Pour Apiiro, l’assistant pousse donc souvent lui-même ses propres autorisations sur GitHub.

Ce qu’Apiiro a trouvé : les secrets GitHub en chiffres

Apiiro a cherché le fichier dans les dépôts publics. Il en existe 104 185 copies réparties dans 103 617 dépôts. Environ 1,1 % d’entre elles contiennent au moins un secret. Un secret était compté quand il suivait un format de clé connu, ou quand un mot de passe se trouvait à côté de l’adresse d’un serveur public.

Donnée relevée par ApiiroValeur
Copies publiques de settings.local.json104 185 dans 103 617 dépôts
Copies avec au moins un secret1 122 (1 379 secrets distincts)
Mots de passe de bases de données379
Accès SSH à des serveurs publics43
Jetons GitHub, GitLab et npm42
Clés AWS23
Total, historique Git et forks compris2 539 secrets dans 1 994 dépôts

Plus d’un tiers des secrets ouvrent directement une base de données. Parmi les propriétaires, les chercheurs comptent 63 organisations, surtout des éditeurs de logiciels. Les cas les plus graves : une clé cloud d’administrateur chez un éditeur de bases de données et le mot de passe propriétaire d’une base de dossiers médicaux.

Apiiro n’a pas testé si ces secrets fonctionnent encore. Une entreprise prévenue en début de semaine a toutefois confirmé que sa clé était active. Au lundi 2 novembre, chaque fichier piégé était toujours sur la branche principale de son dépôt, depuis au moins 217 jours dans la moitié des cas.

Les scanners de secrets passent à côté

Les outils de détection courants ratent une bonne partie de ces fuites. Sur les 1 122 fichiers, gitleaks en signale 564 et TruffleHog 643. Aucun des deux ne voit les 215 restants. La raison est simple : ils cherchent des formats de clés connus, alors qu’un mot de passe glissé dans une ligne de commande ressemble à un mot ordinaire.

Supprimer le fichier ne règle rien non plus. Les anciennes versions restent dans l’historique Git : Apiiro y a trouvé 734 secrets de plus, absents des copies actuelles. Et 211 forks de 74 dépôts portent les mêmes secrets que les originaux.

Que faire si vous utilisez Claude Code

L’ordre compte. Une clé API publiée reste exposée même après son retrait, car l’historique et les copies existent déjà. Il faut donc la rendre inutilisable avant de nettoyer.

  1. Cherchez .claude/settings.local.json et .claude/settings.json dans vos dépôts, historique compris, même là où le fichier a disparu.
  2. Changez chaque mot de passe, jeton et clé API que ces fichiers ont contenu, avant toute autre action.
  3. Retirez le fichier du suivi avec git rm –cached .claude/settings.local.json, puis ajoutez-le au .gitignore du dépôt.
  4. Ouvrez aussi la copie locale et effacez les règles qui contiennent un secret.
  5. Appelez vos secrets par une variable, par exemple $DB_URL, et approuvez des motifs plutôt que des commandes uniques.

Pensez aux copies qui ne passent jamais par GitHub. Le fichier peut se retrouver dans un paquet npm, une image Docker, une archive zip ou un dossier synchronisé. Les équipes de sécurité ont intérêt à traiter les dossiers .claude, .cursor ou .gemini comme un fichier .env.

Sur nos propres serveurs, nous avons pris l’habitude de ne jamais taper un mot de passe dans une commande, avec ou sans IA. Une connexion SSH par clé, un fichier ~/.pgpass ou un gestionnaire de secrets évitent qu’un historique, quel qu’il soit, garde la valeur en clair. Notre guide de Claude Code rappelle les bons réglages d’autorisations.

Ce qu’Anthropic a répondu

Rien, pour l’instant. Un premier signalement du problème avait été déposé sur GitHub le 11 août 2025. Un robot l’a fermé comme « not planned » après 60 jours sans activité. Les quatre signalements liés cités par les chercheurs ont connu le même sort, sans réponse d’Anthropic selon eux.

Ce n’est pas la première alerte sur les assistants de code cette semaine : OpenAI vient de présenter GPT-6 Cyber, une IA capable de trouver des failles en série. Et les accès volés aux services d’IA se revendent déjà, comme le montre notre article sur les identifiants IA volés.

Protéger vos comptes GitHub avec une clé YubiKey

Soyons clairs : une clé de sécurité ne rend pas inoffensive une clé API déjà publiée. Seule sa révocation le fait. En revanche, une YubiKey protège la connexion à vos comptes GitHub, GitLab, npm ou AWS contre le phishing, et elle peut porter votre clé SSH. Plus de mot de passe SSH à taper, donc plus rien à enregistrer dans une commande approuvée.

La gamme compte deux modèles proches. La 5C NFC se branche en USB-C, la 5 NFC en USB-A. Les deux gèrent FIDO2, les passkeys, OpenPGP et le NFC pour le smartphone. Yubico les affiche autour de 70 € TTC selon le pays.

fuite Claude Code : Yubico YubiKey 5C NFC
Pour un Mac ou un PC récent

Yubico YubiKey 5C NFC

USB-C et NFC · FIDO2, passkeys, OpenPGP, clé SSH
Fonctionne avec GitHub, GitLab, npm, AWS et Google

fuite Claude Code : Yubico YubiKey 5 NFC
Pour un ordinateur avec port USB-A

Yubico YubiKey 5 NFC

USB-A et NFC · FIDO2, passkeys, OpenPGP, clé SSH
Même sécurité que la 5C NFC, autre connecteur

Liens affiliés : Dealotronic participe au Programme Partenaires d’Amazon et au réseau Awin (Fnac, Darty). Si vous achetez par ces boutons, nous touchons une commission, sans surcoût pour vous.

Prenez-en deux et enregistrez-les toutes les deux sur chaque compte : la seconde sert de secours en cas de perte. Pour aller plus loin sur l’usage de Claude avec vos sites, voyez aussi comment connecter Claude à WordPress sans y laisser de mot de passe.

Verdict fuite Claude Code : révoquez d’abord, nettoyez ensuite

La réponse tient en une phrase : tout secret passé par settings.local.json doit être considéré comme public et changé. L’option « don’t ask again » reste pratique, à condition de ne valider que des motifs génériques et de ne jamais écrire un mot de passe dans une commande. Tant qu’Anthropic ne corrige pas ce comportement, le .gitignore de chaque projet doit exclure ce fichier.

Sources : The Hacker News, 7 novembre 2026 ; Apiiro, étude publiée le 6 novembre 2026 ; documentation des autorisations de Claude Code, consultée le 7 novembre 2026 ; signalement GitHub du 11 août 2025 ; fiche Yubico de la YubiKey 5C NFC, relevée le 7 novembre 2026.

Compatibilité

Est-ce compatible avec votre appareil ?

Choisissez votre smartphone, tablette ou ordinateur : on vérifie la compatibilité de ces produits, puis on vous propose les accessoires qui vont avec.

FAQ sur la fuite de secrets de Claude Code

Qu’est-ce que le fichier settings.local.json de Claude Code ?

C’est le fichier de réglages locaux d’un projet, rangé dans le dossier .claude. Claude Code y écrit les commandes que vous avez autorisées avec « Yes, and don’t ask again ». Quand la règle porte sur une commande exacte, un mot de passe tapé dedans y reste en clair.

Combien de secrets ont fuité sur GitHub ?

Apiiro a trouvé 1 122 copies publiques du fichier avec au moins un secret, soit 1 379 secrets différents. En ajoutant l’historique Git, les forks, le fichier settings.json partagé et les journaux de conversation, le total monte à 2 539 secrets dans 1 994 dépôts.

Supprimer le fichier suffit-il à me protéger ?

Non. Les anciennes versions restent dans l’historique Git et dans les forks du dépôt. La seule protection fiable consiste à changer chaque mot de passe, jeton ou clé API concerné, puis à retirer le fichier du suivi et à l’ajouter au .gitignore.

Comment éviter que Claude Code enregistre un mot de passe ?

N’écrivez jamais de secret dans une commande : passez par une variable d’environnement ou un gestionnaire de secrets. Approuvez des motifs du type Bash(npm run:*) plutôt qu’une commande unique. Relisez régulièrement le fichier local pour en retirer toute règle sensible.

Une YubiKey protège-t-elle une clé API déjà publiée ?

Non. Une clé API exposée doit être révoquée, aucun matériel ne la rend inutilisable. La YubiKey sécurise en revanche la connexion à vos comptes GitHub, npm ou AWS et peut porter votre clé SSH, ce qui supprime les mots de passe tapés en ligne de commande.

Anthropic a-t-il corrigé le problème ?

Pas au 7 novembre 2026. Les signalements déposés sur GitHub depuis août 2025 ont été fermés automatiquement par un robot, sans réponse d’Anthropic d’après Apiiro. En attendant, la prudence repose sur vos propres réglages et sur le .gitignore de chaque projet.

    0 0 votes
    Évaluation de l'article
    S’abonner
    Notification pour
    0 Commentaires