CVE-2025-38710
Açıklama
Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: gfs2: exhash dizinleri için i_depth doğrulaması yapın Bir fuzzer testi, dir_e_read() fonksiyonunda derinliğin 0 ile sonuçlanmasına yol açan bir bozulmaya neden olmuş ve şu satırda 32 kadar tanımsız bir kaydırmaya sebebiyet vermiştir: index = hash >> (32 - dip->i_depth); dir_make_exhash() içerisinde açık kodlu şekilde hesaplandığı üzere, bir exhash dizini için minimum derinlik ilog2(sdp->sd_hash_ptrs) değeridir ve sdp->sd_hash_ptrs değeri bağlama (mount) sırasında sdp->bsize / 16 olarak sabitlendiği için 0 geçersizdir. Bu nedenle, gfs2_dinode_in() içerisinde minimumdan düşük derinlik değerlerini kontrol ederek tanımsız davranışın önüne geçebiliriz. Maksimumdan büyük değerler zaten orada kontrol edilmektedir. Ayrıca, derinliğin nasıl hesaplandığını netleştirmek için dir_make_exhash() içerisindeki hesaplama ilog2() kullanacak şekilde değiştirilmiştir. syzkaller repro.c ve xfstests '-g quick' ile test edilmiştir.
Nasıl düzeltilir
- linux linux_kernel6.12.43, 6.15.11, 6.16.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 | v < 6.12.43, 6.13 ≤ v < 6.15.11, 6.16 ≤ v < 6.16.2 | 6.12.43, 6.15.11, 6.16.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.