CVE-2021-29428
Təsvir
Gradle-ın 7.0 versiyasından əvvəlki versiyalarında, Unix bənzəri sistemlərdə sistemin müvəqqəti kataloqu çox sayda istifadəçiyə orada faylların yaradılmasına və silinməsinə icazə verən açıq icazələrlə yaradıla bilər. Gradle build-ləri, hücum edənin sistemin müvəqqəti kataloqundakı faylları sürətlə silib yenidən yaratması vasitəsilə lokal imtiyazların yüksəldilməsi zəifliyinə məruz qala bilərdi. Bu zəiflik Kotlin DSL ilə yazılmış öncədən kompilyasiya edilmiş skript plaginlərini istifadə edən build-lərə və ProjectBuilder və ya TestKit istifadə edilərək yazılmış Gradle plagin testlərinə təsir göstərirdi. Əgər Windows və ya macOS-un müasir versiyalarını istifadə edirsinizsə, bu zəifliyə məruz deyilsiniz. Sisteminizin müvəqqəti kataloqunda "sticky" biti təyin edilibsə və Unix bənzəri əməliyyat sistemi istifadə edirsinizsə, siz də bu zəifliyə məruz deyilsiniz. Problem aradan qaldırılıb və Gradle 7.0 versiyası ilə buraxılıb. Müvəqqəti həll yolu kimi, Unix bənzəri əməliyyat sistemlərində "sticky" bitinin təyin edildiyindən əmin olun. Bu, yalnız orijinal istifadəçiyə (və ya root-a) faylı silməyə icazə verir. Sistemin müvəqqəti kataloqunun icazələrini dəyişə bilmirsinizsə, `java.io.tmpdir` System Property-ni təyin etməklə Java müvəqqəti kataloqunu köçürə bilərsiniz. Yeni yol icazələri yalnız build istifadəçisi ilə məhdudlaşdırmalıdır. Əlavə təfərrüatlar üçün istinad verilmiş GitHub Security Advisory-yə müraciət edin.
Necə düzəltmək olar
- gradle gradle7.0 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| gradle gradle | v < 7.0 | 7.0 |
| quarkus quarkus | v ≤ 2.2.3 | — |
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.