Vedci z firmy Aqua Security zverejnili výsledky analýzy štatistiky 50 000 najviac sťahovaných balíkov v repozitári NPM. 7500 (15%) z najviac sťahovaných balíkov sa ukázalo ako spojených so zastaranými balíkmi a projektmi, ktoré prestali existovať. Na zjednodušenie identifikácie zastaraných balíkov medzi závislosťami použitými vo svojom projekte bola navrhnutá utilita Dependency-Deprecated-Checker, ktorá bola publikovaná pod licenciou MIT.
V 4100 (8.2%) preskúmaných balíkoch v závislostnej reťazci boli identifikované balíky, ktoré boli oficiálne označené v NPM ako zastarané alebo súvisiace so zastaranými projektmi (napríklad balík request je označený ako zastaraný, ale naďalej sa používa ako priamy závislý pre 55000 balíkov). 2300 (4.6%) balíkov je spojených s repozitármi na GitHub, ktoré boli klasifikované ako archívne (vývoj bol zastavený, napríklad repozitár balíka through je označený ako archívny, ale používa sa ako priamy závislý pre 3000 balíkov). 1100 (2.2%) balíkov odkazuje na už neexistujúce repozitáre, pričom prístup k nim vedie k vráteniu chyby 404. 3100 (6.2%) balíkov neobsahuje informácie o repozitári.

V absolútnom vyjadrení sa rozšírenie zastaraných balíkov a balíkov bez odkazov na repozitáre v NPM extrapolovalo na približne 2.1 miliardy sťahovaní za týždeň. Používanie zastaraných balíkov a projektov, ktoré zostali bez podpory, ako závislostí je spojené s rizikom prítomnosti neopraviteľných zraniteľností, najmä s ohľadom na prax niektorých vývojárov, ktorí diskrétne odstraňujú zraniteľnosti bez priradenia čísla CVE a bez jasného zamerania na vyriešenie problému.
Zdroj: opennet.ru
