Ṣe idanwo pẹlu ṣiṣẹda package NPM kan ti o dale lori gbogbo awọn idii ninu ibi ipamọ

Ọkan ninu awọn olupilẹṣẹ ti awọn idii JavaScript ṣe idanwo pẹlu ṣiṣẹda ati gbigbe sinu ibi ipamọ NPM “ohun gbogbo” package, eyiti o bo gbogbo awọn idii ti o wa tẹlẹ ninu ibi ipamọ pẹlu awọn igbẹkẹle. Lati ṣe ẹya yii, package “ohun gbogbo” ni asopọ nipasẹ awọn igbẹkẹle taara si awọn idii “@allthing-registry/chunk-N” marun, eyiti o jẹ ọna asopọ nipasẹ awọn igbẹkẹle si diẹ sii ju awọn idii 3000 “sub-chunk-N” lọ, ọkọọkan eyiti o sopọ si awọn idii 800 ti o wa ninu ibi ipamọ.

Gbigbe “ohun gbogbo” ni NPM ni awọn ipa ti o nifẹ meji. Ni akọkọ, package “ohun gbogbo” ti di iru ohun elo fun ṣiṣe awọn ikọlu DoS, niwọn igba ti igbiyanju lati fi sii o yori si gbigba awọn miliọnu awọn idii ti o gbalejo ni NPM ati imukuro aaye disk ti o wa tabi didaduro ipaniyan ti awọn ilana ṣiṣe. Gẹgẹbi awọn iṣiro NPM, package ti ṣe igbasilẹ nipa awọn akoko 250, ṣugbọn ko si ẹnikan ti o ni wahala lati ṣafikun bi igbẹkẹle si package miiran lẹhin ti gepa akọọlẹ olupilẹṣẹ lati ṣe sabotage. Ni afikun, diẹ ninu awọn iṣẹ ati awọn irinṣẹ ti o ṣe abojuto ati ṣayẹwo awọn akojọpọ tuntun ti a gbalejo nipasẹ NPM ti farahan si ikọlu lairotẹlẹ.

Ni ẹẹkeji, titẹjade package “ohun gbogbo” ni imunadoko ni idiwọ agbara lati yọkuro eyikeyi awọn idii ni NPM ti o pari ni atokọ awọn igbẹkẹle rẹ. Apo kan lati NPM le yọkuro nipasẹ onkọwe nikan ti ko ba ti lo tẹlẹ ninu awọn igbẹkẹle ti awọn idii miiran, ṣugbọn lẹhin titẹjade “ohun gbogbo”, gbogbo awọn idii ti o wa ninu ibi-ipamọ ni o bo nipasẹ awọn igbẹkẹle. O jẹ akiyesi pe yiyọkuro ti “ohun gbogbo” package funrararẹ tun ti dina, niwọn ọdun 9 sẹhin package idanwo “ohun gbogbo-miiran” ni a fiweranṣẹ ni ibi ipamọ, eyiti o pẹlu okun “ohun gbogbo” ninu atokọ ti awọn igbẹkẹle. Nitorinaa, lẹhin titẹjade, package “ohun gbogbo” pari ni igbẹkẹle lori package miiran.

orisun: opennet.ru

Fi ọrọìwòye kun