PureScripti installijaga npm-paketi sõltuvustes tuvastati pahatahtlikud muudatused

Olenevalt PureScripti installiprogrammiga npm-paketist tuvastatud pahatahtlik kood, mis kuvatakse paketi installimisel puhas kiri. Pahatahtlik kood on manustatud sõltuvuste kaudu load-from-cwd-or-npm и hind-kaart. Tähelepanuväärne on see, et nende sõltuvustega pakettide hooldust teostab npm paketi algne autor PureScripti installeriga, kes alles hiljuti hooldas seda npm paketti, kuid umbes kuu aega tagasi läks pakett üle teistele hooldajatele.

Probleemi avastas üks paketi uutest hooldajatest, kellele hooldusõigused läksid üle pärast paljusid erimeelsusi ja ebameeldivaid arutelusid puhta kirja npm paketi algse autoriga. Uued hooldajad vastutavad PureScripti kompilaatori eest ja nõudsid, et NPM-i paketti ja selle installijat peaksid hooldama samad hooldajad, mitte välised osapooled. PureScripti installeriga npm paketi autor ei olnud pikka aega nõus, kuid andis siis järele ja andis ligipääsu hoidlale üle. Mõned sõltuvused jäid siiski tema kontrolli alla.

Eelmisel nädalal ilmus PureScript 0.13.2 kompilaator ja
uued hooldajad koostasid npm paketi vastava uuenduse koos installeriga, mille sõltuvustes tuvastati pahatahtlik kood. Hooldaja kohalt eemaldatud PureScripti installeerijaga npm-paketi autor ütles, et tema kontole sattusid tundmatud ründajad. Kuid praegusel kujul piirdus pahatahtliku koodi tegevus paketi installimise saboteerimisega, mis oli uute hooldajate esimene versioon. Pahatahtlikud toimingud kujutasid endast tõrketeatega tsüklit, kui prooviti installida paketti käsuga “npm i -g purescript” ilma ilmset pahatahtlikku tegevust sooritamata.

Tuvastati kaks rünnakut. Mõni tund pärast paketi purescript npm uue versiooni ametlikku väljaandmist lõi keegi sõltuvuse load-from-cwd-or-npm 3.0.2 uue versiooni, mille muudatused tõid kaasa väljakutse loadFromCwdOrNpm() installimiseks vajalike binaarfailide loendist tagastati voog Läbi pääsema, peegeldab sisendpäringuid väljundväärtustena.

4 päeva hiljem, pärast seda, kui arendajad leidsid välja tõrgete allika ja valmistusid välja andma värskendust, mis välistaks sõltuvuste load-from-cwd-or-npm, andsid ründajad välja uue värskenduse load-from-cwd-or-npm. 3.0.4, milles pahatahtlik kood eemaldati. Peaaegu kohe ilmus aga teise sõltuvuse, rate-map 1.0.3 värskendus, mis lisas paranduse, mis blokeeris laadimise tagasihelistamiskõne. Need. mõlemal juhul olid muudatused load-from-cwd-or-npm ja rate-map uutes versioonides ilmselge sabotaaži iseloomuga. Veelgi enam, pahatahtlikul koodil oli kontroll, mis käivitas vigased toimingud ainult uute hooldajate väljalase installimisel ega ilmunud vanemate versioonide installimisel.

Arendajad lahendasid probleemi, andes välja värskenduse, milles probleemsed sõltuvused eemaldati. Selleks et vältida vigastatud koodi sadestumist kasutajasüsteemidesse pärast PureScripti probleemse versiooni installimist, on soovitatav kustutada node_modules kataloogide sisu ja failid package-lock.json ning seejärel määrata purescripti versioon 0.13.2. madalam limiit.

Allikas: opennet.ru

Lisa kommentaar