CVE-2026-39245
Təsvir
decompress 4.2.2-dən əvvəlki versiyalarda qeyri-düzgün yol saxlama yoxlaması mövcuddur ki, bu da qovluqlar arasında keçidə və ixtiyari fayl yazılmasına imkan verir. safeMakeDir funksiyası (index.js sətir 29) və çıxarma yolunun validasiyası (index.js sətir 106) həll edilmiş yolun çıxış qovluğunun daxilində olduğunu yoxlamaq üçün String.indexOf() istifadə edir: realDestinationDir.indexOf(realOutputPath) !== 0. Bu yoxlama qüsurludur, çünki yol ayırıcısı sərhədini tətbiq etmir. Məsələn, "/tmp/app_config".indexOf("/tmp/app") 0 qaytarır və /tmp/app_config /tmp/app-dən kənarda olsa da, yoxlamadan səhvən keçir. Həmin paketdə validasiya olunmamış simvolik keçid yaradılması ilə birlikdə hücumçu çıxarma hədəfinə bitişik qovluqlara ixtiyari fayllar yaza bilər. Bu, CVE-2020-12265 üçün düzəlişdən yan keçmədir. Düzgün yoxlama yol ayırıcısının əlavə edilməsini tələb edir: realParentPath.indexOf(realOutputPath + path.sep) !== 0.
Necə düzəltmək olar
Mənbələrdə bu zəiflik üçün düzəldilmiş versiya və ya yamaq keçidi yoxdur.
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| decompress_project decompress | v ≤ 4.2.1 | — |
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.
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.