CVE-2026-98368
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: esp: skb fraqmentlərini dəyişdirməzdən əvvəl zerocopy tərəfindən idarə olunan fraqmentləri downgrade edin Yerində olmayan çıxış yolunda (esp->inplace == false) ESP skb fraqment massivini yenidən yazır: esp_output_head() sonluq fraqmenti əlavə edir və esp_output_tail() fraqmentləri təyinat səhifəsi ilə əvəzləyir, hər ikisi get_page() ilə istinad edilir. skb zerocopy tərəfindən idarə olunan fraqmentlər (SKBFL_MANAGED_FRAG_REFS) daşıdıqda, faydalı yük fraqmentləri ubuf-a məxsusdur və fərdi şəkildə istinad edilməməli və ya istinadı ləğv edilməməlidir, lakin ESP skb-ni heç vaxt downgrade etmədən fraqment massivini dəyişdirir. Bu, idarə olunan fraqment invariantını iki yolla pozur: - esp_ssg_unref() mənbə scatterlist-i gəzir və hər bir fraqment üçün, o cümlədən ubuf-a məxsus faydalı yük fraqmentləri üçün səhifə istinadını ləğv edir, bu isə səhifələr hələ də sabitləndiyi halda onların refcount-unu GUP pin bias-ından aşağı salır, yəni zerocopy səhifələrinin use-after-free xətasına səbəb olur; - esp_output_tail() öz təyinat səhifəsini get_page() ilə frag 0 kimi quraşdırır, lakin SKBFL_MANAGED_FRAG_REFS bayrağını aktiv saxlayır, buna görə də skb_release_data() skip_unref budağına keçir və həmin istinadı heç vaxt ləğv etmir, nəticədə paket sürəti ilə x->xfrag səhifəsi sızır. Bu problemi digər bütün fraqment-dəyişdirici sahələrin (__ip_append_data(), __ip6_append_data(), tcp_sendmsg_locked()) etdiyi kimi düzəldin və ESP fraqment massivinə toxunmazdan əvvəl skb_zcopy_downgrade_managed() funksiyasını çağırın: bu funksiya mövcud hər bir fraqment üzərində real istinad yaradır və SKBFL_MANAGED_FRAG_REFS bayrağını sıfırlayır, beləliklə esp_ssg_unref()-dəki hər fraqment üçün unref və skb_release_data()-dakı fraqment buraxılması balanslaşdırılır və qarışıq mülkiyyətli fraqment massivi qalmır.
Necə düzəltmək olar
- Linux Linux2359264f377cdbdef2d95868cc8fb572949e48d3, 69a768c12398cada8528080332c822623fa7064d, 6508304ac2c8cdafca2f4ab915df8c707893e134, 6cab554f2c0f28773f712ed3a5479103f42ce844, 0d0845ee61c5df47cc68bc446501f48f71e8dcc6, f89416eb3db151170a6f3c6dfc5239d26cdce4d2 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 753f1ca4e1e50248a1b760c9774d6d6b354562cc ≤ v < 2359264f377cdbdef2d95868cc8fb572949e48d3, 753f1ca4e1e50248a1b760c9774d6d6b354562cc ≤ v < 69a768c12398cada8528080332c822623fa7064d, 753f1ca4e1e50248a1b760c9774d6d6b354562cc ≤ v < 6508304ac2c8cdafca2f4ab915df8c707893e134, 753f1ca4e1e50248a1b760c9774d6d6b354562cc ≤ v < 6cab554f2c0f28773f712ed3a5479103f42ce844, 753f1ca4e1e50248a1b760c9774d6d6b354562cc ≤ v < 0d0845ee61c5df47cc68bc446501f48f71e8dcc6, 753f1ca4e1e50248a1b760c9774d6d6b354562cc ≤ v < f89416eb3db151170a6f3c6dfc5239d26cdce4d2, 6.0 | 2359264f377cdbdef2d95868cc8fb572949e48d3, 69a768c12398cada8528080332c822623fa7064d, 6508304ac2c8cdafca2f4ab915df8c707893e134, 6cab554f2c0f28773f712ed3a5479103f42ce844, 0d0845ee61c5df47cc68bc446501f48f71e8dcc6, f89416eb3db151170a6f3c6dfc5239d26cdce4d2 |
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.