Şəxsi depolarda paketlərin mövcudluğunu müəyyən etməyə imkan verən NPM-ə hücum

NPM-də qapalı depolarda paketlərin mövcudluğunu aşkarlamağa imkan verən qüsur müəyyən edilib. Problem, depoya çıxışı olmayan üçüncü tərəfdən mövcud və mövcud olmayan paketi tələb edərkən fərqli cavab müddətləri ilə əlaqədardır. Şəxsi depolarda hər hansı paketə giriş yoxdursa, registry.npmjs.org serveri “404” kodu ilə xəta qaytarır, lakin tələb olunan ada malik paket mövcuddursa, xəta nəzərəçarpacaq gecikmə ilə verilir. Təcavüzkar lüğətlərdən istifadə edərək paket adlarını axtararaq paketin mövcudluğunu müəyyən etmək üçün bu funksiyadan istifadə edə bilər.

Şəxsi depolarda paket adlarının müəyyən edilməsi, ictimai və daxili depolardakı asılılıq adlarının kəsişməsini manipulyasiya edən asılılıq qarışdırma hücumunu həyata keçirmək üçün lazım ola bilər. Korporativ repozitoriyalarda hansı daxili NPM paketlərinin mövcud olduğunu bilən təcavüzkar eyni adlar və daha yeni versiya nömrələri olan paketləri ictimai NPM anbarında yerləşdirə bilər. Əgər montaj zamanı daxili kitabxanalar parametrlərdə onların repozitoriyası ilə açıq şəkildə əlaqələndirilmirsə, npm paket meneceri ictimai deponu daha yüksək prioritet hesab edəcək və təcavüzkar tərəfindən hazırlanmış paketi endirəcək.

GitHub problemlə bağlı mart ayında məlumatlandırıldı, lakin memarlıq məhdudiyyətlərini əsas gətirərək hücuma qarşı qorunma əlavə etməkdən imtina etdi. Şəxsi repozitoriyalardan istifadə edən şirkətlərə tövsiyyə olunur ki, vaxtaşırı ictimai repozitoriyada üst-üstə düşən adların olub-olmadığını yoxlasınlar və ya onların adından şəxsi depolardakı paketlərin adlarını təkrarlayan adlarla qaralamalar yaratsınlar ki, təcavüzkarlar öz paketlərini üst-üstə düşən adlarla yerləşdirə bilməsinlər.

Mənbə: opennet.ru

Добавить комментарий