In kwetsberens wêrtroch't in fernijing frijlitten waard foar elk pakket yn it NPM-repository

GitHub hat twa ynsidinten iepenbiere yn har NPM-pakket repository-ynfrastruktuer. Op 2 novimber rapporteare feiligensûndersikers fan tredden (Kajetan Grzybowski en Maciej Piechota), as ûnderdiel fan it programma Bug Bounty, de oanwêzigens fan in kwetsberens yn it NPM-repository wêrmei jo in nije ferzje fan elk pakket kinne publisearje mei jo akkount, dy't net autorisearre is om sokke updates út te fieren.

De kwetsberens waard feroarsake troch ferkearde tastimmingskontrôles yn 'e koade fan mikrotsjinsten dy't fersiken oan NPM ferwurkje. De autorisaasjetsjinst hat kontrôles foar pakketfergunning útfierd op basis fan de gegevens dy't trochjûn binne yn it fersyk, mar in oare tsjinst dy't de fernijing uploade nei it repository, bepaalde it pakket om te publisearjen basearre op de metadata-ynhâld fan it uploadde pakket. Sa kin in oanfaller de publikaasje fan in fernijing foar syn pakket oanfreegje, dêr't er tagong ta hat, mar yn it pakket sels ynformaasje opjaan oer in oar pakket, dat úteinlik bywurke wurde soe.

It probleem waard fêst 6 oeren neidat de kwetsberens waard rapportearre, mar de kwetsberens wie oanwêzich yn NPM langer dan telemetry logs cover. GitHub beweart dat d'r sûnt septimber 2020 gjin spoaren west hawwe fan oanfallen mei dizze kwetsberens, mar d'r is gjin garânsje dat it probleem net earder is eksploitearre.

It twadde ynsidint barde op 26 oktober. Tidens technysk wurk mei de database fan 'e replicate.npmjs.com-tsjinst waard de oanwêzigens fan fertroulike gegevens yn' e databank dy't tagonklik binne foar eksterne oanfragen iepenbiere, ynformaasje iepenbiere oer de nammen fan ynterne pakketten dy't waarden neamd yn it wizigingslog. Ynformaasje oer sokke nammen kin brûkt wurde om ôfhinklikens oanfallen út te fieren op ynterne projekten (yn febrewaris, in ferlykbere oanfal koe koade wurde útfierd op 'e servers fan PayPal, Microsoft, Apple, Netflix, Uber en 30 oare bedriuwen).

Derneist, fanwege it tanimmend oantal gefallen fan repositories fan grutte projekten dy't wurde kape en kweade koade wurdt befoardere troch kompromittearjende ûntwikkeldersakkounts, GitHub hat besletten om ferplichte twa-faktor-autentikaasje yn te fieren. De wiziging sil yn it earste fearnsjier fan 2022 yngean en sil jilde foar ûnderhâlders en behearders fan pakketten opnommen yn 'e populêrste list. Derneist wurdt it rapportearre oer de modernisearring fan 'e ynfrastruktuer, wêryn automatisearre tafersjoch en analyze fan nije ferzjes fan pakketten wurde yntrodusearre foar iere opspoaren fan kweade feroarings.

Lit ús ûnthâlde dat, neffens in stúdzje útfierd yn 2020, mar 9.27% fan pakketûnderhâlders twa-faktor autentikaasje brûkt om tagong te beskermjen, en yn 13.37% fan 'e gefallen, by it registrearjen fan nije akkounts, ûntwikkelders besochten kompromittearre wachtwurden opnij te brûken dy't ferskynden yn bekend wachtwurd lekkages. Tidens in beoardieling fan wachtwurdfeiligens waard 12% fan NPM-akkounts (13% fan pakketten) tagong krigen troch it brûken fan foarsisbere en triviale wachtwurden lykas "123456." Under de problematyske wiene 4 brûkersakkounts fan 'e Top 20 populêrste pakketten, 13 akkounts mei pakketten dy't mear dan 50 miljoen kear yn 'e moanne downloade, 40 mei mear dan 10 miljoen downloads per moanne, en 282 mei mear dan 1 miljoen downloads per moanne. Mei it rekkenjen fan it laden fan modules lâns in keten fan ôfhinklikens, kin kompromis fan net-fertroude akkounts oant 52% fan alle modules yn NPM beynfloedzje.

Boarne: opennet.ru

Add a comment