CVE-2026-89557
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: md: super_1_load() funksiyasında sb->bblog_shift üçün daşma yoxlamasının yerinə yetirilməsi super_1_load() funksiyasında sb->bblog_shift diskdəki superblock-dan yüklənən __u8 tipində dəyərdir. O, badblocks API badblocks_set() tərəfindən aşağıdakı ardıcıllıqla istifadə olunur: 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 0-255 diapazonundadır və sector dəyişəni 64 bit genişliyindədir. Yanlış sb->bblog_shift dəyəri olduqda, aşağıdakı hesablama vasitəsilə sector dəyişəninin daşması mümkündür: 1935 sector <<= sb->bblog_shift; Daha sonra, 1930-cu sətirdə təyin edilmiş yanlış rdev->badblocks.shift ilə 1939-cu sətirdə badblocks_set() çağırılanda, block/badblocks.c faylının _badblocks_clear() funksiyasında daşma baş verə bilər. Badblocks API-larının çağırıldığı bir çox yer olsa da, sıfırdan fərqli shift dəyəri yalnız super_1_load()-da istifadə olunur, digər yerlərdə shift dəyəri olaraq həmişə 0 istifadə edilir. Buna görə də, badblock API daxilində ümumi shift dəyəri daşma yoxlamasını aparmaq zəruri deyil və bu yoxlama yalnız çağıran tərəfdə (caller) yerinə yetirilməlidir. Bu, lazımsız yoxlamaların qarşısını almağa, badblocks API kodunu daha sadə və səliqəli etməyə imkan verir.
Necə düzəltmək olar
- Linux Linux94c820d99a4305d4ded41a97ed37ec7d26c56e7f, 573fb68105fdc6a127ba6069e58a0d2aff3c9f93, 323f3a056dbccb39a642ebde642044a680f3a6d6, 0a03f9541c06fda64301dcf94f376f07ce2cc396, 75d15738fd33a782606d0dc80cfeff47edf2ddd8, 3b097416b4cff77285c1f472fc2c4058d8a7554f, df7d4d011d5ace20699ea948712f09f9ac08924f, 35d522bd32462afcf1981dab6da8a9256c26c1e0 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| 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 |
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.