CVE-2026-52951
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: drm/xe/dma-buf: boş bo və UAF yarışlarının idarə edilməsi invalidate_mappings hook-u tetiklədikdə burada bəzi ciddi yarışlar (race conditions) mövcud görünür: 1) xe_dma_buf_init_obj()-dəki əsl tam bo init mərhələsindən əvvəl xe_bo_alloc() və ardınca attach prosesini yerinə yetiririk. Lakin attach-dən sonra bo qoşulmalar siyahısında görünür. Bu pisdir, çünki eksport edən drayver, məsələn amdgpu, istənilən vaxt boş/yanlış bo ilə bizim invalidate_mappings hook-umuzu geri çağıra bilər ki, bu da potensial xətaları/çökmələri səbəb ola bilər. 2) 1)-ci bəndə bənzərdir, lakin burada invalidate_mappings hook-u tetikləndikdə UAF yaranır. Məsələn, xe_bo_init_locked() mərhələsinə çatırıq, lakin bu hansısa şəkildə uğursuz olur. Belə olduqda, xəta zamanı bo azad edilir, lakin dma-buf baxımından o hələ də qoşulu qalır; buna görə də invalidate_mappings tetikləndikdə müraciət etdiyimiz bo artıq mövcud olmur və biz UAF və digər xətalarla/çökmələrlə qarşılaşırıq. Bunu düzəltmək üçün attach mərhələsini tam tənzimlənmiş bufer obyekti əldə etdikdən sonraya keçirin. Qeyd edin ki, bo daha sonra userspace-ə təqdim edilir, ona görə də "Valid attachment əldə etmədən bo-nu təqdim etməyin" şərhinin nəyə aid olduğu qeyri-müəyyəndir. amdgpu-dan nəsə import etdikdən sonra evict axınını tetikləyərkən evict_flags-də NULL ptr deref baş verdiyini bildirən ən azı iki fərqli müştərimiz var. Başvermə tezliyi də kifayət qədər aşağıdır, bu da bir növ yarışa işarə edir, beləliklə 1) və ya 2) kimi hallar bunu izah edə bilər. v2: - Əməliyyatların sırasını bir qədər dəyişdirildi (funksional dəyişiklik yoxdur) - Ardıcıllığı daha yaxşı izah etmək üçün şərh təkmilləşdirildi (Matt B) (af1f2ad0c59fe4e2f924c526f66e968289d77971 commit-indən cherry pick edildi)
Necə düzəltmək olar
- linux linux_kernel6.12.91, 6.18.33, 7.0.10 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 | 6.8 ≤ v < 6.12.91, 6.13 ≤ v < 6.18.33, 6.19 ≤ v < 7.0.10, 7.1 | 6.12.91, 6.18.33, 7.0.10 |
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.