Репозиторийдеги бардык пакеттерге көз каранды болгон NPM пакетин түзүү менен эксперимент жасаңыз

JavaScript пакеттерин иштеп чыгуучулардын бири NPM репозиторийинде көз карандылыктары бар репозиторийдеги бардык болгон пакеттерди камтыган “бардыгы” пакетин түзүү жана жайгаштыруу боюнча эксперимент жүргүзгөн. Бул функцияны ишке ашыруу үчүн "бардыгы" пакетинин беш "@everything-registry/chunk-N" пакеттери менен түз көз карандылыктары бар, алар өз кезегинде 3000ден ашык "суб-чунк-N" пакеттерине көз каранды, алардын ар бири Репозиторийдеги 800 пакет.

УПМге "баарын" жайгаштыруу эки кызыктуу эффектке ээ болду. Биринчиден, "бардыгы" пакети DoS чабуулдарын аткаруу үчүн куралдын бир түрү болуп калды, анткени аны орнотуу аракети NPMде жайгаштырылган миллиондогон пакеттерди жүктөө жана жеткиликтүү диск мейкиндигин түгөтүүгө же куруу процесстеринин аткарылышын токтотууга алып келет. NPM статистикасына ылайык, топтом болжол менен 250 жолу жүктөлүп алынган, бирок аны иштеп чыгуучунун аккаунту бузукулук үчүн хакердик чабуулга кабылгандан кийин аны башка пакетке көз карандылык катары кошууга эч ким убара эмес. Мындан тышкары, NPM тарабынан жайгаштырылган жаңы пакеттерди көзөмөлдөгөн жана текшерген кээ бир кызматтар жана инструменттер байкабастан чабуулга дуушар болушкан.

Экинчиден, "баары" пакетин жарыялоо NPMдеги көз карандылыктын тизмесине кирген бардык пакеттерди алып салуу мүмкүнчүлүгүн натыйжалуу бөгөттөгөн. УПМдин пакетин автор башка пакеттердин көз карандылыктарында колдонулбаган учурда гана алып салышы мүмкүн, бирок “бардыгы” жарыялангандан кийин көз карандылыктар репозиторийдеги бардык пакеттерди камтыган. Белгилей кетчү нерсе, "баары" пакетинин өзүн алып салуу да бөгөттөлгөн, анткени 9 жыл мурун репозиторийде "баары-башка" сыноо пакети жайгаштырылган, ал көз карандылыктын тизмесине "баары" сабын кошкон. Ошентип, жарыялангандан кийин, "баары" пакети башка пакетке көз каранды болуп калды.

Source: opennet.ru

Комментарий кошуу