Les Dependabot alerts vous indiquent que votre code dépend d’un package non sécurisé. Souvent, le logiciel est conçu à l’aide de packages de code open source provenant d’une grande variété de sources. Les relations complexes entre ces dépendances et la facilité avec laquelle les acteurs malveillants peuvent insérer des programmes malveillants dans le code en amont, signifient que vous pouvez utiliser des dépendances qui ont des failles de sécurité, également appelées vulnérabilités.
Si votre code dépend d’un package qui a une vulnérabilité de sécurité, cela peut entraîner un éventail de problèmes pour votre projet ou les personnes qui l’utilisent. L’utilisation d’un package vulnérable vous permet de cibler de manière réversible les utilisateurs malveillants qui cherchent à exploiter votre système. Par exemple, ils peuvent chercher à accéder à votre code et à vos données à partir de vos clients ou de vos contributeurs. Vous devez effectuer une mise à niveau vers une version sécurisée du package dès que possible. Si votre code utilise des programmes malveillants, vous devez remplacer le package par une alternative sécurisée.
Dependabot ne génère pas de Dependabot alerts pour les programmes malveillants. Pour plus d’informations, consultez « À propos de la base de données GitHub Advisory ».
Pour obtenir une vue d’ensemble des différentes caractéristiques offertes par Dependabot et des instructions de prise en main, consultez « Guide de démarrage rapide Dependabot .»
Détection des dépendances non sécurisées
Dependabot effectue une analyse de la branche par défaut de votre référentiel pour détecter les dépendances non sécurisées et envoie des Dependabot alerts lorsque :
-
Les nouvelles données d’avertissement sont synchronisées avec GitHub chaque heure à partir de GitHub.com. Pour plus d’informations, consultez « Exploration des avis de sécurité dans la base de données GitHub Advisory ».
Remarque : Seuls les avis qui ont été révisés par GitHub déclenchent des Dependabot alerts.
-
Le graphe des dépendances d’un dépôt change. C’est par exemple le cas quand un contributeur pousse (push) un commit pour changer les packages ou les versions dont il dépend. Pour plus d’informations, consultez « À propos du graphe de dépendances ».
Remarque : Dependabot n’analyse pas les référentiels archivés.
En outre, GitHub peut passer en revue les dépendances ajoutées, mises à jour ou supprimées dans une demande de tirage faite sur la branche par défaut d’un dépôt, et marquer tous les changements qui réduiraient la sécurité de votre projet. Cela vous permet de repérer et de traiter les dépendances vulnérables avant qu’elles atteignent votre codebase, plutôt qu’après. Pour plus d’informations, consultez « Révision des changements de dépendances dans une demande de tirage ».
Étant donné que les Dependabot alerts reposent sur le graphe des dépendances, les écosystèmes pris en charge par les Dependabot alerts sont les mêmes que ceux pris en charge par le graphe des dépendances. Pour obtenir la liste de ces écosystèmes, consultez « Écosystèmes de packages pris en charge pour le graphe des dépendances ».
Remarque : Il est important de tenir à jour vos fichiers manifeste et de verrouillage. Si le graphe de dépendances ne reflète pas précisément vos dépendances et versions actuelles, vous pouvez manquer des alertes pour les dépendances non sécurisées que vous utilisez. Vous pouvez également obtenir des alertes pour des dépendances que vous n’utilisez plus.
Dependabot ne créera Dependabot alerts que pour les GitHub Actions vulnérables qui utilisent le contrôle de version sémantique. Vous ne recevrez pas d'alertes pour une action vulnérable qui utilise le contrôle de version SHA. Si vous utilisez GitHub Actions avec le contrôle de version SHA, nous vous recommandons d'activer Dependabot version updates pour votre référentiel ou votre organisation afin que les actions que vous utilisez soient mises à jour avec les dernières versions.
Configuration de Dependabot alerts
Les propriétaires d’entreprise doivent activer les Dependabot alerts pour votre instance GitHub Enterprise Server pour que vous puissiez utiliser cette fonctionnalité. Pour plus d’informations, consultez « Activation de Dependabot pour votre entreprise ».
Quand GitHub Enterprise Server identifie une dépendance vulnérable, nous générons une alerte Dependabot et l’affichons sous l’onglet Sécurité du référentiel et dans le graphe des éléments dépendants du référentiel. L’alerte contient un lien vers le fichier affecté dans le projet et des informations sur une version corrigée.
GitHub Enterprise Server peut également informer les chargés de maintenance des dépôts affectés à propos des nouvelles alertes en fonction de leurs préférences de notification. Quand Dependabot est activé pour la première fois, GitHub Enterprise Server n’envoie pas de notifications pour toutes les dépendances vulnérables trouvées dans votre dépôt, mais seulement pour les nouvelles dépendances vulnérables identifiées après l’activation de Dependabot. Pour plus d’informations, consultez « Configuration de notifications pour les alertes Dependabot ».
Si vous avez activé Dependabot security updates pour votrer référentiel, l’alerte peut également contenir un lien vers une demande de tirage (pull request) pour mettre à jour le fichier manifeste ou de verrouillage vers la version minimale qui résout la vulnérabilité. Pour plus d’informations, consultez « À propos des mises à jour de sécurité Dependabot ».
En outre, vous pouvez utiliser Règles de triage automatique de Dependabot pour gérer vos alertes à l’échelle, pour pouvoir ignorer automatiquement ou désactiver temporairement les alertes, et spécifier les alertes pour lesquelles vous souhaitez que Dependabot ouvre les demandes de tirage. Pour plus d’informations sur les différents types de règles de triage automatique et pour savoir si vos référentiels sont éligibles, consultez « À propos des règles de triage automatique de Dependabot ».
Remarque : les fonctionnalités de sécurité de GitHub Enterprise Server ne prétendent pas intercepter toutes les vulnérabilités. Nous maintenons activement la GitHub Advisory Database et générons des alertes avec les informations les plus récentes. Toutefois, nous ne pouvons pas tout intercepter ou vous informer des vulnérabilités connues dans un délai garanti. Ces fonctionnalités ne se substituent pas à un examen par des humains de chaque dépendance pour les vulnérabilités potentielles ou tout autre problème, et nous vous recommandons de consulter un service de sécurité ou d’effectuer un examen minutieux des dépendances quand cela est nécessaire.
Accès aux Dependabot alerts
Vous pouvez voir toutes les alertes qui affectent un projet particulier dans le graphe de dépendances du dépôt. Pour plus d’informations, consultez « Affichage et mise à jour des alertes Dependabot ».
Par défaut, nous informons les personnes disposant d’autorisations d’écritures, de maintenance et d’administrateur dans les référentiels affectés sur les nouvelles Dependabot alerts.
Pour recevoir des notifications sur les Dependabot alerts dans les référentiels, vous devez les surveiller et vous abonner pour recevoir des notifications « Toutes les activités » ou configurer des paramètres personnalisés pour inclure les « Alertes de sécurité ». Pour plus d’informations, consultez « Configuration des notifications ». Vous pouvez choisir la méthode de remise des notifications, ainsi que la fréquence à laquelle elles sont envoyées. Pour plus d’informations, consultez « Configuration de notifications pour les alertes Dependabot ».
Vous pouvez également voir toutes les Dependabot alerts qui correspondent à un avis particulier dans la GitHub Advisory Database. Pour plus d’informations, consultez « Exploration des avis de sécurité dans la base de données GitHub Advisory ».