CVE-2024-58060
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: bpf: modül ptr kullanan ve modül btf_id'si eksik olan struct_ops kaydı reddediliyor CONFIG_MODULES=n olduğunda bpf_struct_ops içerisinde bir UAF raporu bulunmaktadır. Özellikle rapor, "struct module *owner" üyesine sahip olan tcp_congestion_ops üzerindedir. "struct module *owner" üyesine sahip struct_ops, ya normal kernel modülü ya da bpf_struct_ops tarafından genişletilebilir. Referans sayımı yapmak için bpf_try_module_get() kullanılır ve owner işaretçisine bağlı olarak farklı referans sayımları gerçekleştirilir. CONFIG_MODULES=n olduğunda, "struct module" yapısının btf_id'si eksiktir: WARN: resolve_btfids: unresolved symbol module Bu nedenle, bpf_try_module_get() doğru referans sayımını gerçekleştiremez. Tüm alt sistemlerin struct_ops yapıları "struct module *owner" üyesini gerektirmez; örneğin yeni eklenen sched_ext_ops. Bu yama, eğer struct_ops "struct module *" üyesine sahipse ve "struct module" btf_id'si eksikse bpf_struct_ops kaydını devre dışı bırakmak içindir. Bu test için btf_type_is_fwd() yardımcı fonksiyonu btf.h başlık dosyasına taşınmıştır. Bu durum, birçok değişiklikten geçmiş olan bpf_struct_ops'un başlangıcından beri mevcuttur. Fixes etiketi, bu yamanın temiz bir şekilde uygulanabileceği yakın tarihli bir commit'e ayarlanmıştır. CONFIG_MODULES=n seçeneğinin yaygın olmadığı ve sorunun eski olduğu göz önüne alınarak, hedefleme aynı zamanda bpf-next için de yapılmıştır.
Nasıl düzeltilir
- linux linux_kernel6.12.13, 6.13.2 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| linux linux_kernel | 6.9 ≤ v < 6.12.13, 6.13 ≤ v < 6.13.2 | 6.12.13, 6.13.2 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.