CVE-2026-31525
Açıklama
Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: bpf: yorumlayıcı sdiv/smod için INT_MIN durumundaki tanımlanmamış davranış düzeltildi BPF yorumlayıcısının imzalı 32-bit bölme ve mod alma işleyicileri, s32 operandları üzerinde kernel abs() makrosunu kullanır. abs() makro dokümantasyonu (include/linux/math.h), giriş değerinin tipin minimum değeri olduğu durumlarda sonucun tanımlanmamış olduğunu açıkça belirtir. DST, S32_MIN (0x80000000) içerdiğinde, abs((s32)DST) tanımlanmamış davranışı tetikler ve arm64/x86 mimarilerinde S32_MIN değerini değiştirilmeden döndürür. Bu değer daha sonra u64 olarak 0xFFFFFFFF80000000 şeklinde işaret genişletmesine uğrar ve bu da do_div()'in yanlış sonuç hesaplamasına neden olur. Doğrulayıcının soyut yorumlaması (scalar32_min_max_sdiv), aralık takibi için matematiksel olarak doğru sonucu hesaplar; bu durum, sınır dışı map değeri erişimi için istismar edilebilecek bir doğrulayıcı/yorumlayıcı uyumsuzluğu yaratır. Negatifleme işleminden önce u32'ye dönüştürme yaparak S32_MIN değerini doğru şekilde işleyen ve imzalı taşmayı tamamen önleyen abs_s32() tanıtılmıştır. Yorumlayıcının sdiv32/smod32 işleyicilerindeki tüm 8 abs((s32)...) çağrı noktası değiştirilmiştir. Sadece s32 durumu etkilenmiştir; s64 bölme/mod alma işleyicileri abs() kullanmaz.
Nasıl düzeltilir
- linux linux_kernel6.6.131, 6.12.80, 6.18.21, 6.19.11 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.6 ≤ v < 6.6.131, 6.7 ≤ v < 6.12.80, 6.13 ≤ v < 6.18.21, 6.19 ≤ v < 6.19.11, 7.0 | 6.6.131, 6.12.80, 6.18.21, 6.19.11 |
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.