CVE-2026-98955
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: flow_dissector: thoff hesablanarkən skb->len-in u16 kəsilməsinin qarşısının alınması __skb_flow_dissect() funksiyası key_control->thoff dəyərini belə hesablayır: key_control->thoff = min_t(u16, nhoff, skb ? skb->len : hlen); min_t(u16, ...) onları müqayisə etməzdən əvvəl hər iki arqumenti u16 tipinə çevirir. skb->len (və ya hlen) modulo 65536 nhoff-dan kiçik olduqda, kəsilmiş uzunluq üstün gəlir və analiz uğurlu olsa belə, thoff yanlış kiçik bir dəyərə təyin edilir. Məsələn, skb->len == 65540 və nhoff == 34 olan IPv4/TCP freymi üçün thoff == 4 olur, buna görə də skb_probe_transport_header() kimi çağıranlar nəqliyyat başlığını Ethernet başlığının daxilində göstərir. Belə skb-lər nadir deyil: - d0c081b49137 ("flow_dissector: properly cap thoff field") komiti zamanı PACKET_VNET_HDR ilə AF_PACKET artıq 64KB-dan böyük GSO skb-ləri yarada bilirdi (GSO üçün MTU yoxlamaları ötürülür və alloc_skb_with_frags() xətti hissənin üzərinə MAX_SKB_FRAGS (17) sayda order-0 səhifələrini qəbul edirdi). - BIG TCP indi 64KB-dan böyük skb-ləri geniş yayılmış hala gətirib. - Aşağıdakı yamla tun_get_user() funksiyasının eth_type_trans() Ethernet başlığını çəkməzdən əvvəl IFF_TAP freymlərini analiz etməsi təmin edilir, beləliklə 65522..65535 baytlı L3 paketini daşıyan GSO freymi [65536, 65549] aralığında skb->len ilə analiz ediləcək. Müqayisəni u32 olaraq həyata keçirin. Əgər nəticədə alınan ofset u16 key_control->thoff-da təmsil edilə bilmirsə, onu U16_MAX ilə məhdudlaşdırın və səhv nəqliyyat ofsetini səssiz şəkildə qaytarmaq əvəzinə analizin uğursuz olduğunu bildirin. Bəzi çağıranlar (məsələn, eth_get_headlen()) geri dönüş dəyərindən asılı olmayaraq ondan istifadə etdiyi üçün uğursuzluq halında da thoff təyin edilir.
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 |
|---|---|---|
| microsoft azl3_kernel_6.6.159.1-1 | Aralıq göstərilməyib | — |
| microsoft azl3_kernel_6.6.157.1-1 | Aralı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.
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.