Vulnérabilité permettant de publier une mise à jour pour n'importe quel package dans le dépÎt NPM

La société GitHub a annoncé deux incidents survenus dans l'infrastructure du dépÎt de paquets NPM. Le 2 novembre, des chercheurs en sécurité indépendants (Kajetan Grzybowski et Maciej Piechota) ont signalé une vulnérabilité dans le dépÎt NPM dans le cadre du programme Bug Bounty, permettant de publier une nouvelle version de tout paquet en utilisant un compte non autorisé pour effectuer de telles mises à jour.

La vulnĂ©rabilitĂ© Ă©tait due Ă  une vĂ©rification des droits incorrecte dans le code des microservices qui traitent les requĂȘtes Ă  NPM. Le service d'authentification vĂ©rifiait les droits d'accĂšs aux paquets en fonction des donnĂ©es transmises dans la requĂȘte, mais un autre service, qui tĂ©lĂ©charge la mise Ă  jour dans le dĂ©pĂŽt, dĂ©terminait le paquet Ă  publier en fonction des mĂ©tadonnĂ©es contenues dans le paquet tĂ©lĂ©chargĂ©. Ainsi, un attaquant pouvait demander la publication d'une mise Ă  jour pour son propre paquet, auquel il avait accĂšs, tout en spĂ©cifiant dans le paquet lui-mĂȘme les informations d'un autre paquet qui serait finalement mis Ă  jour.

Le problÚme a été corrigé six heures aprÚs la divulgation de l'information sur la vulnérabilité, mais cette vulnérabilité était présente dans NPM plus longtemps que ce que couvrent les journaux de télémétrie. GitHub affirme qu'aucune trace d'attaques utilisant cette vulnérabilité n'a été enregistrée depuis septembre 2020, mais il n'y a aucune garantie que le problÚme n'ait pas été exploité auparavant.

Le deuxiĂšme incident s'est produit le 26 octobre. Lors d'opĂ©rations techniques sur la base de donnĂ©es du service replicate.npmjs.com, des donnĂ©es confidentielles rĂ©vĂ©lant des informations sur les noms de paquets internes mentionnĂ©s dans le journal des modifications ont Ă©tĂ© dĂ©couvertes dans une base de donnĂ©es accessible aux requĂȘtes externes. Ces informations sur de tels noms peuvent ĂȘtre utilisĂ©es pour mener des attaques sur des dĂ©pendances dans des projets internes (en fĂ©vrier, une telle attaque a permis d'exĂ©cuter du code sur serveurs PayPal, Microsoft, Apple, Netflix, Uber et encore 30 autres entreprises).

De plus, en raison de la recrudescence des cas de prise de contrĂŽle des dĂ©pĂŽts de grands projets et de la propagation de code malveillant par la compromission des comptes des dĂ©veloppeurs, GitHub a dĂ©cidĂ© d'introduire une authentification Ă  deux facteurs obligatoire. Ce changement entrera en vigueur au premier trimestre de 2022 et s'appliquera aux mainteneurs et aux administrateurs de paquets figurant sur la liste des plus populaires. Il est Ă©galement prĂ©vu une modernisation de l'infrastructure, oĂč une surveillance et une analyse automatisĂ©es des nouvelles versions des paquets seront mises en place pour dĂ©tecter rapidement les modifications malveillantes.

Rappelons qu'en vertu d'une étude menée en 2020, seulement 9,27 % des mainteneurs de paquets utilisent l'authentification à deux facteurs pour protéger l'accÚs, et dans 13,37 % des cas lors de l'enregistrement de nouveaux comptes, les développeurs ont tenté de réutiliser des mots de passe compromis figurant dans des fuites de mots de passe connues. Lors de la vérification de la fiabilité des mots de passe utilisés, il a été possible d'accéder à 12 % des comptes sur NPM (13 % des paquets) en raison de l'utilisation de mots de passe prévisibles et triviaux, tels que « 123456 ». Quatre comptes d'utilisateurs parmi le Top 20 des paquets les plus populaires ont été concernés, ainsi que 13 comptes dont les paquets étaient téléchargés plus de 50 millions de fois par mois, 40 plus de 10 millions de téléchargements par mois et 282 avec plus de 1 million de téléchargements par mois. Compte tenu du téléchargement des modules par chaßne de dépendances, la compromission de comptes non fiables a pu affecter jusqu'à 52 % de tous les modules sur NPM.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster