Le niveau de sécurité a augmenté pour les registres NPM pour les paquets JavaScript chez GitHub. La filiale de Microsoft vient d’annoncer la mise en place d’une politique d’authentification à deux facteurs pour les mainteneurs et les administrateurs de ce registre. Cette politique de sécurité sera mise en place à partir d’une cohorte de paquets de premier niveau au premier trimestre 2022, précise Github dans un bulletin publié le 15 novembre dernier. La plateforme est devenue le responsable du registre après avoir acquis NPM en 2020.

Cette décision fait suite à deux incidents de sécurité. Le premier s’est déroulé en octobre dernier où GitHub a découvert un problème causé par la maintenance d’une routine d’un service NPM accessible au public. Lors de la maintenance de la base de données qui alimente une réplique publique de NPM, des enregistrements ont été créés qui pouvaient exposer les noms de paquets privés. Cela a brièvement permis aux clients de la réplique d'identifier potentiellement les noms des paquets privés grâce aux enregistrements publiés dans le flux de modifications public.

Une faille corrigée en 6 heures

Aucune autre information, y compris le contenu des paquets privés, n'était accessible à tout moment. Ceux, privés, au format @owner/package et créés avant le 20 octobre ont été exposés entre le 21 et le 29 octobre, lorsque l'enquête a commencé sur un correctif et la détermination de la portée de l'exposition. Tous les enregistrements contenant des noms de paquets privés ont été supprimés du service replicate.npmjs.com à cette date. Des modifications ont été apportées pour éviter que le problème ne se reproduise.

L’autre incident a eu lieu le 2 novembre dernier. GitHub a reçu un rapport sur une vulnérabilité qui offrait à un attaquant de publier de nouvelles versions de n'importe quel paquet NPM en utilisant un compte sans autorisation appropriée. La faille a été corrigée dans les six heures suivant la réception du rapport.