CVE-2026-89757

Aşağı

Təsvir

Linux nüvəsində aşağıdakı zəiflik aradan qaldırılmışdır: mm/mglru: artıq olan və çıxarıla bilməyən (unevictable) folio idarəetməsinin düzəldilməsi və silinməsi sort_folio() funksiyasının artıq çıxarıla bilməyən, lakin hələ də generasiya siyahısında yer alan foliolarnı köçürmək üçün qısayolu mövcuddur. Lakin bu qısayol xətalıdır. O, PG_lru istifadə konvensiyasına əməl etmir və daha ciddi bir problemə malikdir. Çıxarıla bilməyən foliolar lists[LRU_UNEVICTABLE] siyahılarında birləşdirilmir ki, folio->lru sahəsi folio->mlock_count dəyərini saxlamaq üçün yenidən istifadə edilə bilsin (lruvec_init() funksiyasındakı şərhə baxın). Buna görə də lruvec_add_folio() onlar üçün list_add() əməliyyatını ötürür və folionu çıxarıla bilməyən edən digər bütün yerlərdə mlock_count açıq şəkildə başladılır: lru_add() onu 0-a təyin edir, __mlock_folio() və __mlock_new_folio() isə !!folio_test_mlocked(folio) olaraq təyin edir. sort_folio() heç nəyi təyin etmir və onun dərhal üzərindəki lru_gen_del_folio() funksiyası list_del() vasitəsilə folio->lru sahəsini artıq korlamış ola bilər, buna görə də mlock_count LIST_POISON2 ilə eyniləşir ki, bu da 0x122, yəni 290 kimi oxunur. Nəticə istifadəçi tərəfindən görünəndir. munlock zamanı __munlock_folio() həmin yanlış sayğacı azaldır, onun hələ də sıfırdan fərqli olduğunu görür və PG_mlocked sahəsini təmizləməzdən əvvəl prosesi dayandırır, beləliklə folio çıxarıla bilməyən olaraq qalır və folio azad edilənə qədər Mlocked uçotu şişmiş vəziyyətdə qalır. Qısayol həmçinin LRU bayraqlarına yanlış ardıcıllıqla toxunur. O, PG_lru hələ də təyin edilmiş halda lru_gen_del_folio() funksiyasını çağırır, buna görə də eyni vaxtda baş verən folio_test_clear_lru() (məsələn, compaction, folio_isolate_lru()) artıq generasiya siyahısından çıxarılmış folio üzərində uğurlu ola bilər ki, bu da gözlənilməz davranışlara səbəb ola bilər. Buna görə də onları adi foliolar kimi izolyasiya edərək və ümumi shrink yolunun onları təmizləməsinə icazə verərək problem düzəldilir. Bu, klassik LRU davranışı ilə uyğundur və ümumi çıxarma və ya izolyasiya davranışı üzərində görünən heç bir təsiri olmamalıdır. Performansla bağlı narahatlıq da yoxdur, belə bir folio buradan yalnız bir dəfə keçir və sonra generasiya siyahılarından tamamilə çıxır.

CiddilikAşağı
CVSS3.6
İstismar ehtimalı—
MəhsulMicrosoft Azl3 Kernel
Dərc11 sen 2026
İlk görülmə11 sen 2026

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əhsulTəsirlənən versiyalarDüzəldildiyi versiya
microsoft azl3_kernel_6.6.150.1-1Aralıq göstərilməyib—
microsoft azl3_kernel_6.6.152.1-1Aralıq göstərilməyib—
microsoft azl3_kernel_6.6.157.1-1Aralıq göstərilməyib—
microsoft azl3_kernel_6.6.159.1-1Aralıq göstərilməyib—

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.