MARKETIA
N1 · Simple à mettre en placeNouveau

Détection de secrets oubliés dans le code et l'historique Git (Gitleaks)

Scanne code, commits et historique complet à la recherche de clés API, tokens et identifiants avant qu'ils n'atteignent un dépôt public

Vendu par MagicMate

Ce qu'il faut

Niveau
N1 · Simple à mettre en place — Vous déposez un fichier fourni dans un outil que vous utilisez déjà. Rien à héberger ni à configurer en profondeur.
Serveur requis
Non
Réglages requis
Non (dépôt d'un fichier)
Licence
Projet tiers sous licence permissive (MIT) : utilisation, modification et redistribution permises selon ses termes, avec conservation des mentions de droit d'auteur et du texte de licence. Le texte de la licence d'origine, publié dans le dépôt source, fait foi.

Gitleaks scanne votre code, vos commits et tout l'historique Git à la recherche de secrets oubliés — clés API, tokens, identifiants de base de données — avant qu'ils n'atteignent un dépôt public ou un pipeline de build. Il s'intègre en pre-commit, en GitHub Action ou en ligne de commande, avec des règles de détection prêtes à l'emploi pour de nombreux types de secrets.

Limites et précautions : l'auteur déclare l'outil « feature complete » : plus de nouvelles fonctions, seulement des correctifs de sécurité, son attention étant passée à son successeur Betterleaks (même auteur, licence MIT), à considérer avant d'installer Gitleaks sur un nouveau projet. Un scanner à expressions régulières ne trouve pas tout, et un secret déjà publié doit être révoqué, pas seulement détecté.

Licence et attribution : Source : https://github.com/gitleaks/gitleaks. Licence : MIT (https://raw.githubusercontent.com/gitleaks/gitleaks/master/LICENSE). Tous droits conservés par ses auteurs ; cette fiche est une présentation rédigée par Marketia.

Critique Marketia

Verdict

Un scanner de secrets (clés API, mots de passe, jetons) simple et très répandu, mais son auteur déclare l'outil « feature complete » : plus de nouvelles fonctions, seulement des correctifs de sécurité, et son attention est passée à un successeur, Betterleaks. À présenter honnêtement comme un outil stable en fin de développement, pas comme la référence du futur.

Pour qui (PME française)

  • Toute équipe qui développe (ou fait développer) du code et veut éviter qu'une clé API parte sur GitHub : intégrateur, agence, DSI de PME.
  • Utilisable en ligne de commande, en hook pre-commit ou en CI ; pas besoin d'être expert.

Points forts prouvés

  • Détecte les secrets dans l'historique git, des dossiers ou de l'entrée standard (README lu).
  • Installation en une commande : Homebrew, image Docker (Docker Hub ou ghcr.io), binaires de la page des releases, ou compilation Go (README lu).
  • Configurable par fichier TOML : règles à expression régulière, entropie minimale, listes d'autorisation (README lu) ; option --redact pour masquer les secrets dans les journaux ; code de sortie configurable.
  • Binaire unique, sans service ni base de données : l'un des produits les plus faciles à installer de ce lot.

Limites et risques

  • Statut de maintenance : en tête du README, avertissement : « Gitleaks is feature complete. I'm not merging new features into Gitleaks. Future releases will be security patches only. I'm shifting my focus to Betterleaks ». Dernière release v8.30.1 le 2026-03-21 ; derniers commits lus du 2026-07-22, des mises à jour d'actions CI automatiques (flux Atom lus).
  • Le successeur Betterleaks (https://github.com/betterleaks/betterleaks) : même auteur et équipe, licence MIT (LICENSE lu), dernière release lue le 2026-10-07, validation active des secrets, filtrage par expressions, nouvelles sources (GitHub, GitLab, S3...). La branche main est la v2 et la v1 vit sur v1.x (README lu). Il faut le considérer avant d'installer Gitleaks pour un nouveau projet. Nous n'avons pas évalué sa maturité au-delà de ce README.
  • Détections manquées et faux positifs documentés dans les issues ouvertes (environ 277, page des issues, résumé automatique) : le mode pre-commit sur fichiers indexés ne détecte pas les secrets (#2281, bug), liste d'autorisation trop large (#2293), rapport écrit avec des droits trop larges (#2299). Deux issues demandent de corriger des CVE (#2305 pour la version 8.30.1, #2291 « Go CVE Vulnerabilities »), sans que nous ayons vérifié leur validité. Peu de réponses de mainteneur visibles sur la page lue.
  • Le README du pre-commit cite l'exemple rev: v8.24.2, plus ancien que la dernière version : copier-coller sans vérifier donne une version dépassée.
  • Un scanner à expressions régulières ne trouve pas tout : un secret mal formé passe, et un secret déjà publié doit de toute façon être révoqué, pas seulement détecté. Ne jamais traiter l'absence de résultat comme une preuve.

Effort d'installation réel

Très faible : une commande ou un binaire. Intégration CI et pre-commit : une demi-heure à quelques heures selon l'organisation ; réglage des faux positifs : le vrai temps (ajuster les règles et la liste d'autorisation). Estimation, pas mesure.

Alternatives

  • Betterleaks (successeur annoncé, même équipe), TruffleHog (validation des secrets, licence à vérifier : non évaluée), GitHub Secret Scanning (intégré à GitHub, selon formule), Trivy (fiche Marketia voisine, détecte aussi des secrets).

Licence et attention commerciale

MIT (fichier LICENSE lu : « Copyright (c) 2019 Zachary Rice »). Usage commercial permis. L'outil imprime les secrets trouvés dans sa sortie sauf --redact : ne pas coller ces rapports dans un ticket ou un message ; ne pas les stocker avec des droits larges (voir #2299).

Ce que nous n'avons pas testé

Aucune installation, aucun scan, aucune mesure de faux positifs ou d'omissions, aucun test du hook pre-commit, aucun test de Betterleaks, aucune vérification des CVE signalées contre la dernière version.

Sources (lues le 2026-10-17)