Betterleaks : le nouveau scanner de secrets open source qui succède à Gitleaks
Identifier les secrets au sein de fichiers, dossiers ou dépôts Git, c’est la mission de l’outil open source Betterleaks. Il succède à Gitleaks et se veut plus rapide et plus précis.
Pourquoi Betterleaks succède-t-il à Gitleaks ?
Si vous êtes un adepte du DevSecOps et de l’intégration continue, vous connaissez probablement Gitleaks. Cet outil a été téléchargé plus de 26 millions de fois sur GitHub et son image Docker compte plus de 35 millions de téléchargements. En effet, il est fortement apprécié pour scanner les dépôts Git et les codes sources afin de traquer les clés API, les tokens et autres mots de passe laissés par erreur.
Mais alors pourquoi, Zach Rice, le développeur de Gitleaks, a-t-il pris la décision de publier Betterleaks, un outil similaire ? Sa réponse : “Pour être franc, je n’ai plus le contrôle total sur le dépôt Gitleaks ni sur son nom. C’est dommage, mais cela me donne aussi l’occasion de repartir sur de nouvelles bases.”
Soutenu par la société pour laquelle il travaille, à savoir Aikido Security, il a pris la décision de lancer Betterleaks. Ce nouvel outil est distribué sous licence MIT et son code source est disponible sur GitHub.
Zach Rice semble avoir une réelle ambition avec son nouvel outil puisqu’il veut construire le meilleur scanner de secrets open source. “Betterleaks est le successeur de Gitleaks. Nous laissons tomber le “git” et y ajoutons “better” [meilleur] parce que c’est ce qu’il est, meilleur.”, précise-t-il.
De meilleures performances que Gitleaks
Tout d’abord, il faut savoir que Betterleaks est compatible avec Gitleaks. Cela signifie que vous pouvez réutiliser vos anciennes configurations. Ce qui change, c’est le moteur de détection : il a été révisé de façon à avoir des fonctions supplémentaires, mais aussi pour être plus performant.
“Gitleaks dispose d’une configuration solide, mais il peut parfois être un peu difficile de la modifier. Nous souhaitons simplifier encore davantage la configuration et privilégier le filtrage basé sur CEL (Common Expression Language) plutôt que les listes d’autorisation. La configuration de la version 2.x.x sera entièrement rétrocompatible avec la v1 (et vos anciennes configurations Gitleaks).”, peut-on lire.
Voici les principales évolutions techniques :
- L’abandon de l’entropie au profit de la tokénisation
Au lieu de s’appuyer sur l’entropie standard pour repérer des chaînes de caractères aléatoires, Betterleaks utilise une technique basée sur la tokénisation BPE. Celui lui permet d’être beaucoup plus précis, et donc de réduire le nombre de faux positifs. Le taux d’identification passe de 70,4 % à 98,6 % d’après le développeur.
- Des scans parallélisés
Grâce à une implémentation optimisée en Go (et libérée de toute dépendance à CGO ou Hyperscan), l’analyse des historiques Git volumineux s’effectue désormais en parallèle. Cette optimisation réduit forcément le temps nécessaire pour effectuer une analyse complète.
- La détection des encodages multiples
L’outil repère de façon native les secrets qui seraient encodés deux ou trois fois (en Base64 ou autre) pour tenter de contourner la vigilance des scanners classiques.
- Une intégration pensée pour les agents IA
L’interface en ligne de commande a été spécialement conçue pour que les agents IA puissent s’en servir de manière autonome. L’idée étant de lui permettre d’utiliser Betterleaks pour vérifier à la volée du code généré par IA.
Sur le GitHub de Betterleaks, il y a d’ailleurs un comparatif des performances entre Gitleaks et Betterleaks. Ce nouvel outil serait 4 à 5 fois plus performant que Gitleaks pour réaliser un scan complet. Il est précisé que ce benchmark a été réalisé sur des dépôts réels.

Qu’en pensez-vous ?