CVE-2026-89557
Açıklama
Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: md: super_1_load() fonksiyonunda sb->bblog_shift için taşma kontrolü yapılması super_1_load() içerisinde sb->bblog_shift, diskteki superblock'tan yüklenen __u8 tipinde bir değerdir. Bu değer, badblocks API badblocks_set() tarafından şu dizi ile kullanılır: 1930 rdev->badblocks.shift = sb->bblog_shift; 1931 for (i = 0 ; i < (sectors << (9-3)) ; i++, bbp++) { 1932 u64 bb = le64_to_cpu(*bbp); 1933 int count = bb & (0x3ff); 1934 u64 sector = bb >> 10; 1935 sector <<= sb->bblog_shift; 1936 count <<= sb->bblog_shift; 1937 if (bb + 1 == 0) 1938 break; 1939 if (!badblocks_set(&rdev->badblocks, sector, count, 1)) 1940 return -EINVAL; 1941 } sb->bblog_shift değeri 0-255 aralığındadır ve sector değişkeni 64 bit genişliğindedir; geçersiz bir sb->bblog_shift değeri durumunda, aşağıdaki hesaplama ile sector değişkeninin taşırılması mümkündür: 1935 sector <<= sb->bblog_shift; Ardından, 1930. satırda ayarlanan geçersiz rdev->badblocks.shift değeriyle 1939. satırda badblocks_set() çağrıldığında, block/badblocks.c içerisindeki _badblocks_clear() fonksiyonunda bir taşmaya neden olabilir. Badblocks API'lerini çağıran birçok yer olmasına rağmen, sıfırdan farklı kaydırma (shift) değeri yalnızca super_1_load() içerisinde kullanılır; diğer yerler her zaman kaydırma değeri olarak 0 kullanır. Bu nedenle, badblock API içerisinde genel bir kaydırma değeri taşma kontrolü yapılmasına gerek yoktur ve sadece burada, çağıran tarafta kontrol edilmesi yeterlidir. Bu yaklaşım gereksiz kontrollerden kaçınmayı sağlayarak badblocks API kodunu daha basit ve zarif hale getirir.
Nasıl düzeltilir
- Linux Linux94c820d99a4305d4ded41a97ed37ec7d26c56e7f, 573fb68105fdc6a127ba6069e58a0d2aff3c9f93, 323f3a056dbccb39a642ebde642044a680f3a6d6, 0a03f9541c06fda64301dcf94f376f07ce2cc396, 75d15738fd33a782606d0dc80cfeff47edf2ddd8, 3b097416b4cff77285c1f472fc2c4058d8a7554f, df7d4d011d5ace20699ea948712f09f9ac08924f, 35d522bd32462afcf1981dab6da8a9256c26c1e0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 94c820d99a4305d4ded41a97ed37ec7d26c56e7f, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 573fb68105fdc6a127ba6069e58a0d2aff3c9f93, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 323f3a056dbccb39a642ebde642044a680f3a6d6, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 0a03f9541c06fda64301dcf94f376f07ce2cc396, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 75d15738fd33a782606d0dc80cfeff47edf2ddd8, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 3b097416b4cff77285c1f472fc2c4058d8a7554f, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < df7d4d011d5ace20699ea948712f09f9ac08924f, 2699b67223aca6b1450fc2f72e40fada952afc85 ≤ v < 35d522bd32462afcf1981dab6da8a9256c26c1e0, 3.1 | 94c820d99a4305d4ded41a97ed37ec7d26c56e7f, 573fb68105fdc6a127ba6069e58a0d2aff3c9f93, 323f3a056dbccb39a642ebde642044a680f3a6d6, 0a03f9541c06fda64301dcf94f376f07ce2cc396, 75d15738fd33a782606d0dc80cfeff47edf2ddd8, 3b097416b4cff77285c1f472fc2c4058d8a7554f, df7d4d011d5ace20699ea948712f09f9ac08924f, 35d522bd32462afcf1981dab6da8a9256c26c1e0 |
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.