CVE-2026-89761
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: apparmor: etiket vec-ni null ilə sonlandırarkən sərhədlərdən kənar yazma xətası düzəldildi VEC_FLAG_TERMINATE ötürüldükdə aa_vec_unique() funksiyası vec[n - dups] mövqeyini null ilə sonlandırır. Əgər komponentlərin hamısı fərqlidirsə, heç bir dublikat silinmir, dups 0 olur və terminator vec[n]-ə yazılır, buna görə də çağıran tərəf n + 1 element üçün yer ayırmalıdır. aa_label_strn_parse() öz vektorunu vec_setup(profile, vec, len, gfp) ilə qurur və sonra aa_vec_unique(vec, len, VEC_FLAG_TERMINATE) funksiyasını çağırır, lakin vec_setup() terminator elementi üçün yer ayırmır. LOCAL_VEC_ENTRIES limitinə qədər o, LOCAL_VEC_ENTRIES göstəricilərindən ibarət lokal massivdən istifadə edir, bu limitdən yuxarı olduqda isə dəqiq len sayda göstərici ayırır. Buna görə də, len LOCAL_VEC_ENTRIES olduqda terminator lokal massivin sonundan bir element sonraya, len daha böyük olduqda isə ayrılmış sahənin sonundan bir element sonraya düşür. len dəyişəni etiket adındakı "//&" ilə ayrılmış komponentlərin sayından gəlir və label_count_strn_entries() onu məhdudlaşdırmır. İmtiyazsız tapşırıq /proc/self/attr/apparmor/current faylına yazı yazmaqla və ya lsm_set_self_attr(2) vasitəsilə analiz prosesinə çata bilir; hər iki hal do_setattr() vasitəsilə həyata keçirilir və ad, change_profile icazəsi yoxlanılmamışdan əvvəl analiz edilir. Rejimi 0666 olan securityfs .access faylının arxasındakı query_label() yolu isə heç bir icazə yoxlaması aparmır. Hər bir komponent yüklənmiş profilə yönləndirilməlidir, buna görə də siyasəti yüklənmiş sistem tələb olunur. VEC_FLAG_TERMINATE-dan istifadə edən digər iki istifadəçi, aa_label_alloc() tərəfindən artıq "vec üzərində null terminator elementi üçün + 1" ölçüsü verilmiş etiket vec ilə işləyir. Eyni elementi vec_setup() və DEFINE_VEC() daxilində rezerv edin. Çağırandan len + 1 ötürmək, len == LOCAL_VEC_ENTRIES halını lokal massivdən çıxarıb kzalloc()-a keçirərdi.
Necə düzəltmək olar
- Linux Linux0d4cb3af82556afc48f90fd3e8a126ff32343f41, 40fdee1cb4f18e6a1a21a891ae4735bcd4d35026, 57bb24025f450728f342d8e08cd3909c89361d90, b17c8f5dcb36a032688847b2bce4bd813b4baad1, 9124e078ea2250d8d01d2162a550acb01ef5bf48, 28069434aef66b9d084f0609b7a29c171846815e, 36bdd0b45ec3f4822832a56e9db8674c8450dfce, 9f1e40193eef7f047e6b77cfb4b4cafdecd7a123 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 0d4cb3af82556afc48f90fd3e8a126ff32343f41, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 40fdee1cb4f18e6a1a21a891ae4735bcd4d35026, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 57bb24025f450728f342d8e08cd3909c89361d90, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < b17c8f5dcb36a032688847b2bce4bd813b4baad1, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 9124e078ea2250d8d01d2162a550acb01ef5bf48, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 28069434aef66b9d084f0609b7a29c171846815e, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 36bdd0b45ec3f4822832a56e9db8674c8450dfce, f1bd904175e8190ce14aedee37e207ab51fe3b30 ≤ v < 9f1e40193eef7f047e6b77cfb4b4cafdecd7a123, 4.13 | 0d4cb3af82556afc48f90fd3e8a126ff32343f41, 40fdee1cb4f18e6a1a21a891ae4735bcd4d35026, 57bb24025f450728f342d8e08cd3909c89361d90, b17c8f5dcb36a032688847b2bce4bd813b4baad1, 9124e078ea2250d8d01d2162a550acb01ef5bf48, 28069434aef66b9d084f0609b7a29c171846815e, 36bdd0b45ec3f4822832a56e9db8674c8450dfce, 9f1e40193eef7f047e6b77cfb4b4cafdecd7a123 |
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.