CVE-2025-38434
Açıklama
Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: "riscv: Define TASK_SIZE_MAX for __access_ok()" geri alındı Bu, ad5643cf2f69 ("riscv: Define TASK_SIZE_MAX for __access_ok()") commit'ini geri alır. Bu commit, access_ok() işlevini optimize etmek için TASK_SIZE_MAX değerini LONG_MAX olarak değiştirir, çünkü önceki TASK_SIZE_MAX (varsayılan olarak TASK_SIZE) bazı hesaplamalar gerektirir. Gerekçe, tüm kullanıcı adreslerinin LONG_MAX'tan küçük ve tüm çekirdek adreslerinin LONG_MAX'tan büyük olmasıydı. Bu nedenle access_ok() çekirdek adreslerini filtreleyebilir. TASK_SIZE ile LONG_MAX arasındaki adresler geçerli kullanıcı adresleri değildir, ancak access_ok() bunların geçmesine izin verir. Bunun sorun olmadığı düşünülüyordu, çünkü bunlar donanım düzeyinde geçerli adresler değildir. Ne yazık ki bir durum gözden kaçırılmıştır: get_user_pages_fast() TASK_SIZE ile LONG_MAX arasındaki adresleri sorunsuz kabul eder. Örneğin futex() get_user_pages_fast() kullanır. Bu, Robert tarafından bildirilen soruna [1] neden olur. Bu nedenle bu commit geri alınmıştır. TASK_SIZE_MAX varsayılan değere değiştirilmiştir: TASK_SIZE. Bu ne yazık ki performansı düşürür, çünkü TASK_SIZE hesaplaması LONG_MAX'a kıyasla daha maliyetlidir. Ancak önce doğruluk gelir; gerekirse optimizasyon daha sonra düşünülebilir.
Nasıl düzeltilir
- linux linux_kernel6.12.36, 6.15.5 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.10 ≤ v < 6.12.36, 6.13 ≤ v < 6.15.5, 6.16 | 6.12.36, 6.15.5 |
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.