Bagel est un outil en ligne de commande (CLI) open source développé par BoostSecurity, conçu pour inventorier les métadonnées pertinentes pour la sécurité sur les postes de travail des développeurs. Il analyse les configurations et outils (Git, SSH, npm, environnements cloud, etc.) ainsi que les emplacements potentiels de secrets, sans jamais exfiltrer les valeurs sensibles, se limitant aux métadonnées comme les chemins, permissions ou types de clés.
L’outil propose neuf sondes pour détecter des configurations risquées (comme des clés SSH sans phrase de passe ou des registres npm non sécurisés) et huit détecteurs de secrets, uniquement pour signaler leur présence sans les exposer. Les rapports, générés en JSON, sont locaux et respectueux de la vie privée, évitant toute opération intrusive ou injection de processus.
Bagel permet aux équipes de sécurité d’identifier des vulnérabilités dans la chaîne d’approvisionnement (mauvaise hygiène des clés, fuites de credentials) et d’appliquer des contrôles de posture via des flags comme --strict. Des binaires précompilés sont disponibles pour macOS, Linux et Windows.
Ce billet propose une méthode pour détecter et supprimer les secrets exposés sur les postes de travail des développeurs avant qu’ils ne soient exploités par des acteurs malveillants. L’auteur souligne que les gestionnaires de paquets (PyPI, npm, brew, etc.) et les outils comme VS Code élargissent la surface d’attaque, rendant les postes vulnérables aux vols de données d’identification. La plupart des entreprises se contentent de solutions passives, comme espérer que leurs outils de sécurité endpoint bloquent les menaces.
Pour améliorer cette situation, l’auteur recommande une combinaison d’outils open-source : Bagel, un scanner de secrets configuré pour repérer les clés SSH, les identifiants GitHub ou cloud, et Fleet, une plateforme de gestion et de télémétrie basée sur osquery. Ensemble, ils permettent de surveiller les postes en continu, d’évaluer la conformité via des politiques personnalisables et d’automatiser les notifications ou blocages (via Slack ou des fournisseurs d’identité) en cas de faille critique. L’intégration repose sur des scripts macOS (Fleebag) pour déployer Bagel et centraliser les résultats dans Fleet.
L’approche vise à remplacer les vérifications manuelles par un processus automatisé et scalable, adapté même aux petites structures. Les outils, écrits en Go et conçus pour une intégration fluide, offrent une alternative légère aux solutions commerciales, tout en s’appuyant sur des standards comme JSON pour l’interopérabilité.
Bagel est un outil CLI cross-platform (Linux, macOS, Windows) qui analyse la posture sécurité des postes de travail des développeurs en détectant les configurations risquées (clés SSH sans passphrase, Git SSL désactivé, etc.) et les secrets exposés (tokens, credentials cloud) sans jamais exfiltrer leurs valeurs. Développé en Go par BoostSecurity.io, il génère un rapport JSON structuré avec des remédiations actionnables, comparable à Lynis mais adapté aux outils de dev (Git, npm, IDEs, etc.). Ce guide explique son installation, l’interprétation des findings (priorisés par sévérité), et son intégration en CI via le mode --strict. Idéal pour les équipes DevSecOps souhaitant automatiser la détection des risques sur les environnements locaux.