CVE-2025-38591
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: bpf: göstəricinin ctx sahələrinə daha dar girişləri rədd edin syzkaller repro-dan sadələşdirilmiş aşağıdakı BPF proqramı nüvə xəbərdarlığına səbəb olur: r0 = *(u8 *)(r1 + 169); exit; Burada göstərici sahəsi sk, __sk_buff strukturunda 168 ofsetində yerləşir. Bu giriş, bpf_skb_is_valid_access funksiyasında offsetof(struct __sk_buff, sk) ilə uyğun gəlmədiyi üçün daha dar oxuma kimi təsbit edilir. Buna görə də buna icazə verilir və daha sonra bpf_convert_ctx_access prosesinə keçid edilir. Qeyd edək ki, convert_ctx_accesses() funksiyasındakı "is_narrower_load" halı üçün insn->off hizalanmışdır, buna görə də o, bpf_convert_ctx_access daxilindəki offsetof(struct __sk_buff, sk) ilə uyğunlaşdığı üçün cnt 0 olmaya bilər. Lakin target_size 0 olaraq qalır və verifikator nüvə xəbərdarlığı ilə xəta verir: verifier bug: error during ctx access conversion(1) Bu yamaq, yükləmə təlimatında düzgün "invalid bpf_context access off=X size=Y" xətasının qaytarılmasını təmin etməklə problemi həll edir. Eyni problem, dar girişi dəstəkləyən kontekst strukturlarındakı digər bir çox sahələrə də təsir edir. Ardıcıllığı təmin etmək üçün təsirlənməmiş bəzi digər sahələr (sk_msg, sk_lookup və sockopt üçün) bpf_ctx_range_ptr istifadə edəcək şəkildə dəyişdirildi. Qeyd edək ki, bu syzkaller çökməsi aşağıdakı "Closes" linkində bildirilmişdi; həmin link əvvəllər commit fce7bd8e385a ("bpf/verifier: Handle BPF_LOAD_ACQ instructions in insn_def_regno()") vasitəsilə həll edilmiş fərqli bir xəta haqqında idi. syzbot iki xətanı qarışdırdığı üçün yeni çökmə və repro məktub siyahısına bildirilməmişdi.
Necə düzəltmək olar
- linux linux_kernel6.16.1 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 4.13 ≤ v < 6.16.1 | 6.16.1 |
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.