Aller au contenu principal

Qu'est-ce que ggscout ?

GitGuardian Scout (ggscout) est une application en ligne de commande qui collecte les secrets et leurs métadonnées depuis vos Secrets Managers et synchronise ces données avec votre plateforme GitGuardian.

Pourquoi collecter les secrets ?

Lorsqu'un secret est divulgué dans votre dépôt de code ou exposé dans votre infrastructure, une question critique se pose : ce secret est-il actuellement utilisé, et où ? Sans inventaire de vos secrets de production, y répondre est long et source d'erreurs.

ggscout résout ce problème en :

  1. Constituant un inventaire des secrets stockés dans vos Secrets Managers (HashiCorp Vault, AWS Secrets Manager, etc.)
  2. Hachant ces secrets localement à l'aide de l'algorithme HMSL — les secrets ne quittent jamais votre infrastructure en clair
  3. Rapprochant cet inventaire des secrets détectés par GitGuardian dans votre code ou d'autres sources

Ce rapprochement permet trois capacités clés :

1. Étendre la couverture de détection

En maintenant un inventaire des secrets en coffre, vous pouvez détecter quand ces secrets sont compromis ailleurs dans votre périmètre. Lorsque GitGuardian détecte un secret divulgué, il peut immédiatement vous indiquer s'il correspond à un secret actuellement stocké dans votre coffre.

Exemple : un développeur commit accidentellement une clé API dans un dépôt public. Avec ggscout, vous savez instantanément que cette clé provient de votre HashiCorp Vault de production et quelle application l'utilise.

2. Améliorer la priorisation des incidents

Les secrets en coffre s'accompagnent de métadonnées précieuses : chemins dans le coffre, durées de bail, politiques de rotation, applications associées et environnements. Ce contexte vous aide à prioriser les incidents à corriger en premier.

Exemple : deux secrets sont divulgués. L'un a un bail de 90 jours et n'est utilisé qu'en environnement de développement. L'autre a un bail de 365 jours et est utilisé par un service de paiement en production. Les métadonnées de ggscout vous aident à prioriser le secret de production en premier.

3. Amorcer la remédiation des incidents

En identifiant les secrets qui ne sont pas dans votre coffre (secrets non vaultés), ggscout peut vous aider à les sécuriser. Il peut automatiquement pousser les secrets non vaultés dans votre Secrets Manager, en fournissant à vos développeurs le chemin du coffre pour mettre à jour leur code.

Exemple : GitGuardian détecte un mot de passe de base de données en clair dans un ancien dépôt. Avec ggscout, vous pouvez pousser ce secret vers votre coffre et fournir aux développeurs le chemin exact pour le référencer, ce qui simplifie le processus de remédiation.

Aucun secret ne sort de votre environnement !

Les valeurs des secrets ne quittent jamais votre environnement en clair !

Les valeurs des secrets sont hachées avec l'algorithme de hachage HMSL avant d'être envoyées à votre espace de travail GitGuardian. D'autres métadonnées non sensibles comme les noms des secrets, les chemins dans le coffre, la date de création, la durée de bail, etc., sont également collectées pour vous aider dans le processus de remédiation.

Collecter les secrets en toute sécurité pour faciliter la remédiation

Une fois ggscout déployé et configuré dans votre environnement, il fonctionne ainsi :

  1. Il collecte les secrets et métadonnées associées depuis les Secrets Managers que vous avez configurés.
  2. Il hache les secrets avec l'algorithme de hachage HMSL.
  3. Il envoie les données collectées à GitGuardian et les rapproche des incidents de secrets existants.

Scout Flow

Voilà, vous pouvez commencer à exploiter ces capacités depuis votre plateforme GitGuardian !

Stocker en toute sécurité les secrets non vaultés

Avec ggscout, vous pourrez identifier les secrets non vaultés depuis votre liste d'incidents.
Mieux encore, vous pourrez aussi pousser ces secrets vers vos Secrets Managers et amorcer la remédiation de ces incidents !
Voici le scénario standard :

  • Une fois un incident de secret priorisé, vous pouvez insérer le secret dans votre Secrets Manager
  • Vos développeurs corrigent leur code en invoquant correctement le secret depuis le bon chemin fourni dans le détail de l'incident
  • Une fois la correction de code terminée, révoquez le bon secret depuis le coffre via le lien fourni dans le détail de l'incident

ggscout prend en charge l'ensemble de ce processus avec le flux simple suivant :

  1. ggscout récupère l'incident de secret qui n'a pas encore été vaulté.
  2. ggscout écrit le secret à l'emplacement spécifié.

Push-to-Vault

Cette capacité est optionnelle

Vous pouvez choisir de ne pas accorder l'accès en écriture.
Vous pouvez également restreindre les emplacements où le scout peut écrire des secrets (par exemple, un chemin temporaire spécifique à ggscout).

Garder le plein contrôle sur l'exécution de ggscout

La transparence compte !

Aucune information sensible ne quitte jamais votre infrastructure.

Disposer d'un programme externe comme ggscout vous permet de :

  • Faire contrôler son exécution et ses accès par votre équipe (par exemple, accès partiels, une instance pour l'accès en lecture et une autre pour l'écriture)
  • Faire surveiller par votre équipe les données traitées

ggscout est auditable.

  • Vous pouvez exécuter le mode fetch-only et écrire un rapport JSON sur disque pour auditer les données collectées par ggscout et vous assurer qu'aucune valeur de secret en clair n'est collectée. Les données disponibles dans le rapport sont exactement celles envoyées à GitGuardian en mode par défaut.
  • Vous pouvez demander l'accès au code source

Démarrer

Prêt à essayer ggscout ? Rendez-vous sur la page Déployer et configurer ggscout, qui inclut un guide de démarrage rapide pour des tests locaux avec le binaire CLI ou le package Python, ainsi que des options de déploiement en production via Docker ou Kubernetes.

Pas d'accès à la plateforme GitGuardian ?

Si vous déployez ggscout dans un cluster Kubernetes mais ne disposez pas d'accès à la plateforme GitGuardian, ce qui empêche l'envoi des secrets hachés, ggbridge est la solution. Il établit une passerelle sécurisée et authentifiée par mTLS entre votre réseau et la plateforme GitGuardian, permettant à ggscout de communiquer avec l'API publique GitGuardian et de transmettre les données d'inventaire.

Pour les instructions détaillées d'installation et plus d'informations, consultez la documentation ggbridge.