Purescript npm installerist leiti pahatahtlikku koodi

npm puhaskiri

Mõni päev tagasi PureScripti installimisel tuvastati paketi npm sõltuvustes pahatahtlik kood, mis avaldub purescript-paketi installimisel.

Pahatahtlik kood manustatud sõltuvuste load-from-cwd-või-npm kaudu ja kiiruskaardi sõltuvused. Tuleb märkida, et nende sõltuvustega pakettide saatmise eest vastutab paketi npm algne autor koos PureScripti installijaga, kes kuni viimase ajani tegeles selle npm paketi hooldamisega, kuid pakett saadeti teistele hooldajatele.

Probleemi kohta

Probleemi avastas üks paketi uus analüütik, kellele ülalpidamisõigused anti üle pärast palju lahkarvamusi ja koledaid arutelusid npm purescript paketi algse autoriga.

Uued hooldajad vastutavad PureScripti kompilaatori ja nad nõudsid, et NPM-i paketi koos selle paigaldajaga peaksid hooldajad ise parandama, mitte projekti väline arendaja.

Paketi npm autor koos PureScripti installeriga oli pikka aega eriarvamusel, kuid loobus seejärel ja andis juurdepääsu hoidlale. Mõned sõltuvused jäid siiski tema kontrolli alla.

Eelmisel nädalal kuulutati välja kompilaatori PureScript 0.13.2 väljaandmine ja uued hooldajad valmistasid koos installeriga ette vastava paketi npm värskenduse, mille jaoks avastati pahatahtlik kood.

Pahatahtlik kood sisestati esmakordselt paketti npm "load-from-cwd-or-npm" versioonis 3.0.2 ja seejärel kiiruse kaardipaketis versioonist 1.0.3. Viimastel päevadel on mõlemast paketist avaldatud mitu versiooni.

Paketi npm autorit PureScripti installijaga kaasas olnud postitusest nihkes ütles ta, et tundmatud ründajad rikkusid tema kontot.

Kuid praegusel kujul piirati pahatahtliku koodi toiminguid ainult paketi installi saboteerimisega, mis oli uute hooldajate esimene versioon. Pahatahtlikud toimingud kõrvaldati, kui prooviti installida paketti käsuga "npm i -g purescript" ilma selget pahatahtlikku tegevust sooritamata.

Tuvastati kaks rünnakut

Kokkuvõttes kood saboteerib purescript npm installeri, et vältida allalaadimise lõpuleviimist, mille tõttu installija ripub etapi "Kontrollige, kas teie platvormile on ette nähtud kompileeritud binaarkaart" ajal.

Esimene ärakasutamine tegi seda paketi load-from-cwd-or-npm purustamisega nii et mis tahes kõne loadFromCwdOrNpm () tagastaks oodatud paketi (antud juhul päringupaketi, mida kasutasime kompilaatori binaarkaartide allalaadimiseks) asemel läbipääsujada. Kasutamise teine ​​iteratsioon tegi seda, muutes allikafaili, et vältida allalaaditava tagasihelistuse käivitamist.

4 päeva hiljem arendajad mõistsid vigade allikat ja valmistusid värskenduse väljaandmiseks, et välistada koormustest-cwd-o-npm sõltuvustest, vabastasid ründajad veel ühe värskenduse load-from-cwd-or-npm 3.0.4, kus pahatahtlik kood on eemaldatud.

Peaaegu kohe anti välja aga veel üks sõltuvuse Rate-Map 1.0.3 värskendus, kuhu lisati parandus, mis blokeerib tagasihelistamiskõne allalaadimiseks.

See tähendab, et mõlemal juhul olid muudatused koormuse alates-cwd-või-npm ja kaardi kiiruse uutes versioonides ilmselge kõrvalekalde laadsed.

Samuti oli pahatahtlikus koodis kontroll, mis käivitas ebaõnnestunud toimingud ainult uute hooldajate versiooni installimisel ja ei ilmunud eelmiste versioonide installimisel üldse.

Arendajad lahendasid probleemi, vabastades värskenduse, milles probleemsed sõltuvused eemaldati.

Pärast seda, kui olete proovinud installida PureScripti probleemse versiooni, ei tohi kasutajate süsteemidesse installida rikutud koodi.

Lõpuks soovitab arendaja kõigile, kellel on paketi nimetatud versioonid oma süsteemis eemaldage kataloogide node_modules ja failide package-lock.json sisu ning määrake seejärel purescript versioon 0.13.2.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.