CVE-2026-45892
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: ext4: PARTIAL_VALID1 zeroout əməliyyatından sonra extent keşini təmizləyin ext4_split_extent() funksiyasında yazılmamış extent ortadan bölündükdə və EXT4_EXT_MAY_ZEROOUT və EXT4_EXT_DATA_VALID2 bayraqları təyin edilmiş halda başlanğıc vəziyyətə gətirildikdə, köhnəlmiş yazılmamış extent qala bilərdi. Tutaq ki, bizdə yazılmamış fayl var və dioread_nolock aktiv edilmədən onun ortasına buferli yazı həyata keçirilir; bu zaman bloklar yazılmış extent kimi ayrılacaqdır. 0 A B N [UUUUUUUUUUUU] diskdəki extent U: yazılmamış extent [UUUUUUUUUUUU] extent status ağacı [--DDDDDDDD--] D: etibarlı məlumat |<- ->| ----> bu diapazonun başlanğıc vəziyyətə gətirilməsi lazımdır ext4_split_extent() əvvəlcə EXT4_EXT_DATA_PARTIAL_VALID1 və EXT4_EXT_MAY_ZEROOUT bayraqlarını təyin edərək bu extenti B nöqtəsində bölməyə çalışır, lakin müvəqqəti yer çatışmazlığı səbəbindən ext4_split_extent_at() bu extenti bölə bilmir. O, B-dən N-ə qədər olan hissəni sıfırlayır (zeroout) və bütün extenti yazılmamış kimi saxlayır. 0 A B N [UUUUUUUUUUUU] diskdəki extent [UUUUUUUUUUUU] extent status ağacı [--DDDDDDDDZZ] Z: sıfırlanmış məlumat Sonra ext4_split_extent() EXT4_EXT_DATA_VALID2 bayrağını təyin edərək bu extenti A nöqtəsində bölməyə çalışır. Bu dəfə bölgü uğurlu olur və A-dan N-ə qədər yazılmış extent qalır. 0 A B N [UUWWWWWWWWWW] diskdəki extent W: yazılmış extent [UUUUUUUUUUUU] extent status ağacı [--DDDDDDDDZZ] Sonda ext4_map_create_blocks() yalnız A-dan B-yə qədər olan extenti extent status ağacına daxil edir və status ağacında köhnəlmiş yazılmamış extent saxlayır. 0 A B N [UUWWWWWWWWWW] diskdəki extent W: yazılmış extent [UUWWWWWWWWUU] extent status ağacı [--DDDDDDDDZZ] İkinci hissə sıfırlandıqdan sonra hər zaman keşlənmiş extent status girişinin təmizlənməsi ilə bu problem həll edilmişdir.
Necə düzəltmək olar
- git.kernel.org/stable/c/28db4bfc6f82fd20e2aadb7fc162244109a4eb31
- git.kernel.org/stable/c/6d882ea3b0931b43530d44149b79fcd4ffc13030
- git.kernel.org/stable/c/a1b962a821e7a52d48212ae269b45808b4411267
- git.kernel.org/stable/c/c2ee51d684adca7645e4aa74adca13f6750390bc
- git.kernel.org/stable/c/d8ee559fccdef713f058cfe5f2c03dc9b18be3b1
- git.kernel.org/stable/c/f0931a5c17005a0c4fc35bd1a001245effc3354b
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 6.1.167 | — |
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.