Jaribu kuunda kifurushi cha NPM ambacho kinategemea vifurushi vyote kwenye hazina

Mmoja wa wasanidi wa vifurushi vya JavaScript alijaribu kuunda na kuweka kwenye hazina ya NPM kifurushi cha "kila kitu", ambacho kinashughulikia vifurushi vyote vilivyopo kwenye ghala na vitegemezi. Ili kutekeleza kipengele hiki, kifurushi cha "kila kitu" kimeunganishwa kwa utegemezi wa moja kwa moja kwa vifurushi vitano vya "@everything-registry/chunk-N", ambavyo kwa upande wake vinaunganishwa na utegemezi kwa zaidi ya vifurushi 3000 vya "sub-chunk-N", kila moja. ambayo inafunga kwa vifurushi 800 vilivyopo kwenye ghala.

Kuweka "kila kitu" katika NPM kulikuwa na athari mbili za kupendeza. Kwanza, kifurushi cha "kila kitu" kimekuwa aina ya zana ya kufanya mashambulio ya DoS, kwani jaribio la kukisakinisha husababisha kupakua mamilioni ya vifurushi vilivyopangishwa katika NPM na kumaliza nafasi inayopatikana ya diski au kusimamisha utekelezaji wa michakato ya ujenzi. Kulingana na takwimu za NPM, kifurushi hicho kilipakuliwa takriban mara 250, lakini hakuna anayejisumbua kukiongeza kama tegemeo la kifurushi kingine baada ya akaunti ya msanidi kudukuliwa ili kufanya hujuma. Kwa kuongeza, baadhi ya huduma na zana ambazo hufuatilia na kuangalia vifurushi vipya vilivyopangishwa na NPM viliathiriwa bila kujua.

Pili, kuchapisha kifurushi cha "kila kitu" kilizuia kwa ufanisi uwezo wa kuondoa vifurushi vyovyote katika NPM ambavyo viliishia kwenye orodha yake ya utegemezi. Kifurushi kutoka kwa NPM kinaweza kuondolewa na mwandishi tu ikiwa haijatumiwa tayari katika utegemezi wa vifurushi vingine, lakini baada ya kuchapishwa kwa "kila kitu", vifurushi vyote kwenye ghala vilifunikwa na utegemezi. Ni vyema kutambua kwamba kuondolewa kwa mfuko wa "kila kitu" yenyewe pia ilizuiwa, tangu miaka 9 iliyopita mfuko wa mtihani "kila kitu-kingine" uliwekwa kwenye hifadhi, ambayo ilijumuisha kamba "kila kitu" katika orodha ya utegemezi. Kwa hivyo, baada ya kuchapishwa, kifurushi cha "kila kitu" kiliishia kutegemea kifurushi kingine.

Chanzo: opennet.ru

Kuongeza maoni