NPM gaat verder met beveiligingsproblemen en nu heeft er een invloed op het updatesysteem

Een paar dagen geleden GitHub onthulde twee incidenten in de NPM-pakketrepository-infrastructuur, waarvan het beschrijft dat op 2 november externe beveiligingsonderzoekers als onderdeel van het Bug Bounty-programma een kwetsbaarheid hebben gevonden in de NPM-repository waarmee een nieuwe versie van elk pakket kan worden gepubliceerd, ook al is het niet geautoriseerd om dergelijke updates uit te voeren.

De kwetsbaarheid is veroorzaakt door onjuiste autorisatiecontroles in de microservices-code die verzoeken aan NPM verwerkt. De autorisatieservice voerde een toestemmingscontrole uit op de pakketten op basis van de gegevens die in het verzoek waren doorgegeven, maar een andere service die de update naar de repository uploadde, bepaalde dat het pakket moest worden gepubliceerd op basis van de metadata-inhoud in het geüploade pakket.

Zo zou een aanvaller kunnen verzoeken om de publicatie van een update voor zijn pakket, waartoe hij toegang heeft, maar in het pakket zelf informatie aangeven over een ander pakket, dat uiteindelijk zou worden bijgewerkt.

De afgelopen maanden heeft het npm-team geïnvesteerd in infrastructuur- en beveiligingsverbeteringen om de monitoring en analyse van recent uitgebrachte pakketversies te automatiseren om malware en andere kwaadaardige code in realtime te identificeren.

Er zijn twee hoofdcategorieën van malware-postgebeurtenissen die plaatsvinden in het npm-ecosysteem: malware die wordt gepost vanwege accountkaping en malware die aanvallers via hun eigen accounts posten. Hoewel accountacquisities met een hoge impact relatief zeldzaam zijn, vergeleken met directe malware die wordt gepost door aanvallers die hun eigen accounts gebruiken, kunnen accountacquisities verreikend zijn wanneer ze zich richten op populaire pakketbeheerders. Hoewel onze detectie- en reactietijd op acquisities van populaire pakketten bij recente incidenten slechts 10 minuten was, blijven we onze mogelijkheden voor malwaredetectie en meldingsstrategieën ontwikkelen naar een meer proactief responsmodel.

Het probleem het is 6 uur nadat de kwetsbaarheid is gemeld verholpen, maar de kwetsbaarheid was langer aanwezig in NPM dan wat telemetrielogboeken dekken. GitHub stelt dat er geen sporen zijn van aanvallen met gebruikmaking van deze kwetsbaarheid sinds september 2020, maar er is geen garantie dat het probleem niet eerder is uitgebuit.

Het tweede incident vond plaats op 26 oktober. Tijdens technisch werk met de replicant.npmjs.com-servicedatabase, bleek dat er vertrouwelijke gegevens in de database beschikbaar waren voor externe raadpleging, onthullende informatie over de namen van de interne pakketten die in de changelog werden genoemd.

Informatie over die namen kan worden gebruikt om afhankelijkheidsaanvallen op interne projecten uit te voeren (In februari zorgde een dergelijke aanval ervoor dat code kon worden uitgevoerd op de servers van PayPal, Microsoft, Apple, Netflix, Uber en 30 andere bedrijven.)

Bovendien heeft in verband met de toenemende incidentie van inbeslagname van repositories van grote projecten en de promotie van kwaadaardige code door het compromitteren van ontwikkelaarsaccounts, GitHub heeft besloten om verplichte tweefactorauthenticatie in te voeren. De wijziging wordt van kracht in het eerste kwartaal van 2022 en is van toepassing op de beheerders en beheerders van de pakketten die zijn opgenomen in de lijst met de meest populaire. Bovendien rapporteert het over de modernisering van de infrastructuur, die de geautomatiseerde monitoring en analyse van nieuwe versies van pakketten zal introduceren voor de vroege detectie van kwaadaardige wijzigingen.

Bedenk dat volgens een studie uitgevoerd in 2020 slechts 9.27% van de pakketbeheerders tweefactorauthenticatie gebruikt om de toegang te beschermen, en in 13.37% van de gevallen, bij het registreren van nieuwe accounts, ontwikkelaars probeerden gecompromitteerde wachtwoorden opnieuw te gebruiken die in bekende wachtwoorden voorkomen .

Tijdens de controle van de sterkte van de gebruikte wachtwoorden werd 12% van de accounts in NPM (13% van de pakketten) benaderd door het gebruik van voorspelbare en triviale wachtwoorden zoals "123456". Onder de problemen waren 4 gebruikersaccounts van de 20 meest populaire pakketten, 13 accounts waarvan de pakketten meer dan 50 miljoen keer per maand werden gedownload, 40 - meer dan 10 miljoen downloads per maand en 282 met meer dan 1 miljoen downloads per maand. Gezien de belasting van modules langs de keten van afhankelijkheden, kan het compromitteren van niet-vertrouwde accounts in totaal tot 52% van alle modules in NPM beïnvloeden.

Tenslotte als u er meer over wilt weten u kunt de details controleren In de volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.