GitSpawn : le .git/config d'un dépôt reçu exécute du code hors du bac à sable des agents de code

Important23 septembre 2026Sécurité
Ce qui s’est passé
GitSpawn, disclosed by Manifold Security on 1 September, uses core.fsmonitor and a withheld Git key in a received repo's .git/config to make coding agents run attacker commands outside the sandbox with no prompt.
Pourquoi c’est important
Claude Code's ultrareview path, Hermes Agent, Qwen Code and Grok Build were unpatched at Manifold's 1 September retest; newer releases have shipped since, and no source confirms whether they close these paths.
Que faire
Clone repositories instead of opening received copies, set core.fsmonitor to false globally, and update Codex, goose and Claude Code.

Ne pointez jamais un agent de code vers un dépôt arrivé sous forme de fichiers : une archive, un lecteur partagé, un dossier synchronisé, une clé USB. Clonez-le plutôt depuis le dépôt distant. Selon The Hacker News, l'exploitation "exige que le dépôt arrive sous forme de fichiers avec son répertoire .git intact", et "un clonage ordinaire" ne le conserve pas. Cette seule habitude ferme tous les vecteurs ci-dessous, y compris les quatre qui n'avaient aucun correctif lors du nouveau test de Manifold le 1er septembre : le vecteur claude ultrareview de Claude Code, Hermes Agent, Qwen Code et Grok Build.

Concernés : Claude Code, OpenAI Codex, Cursor et Grok Build CLI, ainsi que goose, Hermes Agent et Qwen Code, qui ne figurent pas dans notre répertoire.

Ce qui s'est passé

Manifold Security a publié GitSpawn le 1er septembre 2026, et The Hacker News l'a relayé le 2 septembre.

Le réglage Git core.fsmonitor désigne une commande que Git exécute pour repérer les fichiers modifiés, et Git le lit dans le .git/config du dépôt lui-même. Comme l'écrit The Hacker News, "toute opération qui rafraîchit l'index, y compris git status et git diff, exécute cette commande." Les agents de code lancent ces commandes en arrière-plan pour comprendre l'espace de travail.

La fiche CVE publiée par OpenAI pour Codex, CVE-2026-19592, en décrit la conséquence : "Le programme auxiliaire s'exécute hors du bac à sable de commandes de Codex et sans invite d'approbation de l'utilisateur, ce qui permet à du code contrôlé par l'attaquant de s'exécuter avec les privilèges de l'utilisateur."

Statut, daté selon la source qui l'étaye

AgentStatutVersionDate de référence
gooseCorrigé1.44.0The Hacker News, 2 sept.
Codex CLICorrigé0.131.0 (version actuelle 0.152.1)The Hacker News, 2 sept.
Codex Desktop, macOSCorrigé26.519.22136The Hacker News, 2 sept.
Codex Desktop, WindowsCorrigé26.519.21041 (Microsoft Store 26.519.2081.0)The Hacker News, 2 sept.
CursorCorrigéversion non préciséeManifold, 1er sept.
Claude Code, vecteur core.fsmonitorCorrigéau plus tard en 2.1.196Manifold, 1er sept.
Claude Code, vecteur claude ultrareviewOuvertconfirmé sur 2.1.252 ; la version actuelle était la 2.1.258Nouveau test Manifold, 1er sept.
Hermes AgentOuvertconfirmé sur 0.21.0Nouveau test Manifold, 1er sept.
Qwen CodeOuvertconfirmé sur 0.22.3, toujours la dernière version le 2 sept.Nouveau test Manifold, 1er sept.
Grok BuildOuvertconfirmé sur 1.0.13Nouveau test Manifold, 1er sept.

Nous avons relu les deux sources le 23 septembre : l'article de Manifold comporte une seule mise à jour, datée du 1er septembre, et celui de The Hacker News n'a pas été mis à jour après le 2 septembre. De nouvelles versions sont sorties depuis (Claude Code 2.1.280 et Qwen Code 0.24.4 étaient les dernières versions au 23 septembre), et nous n'avons pas vérifié si elles ferment ces vecteurs. Considérez ces quatre statuts comme confirmés uniquement au 1er septembre.

Côté avis de sécurité : l'avis GitHub de goose porte le CVE-2026-72718, avec un score de base CVSS 4.0 de 7,0, "le seul score attribué à l'une de ces découvertes". Hermes Agent a reçu le CVE-2026-71963, attribué par VulnCheck, "une CVE Numbering Authority indépendante, et non l'éditeur", et Manifold indique que son avis GHSA privé "n'a jamais été pris en charge". The Hacker News a constaté que le registre d'avis publié par Anthropic "ne couvre aucune des deux découvertes concernant Claude Code." Aucune source ne signale d'exploitation : le catalogue Known Exploited Vulnerabilities de la CISA (version 2026.09.01) ne répertorie aucun de ces CVE.

Pourquoi c'est important

Le moment où la charge utile se déclenche supprime le filet de sécurité habituel. Sur Claude Code et Hermes Agent, elle s'exécute avant que l'invite de confiance de l'espace de travail soit acceptée, sur Qwen Code avant que l'utilisateur se soit authentifié, et sur Grok Build dès la première frappe.

Le second vecteur de Claude Code "active une autre clé de configuration Git, que Manifold n'a pas divulguée", et claude ultrareview "exécute la commande du dépôt au démarrage, avant même le début de la revue demandée." Comme il passe par une autre clé, rien dans la documentation n'indique que désactiver core.fsmonitor suffise à le fermer.

C'est aussi une régression pour Claude Code. La version 2.0.34 (5 novembre 2025) avait atténué cette même catégorie de bug en cessant d'exécuter git status avant l'approbation de confiance, mais Manifold signale que ce comportement au démarrage est réapparu dans la 2.1.193, sortie le 25 juin 2026.

Ce qui change pour vous

  • Clonez depuis le dépôt distant au lieu d'ouvrir une copie reçue avec son répertoire .git intact.
  • Inspectez le .git/config de tout répertoire reçu à la recherche de core.fsmonitor, de core.hooksPath et de filtres d'attributs, et exécutez git config --get core.fsmonitor à l'intérieur.
  • Appliquez git config --global core.fsmonitor false.
  • Mettez à jour Codex, goose et Claude Code au moins vers les versions corrigées ci-dessus.
  • N'exécutez pas claude ultrareview dans un répertoire que vous n'avez pas cloné vous-même.
  • Considérez Hermes Agent, Qwen Code et Grok Build comme non corrigés tant que leurs mainteneurs n'ont pas confirmé de correctif ; aucun n'en avait lors du nouveau test de Manifold le 1er septembre.

Où en sont nos notes

Claude Code reste noté « Conditionnel », OpenAI Codex « Recommandé », Cursor « Conditionnel » et Grok Build CLI « Prudence ». Aucune note ne bouge sur la seule base de cette découverte. La différence tient à la réaction : Codex et goose ont livré des correctifs accompagnés de CVE, le CVE d'Hermes Agent vient d'un tiers et, au 2 septembre, le registre d'avis publié par Anthropic ne couvrait aucun des deux vecteurs de Claude Code.

FAQ

Régler core.fsmonitor sur false me protège-t-il partout ? Non. Cela couvre les vecteurs core.fsmonitor, mais le vecteur claude ultrareview de Claude Code utilise une autre clé, que Manifold n'a pas divulguée.

Un git clone normal est-il sûr ? Selon The Hacker News, un clonage ordinaire ne conserve pas le .git/config de l'attaquant : l'attaque exige donc un dépôt arrivé sous forme de fichiers.

Cette faille est-elle exploitée ? Aucune source ne signale d'exploitation, et aucun de ces CVE ne figurait dans le catalogue Known Exploited Vulnerabilities de la CISA dans sa version 2026.09.01.

Que faire

  1. 1 Clone repositories from their remote instead of opening a copy that arrived as an archive, shared drive, sync folder or USB stick.
  2. 2 Before opening any received directory with an agent, inspect .git/config for core.fsmonitor, core.hooksPath and attribute filters, and run git config --get core.fsmonitor inside it.
  3. 3 Audit your global Git config, then set git config --global core.fsmonitor false.
  4. 4 Update to Codex CLI 0.131.0, Codex Desktop 26.519.22136 (macOS) or 26.519.21041 (Windows), goose 1.44.0 and Claude Code 2.1.196 or later.
  5. 5 Do not run claude ultrareview in a directory you did not clone yourself; that path uses a withheld Git key that disabling fsmonitor does not cover.
  6. 6 Treat Hermes Agent, Qwen Code and Grok Build as unpatched until their maintainers confirm a fix; none had one at Manifold's 1 September retest.

Outils et modèles concernés

Ne ratez plus jamais une mise à jour

Le récap hebdomadaire — uniquement les changements de verdict et les actions urgentes. Sans remplissage.

En vous abonnant, vous acceptez notre Politique de confidentialité. Désabonnement à tout moment.