CVE-2021-39134

Yüksək

Təsvir

npm komanda sətiri interfeysi üçün asılılıq ağaclarını hesablayan və `node_modules` qovluq iyerarxiyasını idarə edən `@npmcli/arborist` kitabxanası, paket asılılıq müqavilələrinin yerinə yetirilməsini və paket məzmununun həmişə gözlənilən qovluğa çıxarılmasını təmin etməyi hədəfləyir. Bu, qismən `package.json` manifestlərində müəyyən edilmiş asılılıq spesifikatorlarının konkret ada malik asılılıqlar üçün həll edilməsi və ziddiyyətli asılılıqları aradan qaldırmaq üçün qovluqların iç-içə yerləşdirilməsi ilə həyata keçirilir. Bir neçə asılılığın adları yalnız böyük-kiçik hərflərdən fərqləndiyi halda, Arborist-in daxili məlumat strukturu onları `node_modules` iyerarxiyasının eyni səviyyəsində mövcud ola bilən ayrı elementlər kimi görürdü. Lakin, böyük-kiçik hərflərə qarşı həssas olmayan fayl sistemlərində (məsələn, macOS və Windows) bu belə deyil. `file:/some/path` kimi simvolik link (symlink) asılılığı ilə birlikdə bu, hücumçuya fayl sisteminin istənilən yerinə ixtiyari məzmunun yazıla biləcəyi bir vəziyyət yaratmağa imkan verirdi. Məsələn, `pwn-a` paketi öz `package.json` faylında `"foo": "file:/some/path"` kimi asılılıq müəyyən edə bilərdi. Digər bir paket olan `pwn-b` isə `FOO: "file:foo.tgz"` kimi asılılıq müəyyən edə bilərdi. Böyük-kiçik hərflərə qarşı həssas olmayan fayl sistemlərində, əgər əvvəlcə `pwn-a`, sonra isə `pwn-b` quraşdırılarsa, `foo.tgz`-nin məzmunu `/some/path` ünvanına yazılar və `/some/path` ünvanındakı bütün mövcud məzmun silinərdi. Böyük-kiçik hərflərə qarşı həssas olmayan fayl sistemində npm v7.20.6 və ya daha köhnə versiyalardan istifadə edən hər kəs potensial olaraq risk altındadır. Bu problem, npm v7.20.7 və daha yuxarı versiyalara daxil edilmiş `@npmcli/arborist` 2.8.2 versiyasında düzəldilmişdir.

CiddilikYüksək
CVSS8.2
İstismar ehtimalı—
MəhsulNpmjs Arborist
Dərc31 avq 2021
İlk görülmə31 avq 2021
Zəiflik növüCWE-61CWE-61

Necə düzəltmək olar

Yeniləyin
  • npmjs arborist2.8.2 və ya daha yeni versiya
  • siemens sinec_infrastructure_network_services1.0.1.1 və ya daha yeni versiya
  • @npmcli/arborist2.8.2 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
npmjs arboristv < 2.8.22.8.2
oracle graalvm20.3.3, 21.2.0—
siemens sinec_infrastructure_network_servicesv < 1.0.1.11.0.1.1
@npmcli/arboristnpmv < 2.8.22.8.2

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.

CVE-2021-39134 · Npmjs Arborist · Dark Radar