À propos de l’secret scanning
Secret scanning est une fonctionnalité de sécurité qui permet de détecter et d’empêcher l’inclusion accidentelle dans votre référentiel d’informations sensibles telles que des clés API, des mots de passe, des jetons ou tout autre secret. Lorsque cette option est activée, secret scanning analyse les validations dans les référentiels pour les types connus de secrets et d’administrateurs de référentiel d’alertes lors de la détection.
Secret scanning recherche les secrets dans l’historique Git de toutes les branches présentes dans votre référentiel GitHub, même si le référentiel est archivé. GitHub exécutera également périodiquement une analyse complète de l’historique Git pour les nouveaux types de secrets dans le contenu existant dans les référentiels avec GitHub Secret Protection activés dans lesquels secret scanning est activé lorsque de nouveaux types de secrets pris en charge sont ajoutés.
De plus, secret scanning analyse :
- Descriptions et commentaires dans les problèmes
- Titres, descriptions et commentaires, dans les problèmes historiques ouverts et fermés
- Titres, descriptions et commentaires dans les demandes de tirage
- Titres, descriptions et commentaires dans GitHub Discussions
- Wikis
- Idées secrètes. Une notification est envoyée au partenaire concerné lorsqu’un modèle partenaire est détecté dans un gist secret.
Conseil
Quel que soit le statut d'activation des fonctionnalités Advanced Security, les organisations utilisant GitHub Team et GitHub Enterprise peuvent générer un rapport gratuit afin d'analyser le code de l'organisation à la recherche de fuites de secrets.
Pour générer un rapport, ouvrez l'onglet ** Sécurité ** de votre organisation, affichez la page ** Évaluations **, puis cliquez sur Analyser votre organisation.
Lorsqu’un secret pris en charge est divulgué, GitHub génère une alerte secret scanning. Les alertes sont signalées dans l’onglet Sécurité des référentiels sur GitHub, où vous pouvez afficher, évaluer et résoudre ces données. Pour plus d’informations, consultez « Gérer les alertes d’analyse des secrets ».
Pour plus d’informations sur les secrets et les fournisseurs de services pris en charge par secret scanning, consultez Modèles de détection de secrets pris en charge.
Vous pouvez utiliser l’API REST pour monitorer les résultats de l’secret scanning sur vos référentiels ou votre organisation. Pour plus d’informations sur les points de terminaison d’API, consultez Points de terminaison d’API REST pour l’analyse de secrets.
Vous pouvez utiliser la vue d’ensemble de la sécurité pour voir au niveau de l’organisation les référentiels où l'secret scanning est activée et les alertes trouvées. Pour plus d’informations, consultez « À propos de la vue d’ensemble de la sécurité ».
Vous pouvez auditer les actions effectuées en réponse aux alertes secret scanning à l’aide des outils GitHub. Pour plus d’informations, consultez « Audit des alertes de sécurité ».
Flux d’secret scanning
Vous trouverez ci-dessous un flux de travail classique qui explique comment fonctionne secret scanning :
-
**Détection :** Secret scanning analyse automatiquement le contenu de votre référentiel pour les données sensibles, telles que les clés API, les mots de passe, les jetons et d’autres secrets. Il recherche des modèles et des heuristiques qui correspondent aux types connus de secrets. -
**Alertes :** lorsqu’un secret potentiel est détecté, GitHub génère une alerte et avertit les administrateurs et utilisateurs du référentiel appropriés. Cette notification inclut des détails sur le secret détecté, par exemple son emplacement dans le référentiel. Pour plus d’informations sur les types d’alertes et les détails de l’alerte, consultez « [AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning/about-alerts) ». -
**Révision :** lorsqu’un secret est détecté, vous devez passer en revue les détails de l’alerte fournis. -
**Correction :** vous devez ensuite prendre les mesures appropriées pour corriger l’exposition. Ces mesures doivent toujours inclure la rotation des informations d’identification affectées afin de s’assurer qu’elles ne sont plus utilisables. Vous pouvez également supprimer le secret de l’historique du référentiel (à l’aide d’outils tels que `git-filter-repo` ; consultez [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository) pour plus de détails), bien que cela implique probablement un coût élevé en termes de temps et d’efforts, et est généralement inutile si les informations d’identification ont été révoquées. -
**Surveillance :** il est recommandé d’auditer et de surveiller régulièrement vos référentiels pour vous assurer qu’aucun autre secret n’est exposé.
À propos des avantages des secret scanning
-
**Sécurité renforcée :** Secret scanning analyse vos référentiels pour obtenir des informations sensibles telles que des clés API, des mots de passe, des jetons ou tout autre secret. En détectant tôt ces risques, vous pouvez atténuer les risques de sécurité potentiels avant qu’ils ne soient exploités par des acteurs malveillants. -
**Détection automatisée :** la fonctionnalité analyse automatiquement votre base de code, y compris les validations, les problèmes et les demandes de tirage, ce qui garantit une protection continue sans intervention manuelle. Cette automatisation permet de maintenir la sécurité même à mesure que votre référentiel évolue. -
**Alertes en temps réel :** lorsqu’un secret est détecté, secret scanning fournit des alertes en temps réel aux administrateurs et contributeurs du référentiel. Ces commentaires immédiats permettent d’effectuer des actions de correction rapides. -
**Prise en charge des modèles personnalisés :** les organisations peuvent définir des modèles personnalisés pour détecter des types de secrets propriétaires ou uniques qui peuvent ne pas être couverts par des modèles par défaut. Cette flexibilité permet des mesures de sécurité personnalisées spécifiques à votre environnement. -
**Possibilité de détecter des modèles non fournisseurs :** vous pouvez développer la détection pour inclure des modèles non fournisseurs tels que des chaînes de connexion, des en-têtes d’authentification et des clés privées, pour votre référentiel ou votre organisation.
Personnalisation de l’secret scanning
Une fois que l'secret scanning est activée, vous pouvez le personnaliser ultérieurement :
Détection des modèles non fournisseurs
Recherchez et détectez les secrets qui ne sont pas spécifiques à un fournisseur de services, tels que les clés privées et les clés API génériques. Pour plus d’informations, consultez « Activation de l’analyse du secret pour les modèles non fournisseurs ».
Exécution de vérifications de validité
Les contrôles de validité vous aident à classer par ordre de priorité les alertes en vous indiquant quels secrets sont active ou inactive. Pour plus d’informations, consultez Évaluation des alertes à partir de l’analyse des secrets.
Définition de modèles personnalisés
Définissez vos propres modèles pour les secrets utilisés par votre organisation que l'secret scanning peut rechercher et détecter. Pour plus d’informations, consultez « Définition de modèles personnalisés pour l’analyse des secrets ».
Lectures complémentaires
-
[AUTOTITLE](/code-security/secret-scanning/enabling-secret-scanning-features/enabling-secret-scanning-for-your-repository) -
[AUTOTITLE](/code-security/secret-scanning/introduction/about-push-protection) -
[AUTOTITLE](/code-security/getting-started/best-practices-for-preventing-data-leaks-in-your-organization) -
[AUTOTITLE](/code-security/getting-started/securing-your-repository) -
[AUTOTITLE](/authentication/keeping-your-account-and-data-secure)