Aller au contenu principal

Intégrer AWS S3

Surveillez vos buckets AWS S3 afin de détecter les secrets exposés dans les objets stockés, les fichiers de configuration et les exports de données.

info

Cette intégration est disponible sur GitGuardian SaaS uniquement. La prise en charge self-hosted n'est pas disponible à ce stade.

Pourquoi surveiller AWS S3 ?

AWS S3 est l'un des services de stockage les plus utilisés dans les environnements cloud, et il accumule au fil du temps une grande variété de contenus : sauvegardes de bases de données, logs applicatifs, exports de données, artefacts d'Infrastructure-as-Code, fichiers de configuration et sorties de build CI/CD. Chacune de ces catégories est une source fréquente de fuites d'identifiants : clés API intégrées dans des fichiers de configuration, mots de passe de base de données dans des scripts de sauvegarde, ou secrets de fournisseurs cloud codés en dur dans des fichiers d'état Terraform.

Comme les buckets S3 se trouvent souvent en dehors de la visibilité directe des workflows de revue de code et de gestion de versions, les secrets qui y sont stockés ont tendance à passer inaperçus pendant de longues périodes. Intégrer GitGuardian à vos buckets S3 offre à votre équipe de sécurité une couverture continue de cet angle mort.

Fonctionnalités

FonctionnalitéSupportDétails
Scan historique✅ (Supporté)Analyse des objets existants dans les buckets sélectionnés
Scan récurrent⏳ (Prochainement)Scan planifié des objets nouveaux et modifiés
Périmètre surveillé✅ (Supporté)Sélection granulaire des buckets à surveiller
Périmètre d'équipe✅ (Supporté)Contrôle d'accès par équipe
Vérification de présence❌ (Non supporté)Non applicable au stockage objet
Visibilité de la source❌ (Non supporté)Toutes les sources sont considérées comme privées
Scan de fichiers✅ (Supporté)Prise en charge complète des types de fichiers

Ce que nous scannons :

  • Fichiers objets : scripts, fichiers de configuration, artefacts IaC, logs et exports de données
  • Archives contenant l'un des éléments ci-dessus
info

Prérequis de plan : Disponible pour le plan GitGuardian Enterprise. Essayez-le gratuitement avec une période d'essai de 30 jours - tous les incidents détectés restent accessibles après la fin de l'essai.
Couverture des détecteurs : Pour minimiser les faux positifs, Generic High Entropy Secret et Generic Password sont désactivés. Tous les autres détecteurs sont activés.

Configurer votre intégration AWS S3

Prérequis :

  • Compte Owner ou Manager sur votre tableau de bord GitGuardian
  • Permissions AWS IAM pour créer un fournisseur d'identité OIDC et un rôle IAM dans votre compte AWS

GitGuardian s'intègre à Amazon S3 via l'assomption d'un rôle IAM par OIDC. Plutôt que d'utiliser des identifiants à longue durée de vie, la plateforme SaaS de GitGuardian assume un rôle IAM en lecture seule dans votre propre compte AWS. Vous créez et contrôlez entièrement ce rôle.

Étape 1 : Configurer l'authentification AWS

Dans votre compte AWS, vous devez configurer un fournisseur d'identité OIDC pour GitGuardian et créer un rôle IAM qui lui fait confiance.

Ajoutez le fournisseur OIDC GitGuardian et créez le rôle IAM en suivant les instructions de la page Intégration AWS IAM. La trust policy utilise sts:AssumeRoleWithWebIdentity et une condition sub restreinte à l'ID de votre compte GitGuardian afin de prévenir les attaques de type « confused deputy ».

Lors de la configuration de la permission policy du rôle IAM, attachez des permissions S3 en lecture seule ainsi que cloudwatch:GetMetricData, que GitGuardian utilise pour obtenir une estimation de la taille :

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:Get*",
"s3:List*",
"s3:Describe*",
"s3-object-lambda:Get*",
"s3-object-lambda:List*"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": ["cloudwatch:GetMetricData"],
"Resource": "*"
}
]
}
astuce

Nous recommandons de restreindre le champ Resource du bloc S3 aux seuls ARN des buckets que vous comptez surveiller (par exemple, arn:aws:s3:::my-bucket et arn:aws:s3:::my-bucket/*) afin de respecter le principe du moindre privilège. L'action cloudwatch:GetMetricData ne prend pas en charge les permissions au niveau ressource et doit conserver "Resource": "*".

Étape 2 : Enregistrer votre intégration dans GitGuardian

Une fois le rôle IAM prêt, enregistrez l'intégration dans GitGuardian :

  1. Dans la plateforme GitGuardian, accédez à la page Intégration des sources.

  2. Trouvez AWS S3 dans la section File Storage. Utilisez la barre de recherche si nécessaire.

  3. Cliquez sur Install.

    Carte d'intégration AWS S3

  4. Renseignez les informations suivantes :

    • AWS account ID : l'ID du compte AWS dans lequel vous avez créé le rôle IAM (par exemple, 123456789012).
    • Role name : le nom du rôle IAM que vous avez créé (par exemple, GitGuardianS3Scanning).
  5. Cliquez sur Install pour terminer la configuration.

    Formulaire d'enregistrement de l'intégration AWS S3

Gestion des régions

Par défaut, GitGuardian ne scanne que les buckets situés dans la région configurée pour l'intégration. Cela évite des coûts de transfert de données inter-régions non désirés.

Si vous stockez des objets dans plusieurs régions, vous pouvez activer le scan inter-régions dans les paramètres de l'intégration. Cette option est désactivée par défaut. Son activation peut engendrer des frais de transfert de données AWS supplémentaires selon votre usage.

Classes de stockage et maîtrise des coûts

Par défaut, GitGuardian ne scanne que les objets stockés dans la classe de stockage S3 Standard. Les objets dans des classes de stockage pouvant engendrer des coûts de récupération ou de transfert (par exemple, S3 Standard-IA, S3 One Zone-IA et les classes S3 Glacier) ne sont pas scannés par défaut.

Vous pouvez activer le scan de ces classes de stockage dans les paramètres de l'intégration. Gardez à l'esprit que la récupération d'objets dans ces classes peut engendrer des frais de récupération et de transfert de données AWS supplémentaires.

Personnaliser votre périmètre surveillé

L'intégration AWS S3 vous permet de contrôler précisément quels buckets GitGuardian surveille.

Pour mettre à jour votre périmètre surveillé :

  1. Accédez aux paramètres de votre intégration AWS S3.

  2. Utilisez la liste des buckets pour activer ou désactiver la surveillance de buckets spécifiques.

  3. Cliquez sur Save pour appliquer vos changements.

  4. Les changements prennent effet lors du prochain scan planifié.

    Personnalisation du périmètre AWS S3

Comprendre les capacités de scan

Scan historique

Pour déclencher un scan historique, accédez à votre page de périmètre, sélectionnez les sources AWS S3 à scanner, puis cliquez sur Scan dans la barre d'actions groupées. Consultez Gérer votre périmètre surveillé pour les limites de taille selon le plan, la gestion des erreurs et tous les détails.

Un scan historique analyse tous les objets existants dans les buckets sélectionnés. Comme les buckets S3 peuvent accumuler du contenu pendant des mois ou des années, le premier scan peut faire remonter un grand nombre de secrets. Prévoyez du temps pour traiter les incidents qui en résultent.

Scan récurrent

Le scan récurrent re-scanne automatiquement vos buckets à intervalles réguliers afin de détecter les secrets dans les objets nouvellement ajoutés ou modifiés. Cette fonctionnalité arrive prochainement.

Prise en charge complète des fichiers

L'intégration GitGuardian prend en charge un large éventail de types de fichiers :

  1. Fichiers texte et code :
  • Code source (.py, .js, .java, .cpp, .cs, .rb, .go, .php, etc.)
  • Fichiers de configuration (.yaml, .json, .xml, .ini, .conf, .properties, etc.)
  • Documentation (.txt, .md, .rst, .log, etc.)
  1. Documents Office :
  • Microsoft Office (.docx, .xlsx, .pptx, .doc, .xls, .ppt)
  • OpenOffice/LibreOffice (.odt, .ods, .odp)
  • Formats Rich text (.rtf)
  • Autres (.epub)
  1. Fichiers d'archive et compressés (expérimental) :
  • Formats d'archive (.zip, .7z, .rar, .tar, .gz, .tgz ou .tar.gz, .bz2, .tbz2 ou .tar.bz2, .xz, .txz ou .tar.xz, .ar, .cpio, .pack)
  • Images de conteneur (via les extensions .tar)
  1. Autres formats de documents :
  • Documents PDF (.pdf)
  • Formats email (.eml, .msg)
  • Fichiers web (.html, .css)

Considérations sur la taille des fichiers : les gros fichiers sont ignorés pour maintenir des performances optimales. Les seuils de taille sont les suivants :

  • 100 Mo pour tout type de fichier texte.
  • 500 Mo pour les PDF.
  • 1 Go pour tout autre type de fichier listé.

Gérer votre intégration

Surveiller la santé de l'intégration

Suivez la progression des scans et l'état de l'intégration depuis le tableau de bord d'intégration.

Désinstaller l'intégration

Si vous devez supprimer l'intégration :

  1. Accédez à Intégration des sources.

  2. Cliquez sur Edit à côté de AWS S3.

  3. Cliquez sur l'icône de suppression à côté de l'instance d'intégration.

  4. Confirmez la suppression.

    Désinstallation AWS S3

La suppression de l'intégration conserve votre historique d'incidents existant mais arrête les scans futurs. Pour terminer le nettoyage, supprimez le rôle IAM et le fournisseur OIDC de votre compte AWS.

Confidentialité et conformité

Gestion des données

GitGuardian traite vos données uniquement pour détecter les secrets exposés :

  • Accès en lecture seule : nous ne demandons jamais l'accès en écriture sauf s'il est limité à la création de webhooks pour recevoir et traiter les événements en temps réel
  • Rétention minimale des données : nous ne stockons que les données et métadonnées nécessaires à la gestion des incidents
  • Chiffrement : toutes les données en transit et au repos sont chiffrées
  • Conformité : nous suivons les mêmes standards de protection des données que nos autres intégrations

Considérations régionales

GitGuardian héberge ses services dans deux régions AWS : eu-central-1 (Francfort) et us-west-2 (Oregon). Assurez-vous que votre région de déploiement GitGuardian s'aligne avec vos exigences de résidence des données. Contactez le support si vous avez besoin de conseils sur la conformité aux réglementations locales.

Notification des utilisateurs

Les lois et réglementations propres à chaque pays peuvent vous obliger à informer vos équipes que le contenu de vos buckets S3 est scanné à la recherche de secrets. Voici une suggestion de message que vous pouvez utiliser :

Dans le cadre de notre processus interne de sécurité de l'information, l'entreprise scanne ses buckets AWS S3 à la recherche de potentielles fuites de secrets à l'aide de GitGuardian. Toutes les données collectées sont traitées dans le but de détecter d'éventuelles fuites. Pour en savoir plus sur la manière dont nous gérons vos données personnelles et pour exercer vos droits, veuillez consulter notre notice de confidentialité destinée aux employés/partenaires. Veuillez noter que seuls les buckets relatifs à l'activité et aux affaires de l'entreprise peuvent être surveillés et que les utilisateurs doivent s'abstenir de stocker des données personnelles ou sensibles sans rapport avec la finalité du bucket.