Skip to main content

À propos de la base de données GitHub Advisory

Les GitHub Advisory Database contiennent une liste de vulnérabilités de sécurité connues et de programmes malveillants, regroupés en trois catégories : les avis révisés GitHub, les avis non révisés, et les avis sur les programme malveillants.

À propos de la GitHub Advisory Database

Nous ajoutons des conseils à la GitHub Advisory Database à partir des sources suivantes :

Si vous connaissez une autre base de données à partir de laquelle nous devrions importer des avis, dites-le nous en ouvrant un problème dans https://github.com/github/advisory-database.

Les avis de sécurité sont publiés sous forme de fichiers JSON au format OSV (Open Source Vulnerability). Pour plus d'informations sur le format OSV, consultez « Format Open Source Vulnerability ».

À propos des types d'avis de sécurité

Chaque avis dans la GitHub Advisory Database concerne une vulnérabilité dans les projets open source ou des logiciels open source malveillants.

Une vulnérabilité est un problème dans le code d’un projet qui pourrait être exploité pour altérer la confidentialité, l’intégrité ou la disponibilité du projet ou d’autres projets qui utilisent son code. Les vulnérabilités varient en fonction du type, de la gravité et de la méthode d’attaque. Les vulnérabilités dans le code sont généralement introduites par accident et corrigées peu après leur découverte. Vous devez mettre à jour votre code pour utiliser la version corrigée de la dépendance dès qu'elle est disponible.

En revanche, les logiciels malveillants ou les programmes malveillants sont du code qui est intentionnellement conçu pour exécuter des fonctions indésirables ou dangereuses. Les programmes malveillants peuvent cibler du matériel, des logiciels, des données confidentielles ou des utilisateurs d'une application qui les utilise. Vous devez supprimer les programmes malveillants de votre projet et trouver une alternative plus sécurisée pour la dépendance.

Avis révisés par GitHub

Les avis révisés par GitHub sont des vulnérabilités de sécurité qui ont été mappés à des packages dans les écosystèmes que nous prenons en charge. Nous examinons attentivement tous les avis pour en vérifier la validité et nous assurons qu’ils disposent d’une description complète, et contiennent des informations à la fois sur l’écosystème et les packages.

En règle générale, nous nommons nos écosystèmes pris en charge d'après le registre de packages associé du langage de programmation logicielle. Nous examinons les avis s'ils concernent une vulnérabilité dans un package provenant d'un registre pris en charge.

Si vous avez une suggestion pour un nouvel écosystème que nous devrions prendre en charge, ouvrez un problème pour en discuter.

Si vous activez Dependabot alerts pour vos référentiels, vous êtes automatiquement averti lorsqu'un nouvel avis GitHub signale une vulnérabilité pour un package dont vous dépendez. Pour plus d'informations, consultez « À propos des alertes Dependabot ».

Avis non révisés

Les avertissements non révisés sont des failles de sécurité que nous publions automatiquement dans la GitHub Advisory Database, directement à partir du flux de la National Vulnerability Database.

Dependabot ne crée pas d'Dependabot alerts pour les avis non révisés, car ce type d'avis n'est pas vérifié du point de vue de la validité ou de l'achèvement.

Avertissements sur les programmes malveillants

Remarque : Les conseillers en matière de programme malveillant sont actuellement en version bêta et susceptibles de changer.

Les avis sur les programmes malveillants concernent les vulnérabilités causées par des programmes malveillants et sont des avis de sécurité que GitHub publie automatiquement dans GitHub Advisory Database, directement à partir d'informations fournies par l'équipe de sécurité de npm. Les avis sur les programmes malveillants sont exclusifs à l’écosystème npm. GitHub ne modifie pas et n'accepte pas les contributions de la communauté à ces avis.

Dependabot ne génère pas d'alertes lorsque des programmes malveillants sont détectés, car la plupart des vulnérabilités ne peuvent pas être résolues par les utilisateurs en aval. Vous pouvez consulter les avis sur les programmes malveillants en recherchant type:malware dans GitHub Advisory Database.

Nos avertissements sur les programmes malveillants portent principalement sur les attaques par substitution. Dans ce type d'attaque, un attaquant publie dans le registre public un package portant le même nom qu'une dépendance d'un tiers ou d'un registre privé sur laquelle les utilisateurs comptent, dans l'espoir que la version malveillante soit consommée. Dependabot n'examine pas les configurations du projet pour déterminer si les packages proviennent d'un registre privé. Nous ne savons donc pas si vous utilisez la version malveillante ou une version non malveillante. Les utilisateurs dont les dépendances sont correctement délimitées ne devraient pas être affectés par les programmes malveillants.

À propos des informations dans les avis de sécurité

Dans cette section, vous trouverez des informations plus détaillées sur les avis de sécurité dans la GitHub Advisory Database, notamment celles-ci :

  • Les ID d'avis et le format utilisé par ces identificateurs.
  • Les niveaux CVSS que nous avons utilisés pour attribuer les niveaux de gravité.

À propos des ID GHSA

Chaque avis de sécurité, quel que soit son type, a un identificateur unique appelé ID GHSA. Un qualificateur GHSA-ID est attribué quand un avis est créé sur GitHub.com ou ajouté à la GitHub Advisory Database à partir de l'une des sources prises en charge.

La syntaxe des ID GHSA suit ce format : GHSA-xxxx-xxxx-xxxx, où :

  • x est une lettre ou un chiffre de l'ensemble suivant : 23456789cfghjmpqrvwx.
  • Retirez la partie GHSA du nom :
    • Les chiffres et les lettres sont attribués de manière aléatoire.
    • Toutes les lettres sont en minuscules.

Vous pouvez vérifier un ID GHSA avec une expression régulière.

Bash
/GHSA(-[23456789cfghjmpqrvwx]{4}){3}/

À propos des niveaux CVSS

Chaque avis de sécurité contient des informations sur la vulnérabilité ou le programme malveillant, qui peuvent inclure la description, la gravité, le package affecté, l'écosystème de package, les versions affectées et les versions corrigées, l'impact ainsi que des informations facultatives telles que les références, les solutions de contournement et les crédits. En outre, les avis de la liste de la National Vulnerability Database contiennent un lien vers l'enregistrement CVE, où vous pouvez lire plus d'informations sur la vulnérabilité, ses scores CVSS et son niveau de gravité qualitative. Pour plus d'informations, consultez la « National Vulnerability Database » du National Institute of Standards and Technology.

Le niveau de gravité est l'un des quatre niveaux possibles définis dans la section 5 du CVSS (Common Vulnerability Scoring System).

  • Faible
  • Moyen/modéré
  • Élevé
  • Critique

La GitHub Advisory Database utilise les niveaux CVSS décrits ci-dessus. Si GitHub obtient un CVE, la GitHub Advisory Database utilise CVSS version 3.1. Si le CVE est importé, la GitHub Advisory Database prend en charge les versions 3.0 et 3.1 de CVSS.

Vous pouvez également rejoindre GitHub Security Lab pour parcourir les rubriques liées à la sécurité et contribuer aux outils et projets de sécurité.

Pour aller plus loin