GitHub, qui appartient à Microsoft, vient d'annoncer qu'une nouvelle fonction avait été déployée en masse pour tous les utilisateurs : le secret scanning. L'idée est simple : empêcher un développeur distrait de publier des données qui devraient rester secrètes, comme les identifiants de connexion à un service de cloud.
Détection et désactivation
Le communiqué donne un exemple pratique : un développeur a scanné 13 954 dépôts et a trouvé 1 353 secrets différents dans 1 110 des dépôts. Il peut s'agir de codes d'accès à des API, à des services de cloud (comme AWS), des clés privées, etc.
La technologie repose sur un partenariat entre GitHub et les sociétés dont les données peuvent poser des soucis de sécurités si elles se retrouvent dans la nature. Le fonctionnement consiste en plusieurs étapes, et la première est évidemment de fournir une expression régulière qui va permettre de détecter la présence des données en question. Il s'agit d'un morceau de code qui permet de vérifier si la structure d'une variable correspond à celle d'un identifiant connu, par exemple. La seconde étape, une fois une structure détectée, consiste à créer un service qui va permettre de vérifier si la structure détectée est bien valide (il peut y avoir des faux positifs).
Enfin, les partenaires peuvent décider de révoquer automatiquement les données qui deviennent publiques, ou de simplement prévenir la personne qui a envoyé les informations. De même, il est possible de gérer les faux positifs, pour éviter les alertes intempestives.
Pour activer la fonction, il faut vous rendre dans Settings, puis dans Code security and analysis. La fonction Secret scanning se trouve en bas de la liste et peut être activée pour tous les dépôts mais aussi pour tous les dépôts futurs, de façon automatique.