Le défi de la sécurité des secrets : Comment GitGuardian protège vos informations sensibles

Le titre de cet article ressemble probablement à la légende d’un mème. Il s’agit plutôt d’un problème réel que les ingénieurs de GitGuardian ont dû résoudre en mettant en œuvre les mécanismes de leur nouveau service HasMySecretLeaked.

Ils voulaient aider les développeurs à vérifier si leurs secrets (mots de passe, clés API, clés privées, certificats cryptographiques, etc.) avaient été accidentellement exposés dans les dépôts publics de GitHub. Mais comment fouiller dans cette immense bibliothèque de secrets trouvés dans des dépôts GitHub accessibles au public, sans exposer encore plus d’informations sensibles ? Cet article vous l’explique.

Tout d’abord, imaginez que la masse d’un bit équivaut à celle d’un électron : une tonne de données représenterait environ 121,9 quadrillions de pétaoctets de données, ou 39,2 milliards de milliards de dollars en mises à niveau du stockage des MacBook Pro. Autant dire que lorsque GitGuardian parle de scanner une « tonne » de données publiques de GitHub, il s’agit bien sûr d’une métaphore. Cependant, il est vrai qu’ils ont parcouru une quantité impressionnante de commits et de gists publics de GitHub, trouvant des millions de secrets : mots de passe, clés API, clés privées, certificats cryptographiques, et bien plus encore. Et ce chiffre de « millions » n’est pas une exagération : en 2022, ils en ont découvert plus de 10 millions.

Mais comment permettre aux développeurs et à leurs employeurs de vérifier si leurs secrets sont parmi ces millions, sans risquer de les exposer à des menaces ? La réponse tient en un mot : empreinte digitale.

Après une évaluation et des tests rigoureux, GitGuardian a développé un protocole d’empreinte secrète qui chiffre et hache le secret, ne partageant ensuite qu’un hachage partiel avec GitGuardian. Cette méthode permet de limiter les correspondances potentielles à un nombre gérable sans fournir assez d’informations pour inverser ou décrypter le hachage. Pour plus de sécurité, ils ont intégré la boîte à outils de chiffrement côté client.

Si vous utilisez l’interface web HasMySecretLeaked, vous pouvez copier un script Python qui crée le hachage localement, puis envoie le résultat via votre navigateur. Ainsi, le secret lui-même n’est jamais transmis par le navigateur. Examinez le script de 21 lignes pour vérifier qu’il n’envoie rien en dehors de votre session de terminal. Si cela ne suffit pas, ouvrez les outils de développement (F12) dans votre navigateur et surveillez le panneau Réseau pour voir ce qui est transmis.

Pour ceux qui utilisent le CLI open source de ggshield, il est possible d’inspecter le code et de voir ce qui se passe lors de l’utilisation de la commande hmsl. Si vous avez besoin de plus de garanties, utilisez des outils comme Fiddler ou Wireshark pour surveiller le trafic.

Les ingénieurs de GitGuardian savaient que même leurs clients les plus fidèles hésiteraient à coller une clé API ou un autre secret dans une page web. Pour garantir la sécurité et la tranquillité d’esprit, ils ont choisi la transparence totale et ont mis le plus de processus possible sous le contrôle des utilisateurs. Cela se reflète dans la documentation de la commande hsml de ggshield.

GitGuardian a fait un effort supplémentaire pour s’assurer que les utilisateurs du vérificateur HasMySecretLeaked n’ont pas à partager leurs secrets réels pour vérifier s’ils ont été exposés. Et cela a porté ses fruits : plus de 9000 secrets ont été vérifiés dans les premières semaines.

Si vos secrets ont été divulgués publiquement, il vaut mieux le savoir que de l’ignorer. Ils n’ont peut-être pas encore été exploités, mais ce n’est probablement qu’une question de temps. Vous pouvez vérifier jusqu’à cinq secrets par jour gratuitement avec l’outil HasMySecretLeaked sur le web, et encore plus avec le CLI ggshield. Même si vous ne cherchez pas à vérifier vos secrets, l’approche de GitGuardian pourrait inspirer des efforts similaires pour améliorer la sécurité des services que vous utilisez.

Pour partager des informations sensibles sans révéler les données elles-mêmes, découvrez comment la détection et la réponse des applications, ainsi que la modélisation automatisée du comportement, peuvent révolutionner votre défense contre les menaces internes. Vous êtes-vous déjà demandé pourquoi l’ingénierie sociale fonctionne si bien ? Décodons ensemble l’esprit d’un cyber-attaquant. Vous cherchez comment sécuriser votre entreprise ? Découvre nos cyber-services !

Partager:

Les dernières actualités :