Cybersécurité

GitHub étend les alertes de logiciels malveillants de npm à huit écosystèmes de paquets

La GitHub Advisory Database importe désormais les données relatives aux paquets malveillants depuis un dépôt OpenSSF, ce qui permet à Dependabot d’émettre des alertes dans huit écosystèmes de paquets au lieu de se limiter à npm. Le nouveau système repose sur la validation automatisée, le suivi de la source, des limites d’importation et la possibilité d’effectuer des réversions afin de protéger la base de données contre les données erronées ou compromises.

2026-08-06
4 min de lecture
224 vues
certi.news Editorial Team
GitHub étend les alertes de logiciels malveillants de npm à huit écosystèmes de paquets

GitHub a étendu la portée des alertes Dependabot relatives aux paquets malveillants, de l’écosystème npm à huit écosystèmes, après avoir relié la GitHub Advisory Database aux données du dépôt OpenSSF consacré aux paquets malveillants. La nouvelle couverture inclut npm, PyPI, Maven, RubyGems, NuGet, Go, crates.io et PHP Composer, ce qui permet de détecter des dépendances malveillantes dans des projets utilisant des langages et des outils allant au-delà de JavaScript.

Dependabot avait commencé plus tôt dans l’année à détecter les logiciels malveillants dans les dépendances npm. La nouvelle extension repose sur l’importation d’enregistrements OpenSSF au format OSV, plutôt que sur la création de systèmes de détection distincts pour chaque écosystème. Selon la publication, le dépôt OpenSSF contient plus de 15 000 rapports depuis son lancement en 2023, et continue de croître grâce aux signalements de la communauté et aux sources de détection automatisées, notamment les paquets à similarité de nom, les paquets de confusion de dépendances, les prises de contrôle de comptes et les fichiers binaires précompilés malveillants.

Un importateur unifié pour les données relatives aux paquets malveillants

L’équipe d’ingénierie de la sécurité de la chaîne d’approvisionnement de GitHub a développé un importateur unique suivant le modèle des importateurs utilisés avec les dépôts d’alertes publiques. L’importateur lit les fichiers modifiés depuis sa dernière exécution, puis vérifie les champs obligatoires, les types et le format conformément au schéma OSV avant d’introduire un enregistrement dans la base de données. Les enregistrements qui échouent à la validation sont rejetés et consignés pour examen, au lieu d’être automatiquement modifiés puis transmis.

Après validation, les enregistrements sont convertis en entrées de flux comprenant la source, l’identifiant et l’identifiant CVE lorsqu’il est disponible, tout en conservant l’enregistrement original complet comme copie de référence. L’importateur traite également les différences entre les données des sources, comme l’utilisation par OpenSSF du nom PyPI alors que la base de données GitHub utilise le nom pip, la représentation des versions concernées sous forme de valeurs distinctes plutôt que de plages, l’absence d’une version exploitable dans certains rapports et le retrait de rapports qui se révèlent ultérieurement incorrects.

Prévention des doublons et protection du pipeline de publication

Un problème supplémentaire vient du fait que GitHub contribue lui-même à fournir des données au dépôt OpenSSF, tandis que les alertes GitHub relatives aux logiciels malveillants npm sont transmises au dépôt. Pour éviter de réimporter les mêmes données, l’importateur s’appuie sur les informations de source de l’enregistrement dans OSV et exclut toute entrée portant l’étiquette ghsa-malware, puisqu’elle provient initialement de GitHub. La publication indique que plus de la moitié des nouveaux rapports npm reçus chaque mois par le dépôt provenaient d’alertes GitHub ; ils sont donc exclus en tant que boucles de réimportation.

Les alertes de logiciels malveillants sont publiées automatiquement, sans lecture humaine de chaque rapport avant publication, car retarder l’alerte de plusieurs jours peut donner davantage de temps à un attaquant lorsqu’un paquet vole des identifiants. Cela diffère des alertes de vulnérabilités, qui nécessitent généralement une vérification humaine de la correspondance des paquets, des plages de versions et de la gravité du problème.

Trois couches pour gérer les données erronées

  • Limites des lots : chaque exécution définit un plafond configurable pour le nombre d’alertes pouvant être créées. Si les données dépassent ce plafond, l’exécution entière s’arrête et rien n’est publié, tandis que le nombre exact d’alertes est transmis.
  • Suivi de la source : chaque alerte est liée au commit précis du dépôt malicious-packages, ce qui permet d’identifier la source du rapport pendant les incidents.
  • Réversion : chaque lot peut être identifié et annulé comme une seule unité si des données contaminées se sont infiltrées, au lieu de supprimer manuellement les alertes de la base de données.

Activation pour les utilisateurs

Les alertes de dépendances malveillantes dans Dependabot sont désormais disponibles en option et peuvent être activées depuis les paramètres de sécurité du dépôt, de l’organisation ou de l’entreprise. Après activation, Dependabot compare les dépendances aux alertes de logiciels malveillants de la GitHub Advisory Database, notamment au moyen d’une mise en correspondance ultérieure avec les alertes déjà existantes.

Source de l’actualité
c
Auteur

certi.news Editorial Team

À retenir

GitHub a étendu les alertes Dependabot concernant les paquets malveillants de npm à huit écosystèmes en important les données OpenSSF au format OSV dans GitHub Advisory Database. La fonctionnalité est désormais facultative et peut être activée depuis les paramètres de sécurité du dépôt, de l’organisation ou de l’entreprise.

  • La couverture inclut npm, PyPI, Maven, RubyGems, NuGet, Go, crates.io et PHP Composer.
  • L’extension repose sur un importateur unifié qui vérifie automatiquement les champs, les types et le format avant l’insertion des enregistrements.
  • La protection comprend des limites sur le nombre d’alertes, le suivi de la source de chaque enregistrement et la possibilité d’annuler les lots contaminés.
  • Les enregistrements portant la balise ghsa-malware sont exclus afin d’empêcher la réimportation de données provenant initialement de GitHub.
  • Les alertes concernant les paquets malveillants sont publiées automatiquement, sans examen humain de chaque rapport, afin de réduire le délai avant l’avertissement.
  • Après l’activation, Dependabot fait correspondre les dépendances aux alertes de logiciels malveillants présentes dans GitHub Advisory Database, y compris les alertes antérieures.

FAQ

Quels écosystèmes sont couverts par les nouvelles alertes concernant les paquets malveillants ?

Ils incluent npm, PyPI, Maven, RubyGems, NuGet, Go, crates.io et PHP Composer.

Comment activer la fonctionnalité ?

Elle peut être activée facultativement depuis les paramètres de sécurité du dépôt, de l’organisation ou de l’entreprise.

Quelle est la source des données sur les paquets malveillants ?

GitHub importe les données depuis le dépôt OpenSSF consacré aux paquets malveillants, en utilisant le format OSV.

Comment l’importateur protège-t-il la base de données contre les données incorrectes ?

Il utilise la validation du schéma, des limites sur les lots, le suivi de la source et la possibilité d’annuler les lots.

Dans la même catégorie

À lire également

Voir toutes les actualités