Откриени злонамерни промени во зависностите за пакетот npm со инсталаторот PureScript

Во зависност од пакетот npm со инсталаторот PureScript идентификувани злонамерен код што се појавува кога се обидувате да инсталирате пакет чисто писмо. Злонамерниот код е вграден преку зависности оптоварување-од-cwd-или-npm и стапка-карта. Забележливо е дека одржувањето на пакетите со овие зависности го врши оригиналниот автор на пакетот npm со инсталаторот PureScript, кој до неодамна го одржуваше овој npm пакет, но пред околу еден месец пакетот беше префрлен на други одржувачи.

Проблемот го откри еден од новите одржувачи на пакетот, на кого му беа пренесени правата за одржување по многу несогласувања и непријатни дискусии со оригиналниот автор на чистото npm пакет. Новите одржувачи се одговорни за компајлерот PureScript и инсистираа дека пакетот NPM и неговиот инсталатер треба да се одржуваат од истите одржувачи, а не од надворешна страна. Авторот на пакетот npm со инсталаторот PureScript не се согласуваше долго време, но потоа попушти и го префрли пристапот до складиштето. Сепак, некои зависности останаа под негова контрола.

Минатата недела беше објавен компајлерот PureScript 0.13.2 и
новите одржувачи подготвија соодветно ажурирање на пакетот npm со инсталерот, во зависностите од кои беше идентификуван малициозен код. Авторот на пакетот npm со инсталаторот PureScript, кој беше отстранет од функцијата одржувач, рече дека неговата сметка била компромитирана од непознати напаѓачи. Сепак, во неговата сегашна форма, дејствата на малициозниот код беа ограничени на саботирање на инсталацијата на пакетот, што беше првата верзија од новите одржувачи. Злонамерните дејства изнесуваа јамка со порака за грешка при обидот да се инсталира пакет со командата „npm i -g purescript“ без да се изврши некоја очигледна злонамерна активност.

Откриени се два напади. Неколку часа по официјалното објавување на новата верзија на чистиот пакет npm, некој создаде нова верзија на зависноста load-from-cwd-or-npm 3.0.2, промени во кои доведоа до повикот до loadFromCwdOrNpm() наместо од листата на потребни за инсталација бинарни датотеки вратен поток PassThrough, пресликување на влезните барања како излезни вредности.

4 дена подоцна, откако програмерите го открија изворот на неуспесите и се подготвуваа да објават ажурирање за да го исклучат load-from-cwd-or-npm од зависности, напаѓачите објавија друго ажурирање, load-from-cwd-or-npm 3.0.4, во кој е отстранет малициозниот код. Сепак, речиси веднаш, беше објавено ажурирање на друга зависност, стапка-мапа 1.0.3, која додаде поправка што го блокираше повикот за повратен повик за вчитување. Оние. и во двата случаи, промените во новите верзии на load-from-cwd-or-npm и rate-map беа во природата на очигледна саботажа. Згора на тоа, малициозниот код имаше проверка што активираше неисправни дејства само при инсталирање на издание од нови одржувачи и не се појавуваше на кој било начин при инсталирање постари верзии.

Програмерите го решија проблемот со објавување ажурирање во кое беа отстранети проблематичните зависности. Со цел да се спречи компромитиран код да се насели на корисничките системи по обидот да се инсталира проблематична верзија на PureScript, се препорачува да се избрише содржината на директориумите node_modules и датотеките package-lock.json, а потоа да се постави чиста верзија 0.13.2 како долната граница.

Извор: opennet.ru

Додадете коментар