Concepts fondamentaux
Qu'est-ce que Endpoint Protection ?
GitGuardian Developer Endpoint Protection étend la sécurité des secrets aux postes de travail des développeurs. Les identifiants s'accumulent dans l'historique du shell, les fichiers de configuration, les caches des IDE, les stockages des navigateurs, ainsi que dans les fichiers et caches que les agents de codage IA créent sur le système de fichiers local, autant d'endroits hors de portée des scanners de dépôts et des vérifications CI. Endpoint Protection découvre ces identifiants sur la machine où ils résident, et y implante des identifiants leurres pour attraper quiconque tenterait de les voler.
Pourquoi c'est important
En tant que responsable sécurité ou plateforme, vous scannez généralement déjà les dépôts et la CI. Endpoint Protection répond à des questions auxquelles ces couches ne peuvent pas répondre :
- Quels identifiants se trouvent actuellement sur les ordinateurs portables des développeurs ?
- Quelles machines ont été scannées récemment, et lesquelles ne l'ont jamais été ?
- Quelqu'un est-il en train de voler des identifiants sur un ordinateur portable en ce moment même ?
- Après une compromission, qu'y avait-il sur une machine donnée, classé par gravité ?
Ce qu'il fait
Scan de machine : découvre récursivement les identifiants en texte clair sur l'ensemble du système de fichiers local, y compris les fichiers de configuration, les dotfiles, les logs, les caches des IDE et les données des navigateurs. Les résultats sont rapportés à l'inventaire GitGuardian, où chacun est noté selon sa gravité et sa portée d'accès, et peuvent ensuite être transmis à votre SOC, SIEM ou SOAR.
Protection par Honeytoken : implante un identifiant AWS leurre sur chaque machine, à l'endroit que les collecteurs d'identifiants lisent en premier. Le leurre n'accorde aucun accès, donc toute utilisation de celui-ci est par définition non autorisée et déclenche une alerte nommant la machine compromise. Cela ajoute une détection d'intrusion par-dessus l'inventaire que construit le scan. Voir Protéger les endpoints avec les Honeytokens.
AI Hooks : garde-fous enregistrés dans Claude Code, Cursor, Codex, Copilot CLI, VS Code et Mistral Vibe qui scannent les prompts et les appels d'outils, bloquent ceux qui contiennent des secrets, et indiquent au développeur ou à l'agent ce qu'il faut corriger. Voir Prévenir les fuites avec les AI Hooks.
Inventaire des agents IA et MCP : visibilité sur les agents IA et les serveurs MCP qui s'exécutent sur chaque endpoint, sur les données et outils auxquels ils peuvent accéder, et sur la manière dont ils sont utilisés. Voir Inventaire des agents IA et MCP.
Chaque fonctionnalité est déployée indépendamment, et vous pouvez surveiller la couverture de chacune séparément.
Fonctionnement du scan
ggshield exécute le scan localement sur l'endpoint. Les résultats sont téléversés vers votre dashboard GitGuardian (SaaS ou self-hosted) pour une visibilité centralisée.
Ce qui est envoyé à GitGuardian : Le hash du secret, pas la valeur du secret. GitGuardian stocke les métadonnées et le contexte autour du résultat, et non l'identifiant lui-même. Les métadonnées d'inventaire de la machine (identifiant de la machine, nom d'hôte, noms des comptes locaux) sont également envoyées afin que les résultats soient attribués à la bonne machine et au bon utilisateur (voir Gestion des données et confidentialité). Les documents sources du système de fichiers ne sont jamais transmis aux serveurs de GitGuardian.
Vérifications de validité : Pour les secrets actifs (clés AWS, tokens GitHub, etc.), ggshield appelle l'API du fournisseur directement depuis l'endpoint pour vérifier la validité et récupérer des métadonnées telles que les portées et le propriétaire. Cet appel va de l'endpoint au fournisseur tiers, et non par les serveurs de GitGuardian.
Cache de scan : Les résultats du scan sont mis en cache localement sur l'endpoint : pour chaque fichier scanné, le cache conserve les métadonnées du résultat, les hashs des secrets et les valeurs masquées, jamais les secrets en texte clair eux-mêmes. Lors du scan suivant, les fichiers qui n'ont pas changé (même taille et même heure de modification) sont ignorés et leurs résultats en cache sont réutilisés, ce qui rend les scans récurrents bien plus rapides que le premier.
Prise en charge des plateformes
| Plateforme | Architecture | Statut |
|---|---|---|
| macOS (postes de travail) | arm64 (M1/M2/M3/M4), x86_64 | ✅ Entièrement pris en charge |
| Linux (postes de travail) | arm64, x86_64 | ✅ Entièrement pris en charge |
| Windows (postes de travail) | x86_64 | ✅ Entièrement pris en charge |
| Serveurs Linux (RHEL, Debian, Ubuntu) | arm64, x86_64 | 🚧 Beta |
| Windows Server (2022 & 2025) | x86_64 | 🚧 Beta |
Sur Windows, les paramètres de scan en temps réel de l'antimalware et d'Exploit Protection peuvent ralentir considérablement les scans. Voir Optimiser les performances de scan sur Windows.