Stocker ses secrets dans Git, une mauvaise pratique pouvant avoir de lourdes conséquences

Spécialité(s)


Résumé

Dans un rapport datant d’avril 2020, GitLab indique que 18 % des dépôts analysés sur gitlab.com comportaient des problèmes de gestion des secrets. Quelles peuvent être les conséquences liées à ces erreurs ? Quelle stratégie adopter pour gérer au mieux ses secrets ?


À une époque où la réduction du Time-To-Market est une priorité, les développeurs subissent une pression toujours plus importante pour délivrer rapidement leurs applications. Les cycles de livraison sont de plus en plus courts et il n’est pas rare de voir des PoC partir en production.

Dans ce contexte, par manque de connaissances ou de solutions plus robustes, il est fréquent de voir apparaître, directement dans le code source stocké sur des dépôts Git, des secrets nécessaires au bon fonctionnement d’un logiciel (token, clé d’API, nom d’utilisateur/mot de passe, etc.).

1. Quels problèmes ?

Le stockage des secrets en clair dans un dépôt Git pose des problèmes de différentes natures :

  • la mauvaise configuration des dépôts peut rendre le code source accessible à une population plus large que souhaitée ;
  • un secret doit idéalement être renouvelé périodiquement. Plus cette rotation implique de changements (changement du code,...
Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne
Références

[GITLAB] Top 6 security trends in GitLab-hosted projects : https://about.gitlab.com/blog/2020/04/02/security-trends-in-gitlab-hosted-projects

[GITHUB_ORG] GitHub: About organizations : https://docs.github.com/en/github/setting-up-and-managing-organizations-and-teams/about-organizations

[UBER] Uber: Hackers stole 57m passengers, drivers' info : https://www.theregister.com/2017/11/22/uber_2016_data_breach

[GITHUB_RES] JumpCloud API Key leaked via Open Github Repository : https://docs.github.com/en/github/setting-up-and-managing-organizations-and-teams/restricting-repository-creation-in-your-organization

[STARTBUCKS] JumpCloud API Key leaked via Open Github Repository : https://hackerone.com/reports/716292

[GITLEAKS] GitHub Gitleaks : https://github.com/zricethezav/gitleaks

[GG] GitGuardian : Surveillance de dépôts internes : https://www.gitguardian.com/monitor-internal-repositories-for-secrets

[GG_ACCURACY] Assessing model performance in secrets detection: accuracy, precision & recall explained : https://blog.gitguardian.com/secrets-detection-accuracy-precision-recall-explained

[GIT] Git : Removing sensitive data from a repository : https://docs.github.com/en/github/authenticating-to-github/removing-sensitive-data-from-a-repository

[GS] git-secret : https://git-secret.io

[PGP] The PGP problem : https://latacora.micro.blog/2019/07/16/the-pgp-problem.html

[AGE] A simple, modern and secure encryption tool : https://github.com/FiloSottile/age

[SOPS] Simple and flexible tool for managing secrets : https://github.com/mozilla/sops

[SAMIR] Shamir's Secret Sharing : https://www.vaultproject.io/docs/concepts/seal#shamir-seals

[VAULT] Hashicorp Vault : https://www.vaultproject.io

[ASM] AWS Secret Manager : https://aws.amazon.com/fr/secrets-manager

[AKV] Azure Key Vault : https://azure.microsoft.com/fr-fr/services/key-vault

[GCSM] Google Cloud Secret Manager : https://cloud.google.com/secret-manager

[VAULT_CERT] Création des certificats : https://github.com/acheronstyix/vault-misc/blob/main/README.md

[VAULT_INSTALL] Installation de Vault : https://learn.hashicorp.com/tutorials/vault/getting-started-install?in=vault/getting-started

[CYBELANGEL] CybelAngel : https://cybelangel.com

[GG_PUBLIC] GitGuardian: Surveillance des dépôts publics GitHub https://www.gitguardian.com/monitor-public-github-for-secrets

[SDLC] A. Lagier « Secure Software Development LifeCycle », MISC n°109, mai-juin 2020



Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous