CVE-2026-89767

Yüksək

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: ovl: casefold-mismatch yolunda ikiqat end_creating() çağırışının düzəldilməsi casefold ardıcıllıq yoxlaması uğursuz olduqda, ovl_create_real() yeni dentry-ni iki dəfə azad edir. S_IFDIR budağı end_creating() funksiyasını çağırır və err dəyişənini təyin edir, daha sonra isə eyni dentry üzərində yenidən end_creating() çağıran ümumi out: etiketine keçir: case S_IFDIR: newdentry = ovl_do_mkdir(ofs, dir, newdentry, attr->mode); err = PTR_ERR_OR_ZERO(newdentry); if (!err && ofs->casefold != ovl_dentry_casefolded(newdentry)) { pr_warn_ratelimited(...); end_creating(newdentry); /* birinci */ err = -EINVAL; } break; ... if (err) goto out; ... out: if (err) { end_creating(newdentry); /* ikinci, eyni dentry */ return ERR_PTR(err); } end_creating() funksiyası valideyn üzərində inode_unlock() və dentry üzərində dput() yerinə yetirən end_dirop() funksiyasıdır, buna görə də valideyn kataloqunun i_rwsem kilidi iki dəfə açılır və dentry iki dəfə azad edilir. İkinci kilidin açılması saxlanılmayan kilidi azad edir ki, bu da həmin valideyn altında sonrakı bütün yaratma əməliyyatlarını bloklayır, ikinci dput() isə heç vaxt götürülməmiş istinadı silir. Bu budaq dfc7da402ccc ("ovl: Check for casefold consistency when creating new dentries") komiti ilə sadə bir dput() kimi əlavə edilmişdi və artıq istinadı iki dəfə azad edirdi; fe497f0759e0 ("VFS: change vfs_mkdir() to unlock on failure.") komiti hər iki sahəni end_creating() funksiyasına çevirərək ikiqat kilid açma problemini yaratmışdı. Buna imtiyazsız istifadəçi tərəfindən çatmaq mümkündür. Layların casefold ardıcıllığı mount zamanı ovl_parse_layer()-də və hər bir axtarış zamanı ovl_lookup_single()-də yoxlanılır, lakin ofs->workdir istifadəçi tərəfindən təqdim edilən workdir daxilində yaradılan daxili "iş" altkataloqudur və həmin altkataloq yenidən yoxlanılmır. Buna görə də, mount-dan sonra onu casefolded olaraq işarələmək hər bir ovl_create_temp()-in yanlış vəziyyəti miras almasına səbəb olur - və bu yol ovl_start_creating_temp() vasitəsilə ovl_create_real()-ə çatır; ovl_start_creating_temp() isə generatsiya olunmuş adla start_creating() istifadə etdiyindən axtarış zamanı aparılan yoxlama heç vaxt icra olunmur. unshare -Urm mount -t tmpfs -o casefold=utf8-12.1.0 tmpfs mnt mkdir -p mnt/lower/d mnt/upper mnt/work mnt/merged mount -t overlay ovl -o lowerdir=mnt/lower,\ upperdir=mnt/upper,workdir=mnt/work mnt/merged chattr +F mnt/work/work mkdir mnt/merged/d/sub # directory copy-up overlayfs: wrong inherited casefold (work/#5) və növbəti copy-up əməliyyatı valideynin i_rwsem kilidində sonsuz müddətə bloklanır: mkdir D start_creating+0x65/0xb0 ovl_start_creating_temp+0xb0/0xe0 [overlay] ovl_create_temp+0xa3/0x1d0 [overlay] ovl_copy_up_one+0x1f1c/0x21c0 [overlay] ovl_copy_up_flags+0xf5/0x140 [overlay] ovl_create_object+0xb7/0x220 [overlay] ovl_mkdir+0x23/0x40 [overlay] Budaqdakı end_creating() çağırışı silinsin və təmizləmə prosesi, bu funksiyadakı digər bütün xəta yolları kimi, out: etiketi tərəfindən idarə edilsin.

CiddilikYüksək
CVSS7.8
İstismar ehtimalı—
MəhsulLinux
Dərc11 sen 2026
İlk görülmə11 sen 2026

Necə düzəltmək olar

Yeniləyin
  • Linux Linux2fa220bc0f84597cb6de665e5b5021c5901ddf00, b1aa8ab78a8e87aee9e306971465408e059f839a, 077ab8985ee278c3d8618182d335b0f0cd919e16 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
Linux Linuxdfc7da402ccc92d6e4b01a4778a3f15f2496b9af ≤ v < 2fa220bc0f84597cb6de665e5b5021c5901ddf00, dfc7da402ccc92d6e4b01a4778a3f15f2496b9af ≤ v < b1aa8ab78a8e87aee9e306971465408e059f839a, dfc7da402ccc92d6e4b01a4778a3f15f2496b9af ≤ v < 077ab8985ee278c3d8618182d335b0f0cd919e16, 6.182fa220bc0f84597cb6de665e5b5021c5901ddf00, b1aa8ab78a8e87aee9e306971465408e059f839a, 077ab8985ee278c3d8618182d335b0f0cd919e16

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.

Intelligence 360 paketində

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.

CVE-2026-89767 · Linux · Dark Radar