CVE-2026-97918

Orta

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: tracing: histogram trigger-inin aktivləşdirilməsi uğursuz olduqda qeydiyyatın ləğv edilməsi 6f86bdeab633 nömrəli commit ("tracing: Fix bad hist from corrupting named_triggers list"), qeydiyyata alınmış lakin file->triggers siyahısında olmayan bir trigger-in hələ də qlobal named_triggers siyahısında olduğu halda azad edilməsinin necə baş verdiyini təsvir etmiş və qeydiyyat prosesini aşağıya köçürmüşdür ki, hist_trigger_enable() funksiyası dərhal onu izləsin. Bir yol hələ də ora çatır. hist_trigger_enable() trigger-i əlavə edir və hadisə aktivləşdirilə bilmədikdə onu dərhal geri çıxarır: list_add_tail_rcu(&data->list, &file->triggers); update_cond_flag(file); if (trace_event_trigger_enable_disable(file, 1) < 0) { list_del_rcu(&data->list); update_cond_flag(file); ret--; } beləliklə, hist_unregister_trigger()-dəki siyahı gəzintisi heç nə ilə uyğunlaşmır, test NULL qalır və del_named_trigger()-i çağıracaq olan ->free() ötürülür. out_unreg hissəsi out_free-yə keçir və bu da trigger-i hər halda azad edir: BUG: KASAN: slab-use-after-free in find_named_trigger+0xac/0xc0 Read of size 8 at addr ffff8880091d3160 by task init/1 find_named_trigger+0xac/0xc0 hist_register_trigger+0xc1/0xa00 event_hist_trigger_parse+0x3146/0x6af0 event_trigger_write+0xce/0x160 Freed by task 69: kfree+0x154/0x420 trigger_kthread_fn+0xfd/0x160 Trigger-i hist_unregister_trigger()-in tapa biləcəyi yerdə saxlayın və qeydiyyatın ləğvini həmin funksiyanın yerinə yetirməsinə icazə verin; çünki cmd_ops->init()-in götürdüyü hər şeyi (adlandırılmış siyahı girişi, hist_pad istinadı, adlandırılmış histogramla paylaşılan trigger üzərindəki istinad və kopyalanmış cmd_ops) yalnız həmin kod bilir. Bu həmçinin uğursuz trace_event_trigger_enable_disable()-i cütləşdirir, əks halda onun sm_ref və buferlənmiş hadisə istinadları geridə qalardı. ->free() funksiyası trigger_data-nı və histogramını paylaşmayan trigger üçün hist_data-nı azad etdiyi üçün, out_unreg artıq out_free-yə keçə bilməz. Paylaşan trigger üçün isə hist_register_trigger() artıq çağıran tərəfin hist_data-sını məhv etmişdir, buna görə də həmin keçid orada da azad edilmiş yaddaşı oxuyurdu. Eyni səbəbdən hist_unregister_trigger()-dəki enable_timestamps yoxlamasını ->free() çağırışından yuxarıya köçürün: silinən trigger ona sahib olduqda, hist_data ondan daha çox yaşamır.

CiddilikOrta
CVSS5.5
İstismar ehtimalı—
MəhsulMicrosoft Azl3 Kernel
Dərc25 sen 2026
İlk görülmə25 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.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.

CVE-2026-97918 · Microsoft Azl3 Kernel · Dark Radar