Suggérer d'utiliser Sigstore pour la vérification des packages dans NPM

La nouvelle a été publiée que sur GitHub une proposition a été mise en discussion pour mettre en œuvre le service Sigstore pour vérifier les packages avec des signatures numériques et tenir un registre public pour confirmer l'authenticité lors de la distribution des versions.

À propos de la proposition, il est mentionné que l'utilisation de Sigstore permettra de mettre en place un niveau de protection supplémentaire contre les attaques visant à remplacer les composants logiciels et les dépendances (supply chain).

La sécurisation de la chaîne d'approvisionnement des logiciels est l'un des plus grands défis de sécurité auxquels notre industrie est actuellement confrontée. Cette proposition est une prochaine étape importante, mais pour vraiment résoudre ce défi, il faudra un engagement et un investissement de toute la communauté…

Ces changements aident à protéger les consommateurs open source contre les attaques de la chaîne d'approvisionnement logicielle ; en d'autres termes, lorsque des utilisateurs malveillants tentent de propager des logiciels malveillants en violant le compte d'un responsable et en ajoutant des logiciels malveillants aux dépendances open source utilisées par de nombreux développeurs.

Par exemple, la modification implémentée protégera les sources du projet au cas où le compte développeur de l'une des dépendances dans NPM serait compromis et qu'un attaquant générerait une mise à jour de package avec un code malveillant.

Il convient de mentionner que Sigstore n'est pas simplement un autre outil de signature de code, car son approche normale consiste à éliminer le besoin de gérer les clés de signature en émettant des clés à court terme basées sur les identités OpenID Connect (OIDC), tout en enregistrant les actions. dans un registre immuable appelé rekor, en plus duquel Sigstore a sa propre autorité de certification appelée Fulcio

Grâce au nouveau niveau de protection, les développeurs pourront lier le package généré avec le code source utilisé et l'environnement de construction, donnant à l'utilisateur la possibilité de vérifier que le contenu du paquet correspond au contenu des sources dans le référentiel principal du projet.

L'utilisation de Sigstore simplifie grandement le processus de gestion des clés et élimine les complexités associées à l'enregistrement, à la révocation et à la gestion des clés cryptographiques. Sigstore se présente comme Let's Encrypt for code, fournissant des certificats pour la signature numérique du code et des outils pour automatiser la vérification.

Nous ouvrons aujourd'hui une nouvelle demande de commentaires (RFC), qui examine la liaison d'un paquet à son référentiel source et à son environnement de construction. Lorsque les mainteneurs de packages optent pour ce système, les consommateurs de leurs packages peuvent avoir plus confiance dans le fait que le contenu du package correspond au contenu du référentiel lié.

Au lieu de clés permanentes, Sigstore utilise des clés éphémères de courte durée qui sont générées en fonction des autorisations. Le matériel utilisé pour la signature est reflété dans un enregistrement public protégé contre les modifications, ce qui vous permet de vous assurer que l'auteur de la signature est exactement celui qu'il prétend être et que la signature a été formée par le même participant qui était responsable.

Le projet a été rapidement adopté par d'autres écosystèmes de gestionnaires de packages. Avec la RFC d'aujourd'hui, nous proposons d'ajouter la prise en charge de la signature de bout en bout des packages npm à l'aide de Sigstore. Ce processus inclurait la génération de certifications indiquant où, quand et comment le package a été créé, afin qu'il puisse être vérifié ultérieurement.

Pour assurer l'intégrité et la protection contre la corruption des données, une arborescence Merkle Tree est utilisée dans lequel chaque branche vérifie toutes les branches et nœuds sous-jacents via un hachage conjoint (arbre). En ayant un hachage final, l'utilisateur peut vérifier l'exactitude de l'historique complet des opérations, ainsi que l'exactitude des états passés de la base de données (le hachage de vérification racine du nouvel état de la base de données est calculé en tenant compte de l'état passé).

Enfin, il convient de mentionner que Sigstore est développé conjointement par la Linux Foundation, Google, Red Hat, Purdue University et Chainguard.

Si vous voulez en savoir plus, vous pouvez consulter les détails dans le lien suivant.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.