CVE-2026-68136
Təsvir
Linux kernelində aşağıdakı zəiflik aradan qaldırılıb: net: gro: flush ilə işarələnmiş skb-lərin ikiqat aqreqasiyası düzəldildi 0ab03f353d36 commit-i ("net-gro: GSO paketi qəbul edərkən GRO flush-u düzəlt.") skb_gro_receive()-ə flush yoxlaması əlavə etdi, lakin skb_gro_receive_list()-də eyni validasiya yoxdur. Nəticədə NAPI_GRO_CB(skb)->flush ilə işarələnmiş paketlər yenidən aqreqasiya oluna bilər. Bu, mövcud frag_list-ə malik artıq GRO-dan keçmiş paketlərin yeni GRO sessiyasına yenidən aqreqasiya olunmasına imkan verir və frag_list zəncirinin strukturunu korlayır. skb_segment() bu qüsurlu paketləri açmağa cəhd etdikdə etibarsız vəziyyətlə qarşılaşır və kernel panic-i yaranır. Ssenari (Tethering/Cihaz yönləndirməsi): 1. Sürücü: frag_list ilə LRO vasitəsilə aqreqasiya olunmuş P1 paketi yaradıldı 2. Dev A: Aqreqasiya olunmuş fraglist paketini qəbul edir və flush bayrağı qoyulur 3. Dev A: Yenidən GRO-ya daxil olur, skb_gro_receive_list() çağırılır 4. Çatışmayan flush yoxlaması flush bayrağına baxmayaraq yenidən aqreqasiyaya imkan verir 5. Frag_list zənciri korlanır (dövrələr və ya asılı qalmış istinadlar) 6. Dev B: TX yolu skb_segment()-i çağırır, korlanmış frag_list üzərində crash baş verir Kök səbəb skb_segment()-dədir: ~4891-ci sətirdəki yoxlama: if (hsize <= 0 && i >= nfrags && skb_headlen(list_skb) && (skb_headlen(list_skb) == len || sg)) { Frag_list ikiqat aqreqasiya ilə korlandıqda, list_skb skb->next-dən NULL göstərici olduqda, skb_headlen(list_skb) NULL/korlanmış göstəricilərin dereferensiyasına səbəb olur. Çağırış izi: skb_headlen(NULL skb) skb_segment tcp_gso_segment tcp4_gso_segment inet_gso_segment skb_mac_gso_segment __skb_gso_segment skb_gso_segment validate_xmit_skb validate_xmit_skb_list sch_direct_xmit qdisc_restart __qdisc_run qdisc_run net_tx_action Düzəliş: skb_gro_receive_list()-də erkən qayıtma yoxlamasına NAPI_GRO_CB(skb)->flush validasiyası əlavə edilir ki, bu da skb_gro_receive()-in müdafiə xarakterli proqramlaşdırma modelinə uyğundur.
Necə düzəltmək olar
- Linux Linux7fc7e35212cf58c134310fb47566a844297ceae9, d1fb23f8f794ac4683127bd49a6422bd87e0ac02, db3e82da616f52e2b27e25e7be3fde2f2a5e54d6, 107e1a469f53a2a70874f3f12bf6fcd23925da1d, a4dfd46cc8f08a29c6183794790547d0945f3d45, fc0c0f7a207f0cd2d2aa725696c907f7d03af9e0, e751256486d0ded20f5a9f9863467f1dce65142f və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < 7fc7e35212cf58c134310fb47566a844297ceae9, 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < d1fb23f8f794ac4683127bd49a6422bd87e0ac02, 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < db3e82da616f52e2b27e25e7be3fde2f2a5e54d6, 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < 107e1a469f53a2a70874f3f12bf6fcd23925da1d, 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < a4dfd46cc8f08a29c6183794790547d0945f3d45, 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < fc0c0f7a207f0cd2d2aa725696c907f7d03af9e0, 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 ≤ v < e751256486d0ded20f5a9f9863467f1dce65142f, 5.6 | 7fc7e35212cf58c134310fb47566a844297ceae9, d1fb23f8f794ac4683127bd49a6422bd87e0ac02, db3e82da616f52e2b27e25e7be3fde2f2a5e54d6, 107e1a469f53a2a70874f3f12bf6fcd23925da1d, a4dfd46cc8f08a29c6183794790547d0945f3d45, fc0c0f7a207f0cd2d2aa725696c907f7d03af9e0, e751256486d0ded20f5a9f9863467f1dce65142f |
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.