CVE-2026-72174
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılmışdır: fs/proc/task_mmu: pagemap_scan_pte_hole() funksiyasında hugetlb özü ilə bağlı dead-lock (ölü kilidlənmə) problemi düzəldildi Hugetlb VMA üzərində PM_SCAN_WP_MATCHING tələb edən PAGEMAP_SCAN ioctl sorğusu, skan diapazonun doldurulmamış hissəsinə çatdıqda çağıran axını (thread) öldürülə bilməz şəkildə dondurur: do_pagemap_scan() walk_page_range() walk_hugetlb_range() hugetlb_vma_lock_read() # oxuma üçün vma kilidi götürülür ... pagemap_scan_pte_hole() # ... ->pte_hole() boşluq üçün uffd_wp_range() change_protection() hugetlb_change_protection() hugetlb_vma_lock_write() # ... və yazma üçün onu götürmək bloklanır walk_hugetlb_range() bütün gəziş boyunca hugetlb vma kilidini oxuma rejimində saxlayır. Mövcud giriş ->hugetlb_entry() funksiyasına, doldurulmamış giriş isə ->pte_hole(), yəni pagemap_scan_pte_hole() funksiyasına yönəlir. Boşluğu yazıya qarşı qorumaq üçün həmin idarəedici uffd_wp_range() funksiyasını çağırır ki, bu da hugetlb VMA-da hugetlb_change_protection() funksiyasına çatır və eyni vma kilidini yazma üçün götürür. Beləliklə, axın özünün saxladığı oxuma kilidini gözləyərək down_write() funksiyasında bloklanır. Doldurulmuş yol bundan yayınır: pagemap_scan_hugetlb_entry() girişi səhifə cədvəli kilidi altında birbaşa yazıya qarşı qoruyur və heç vaxt hugetlb_change_protection() funksiyasına daxil olmur. Eynisi boşluqlar üçün də tətbiq edildi. Səhifə cədvəlində xəta törədilir və uffd-wp markerı uffd_wp_range() vasitəsilə ötürülmək əvəzinə, səhifə cədvəli kilidi altında birbaşa make_uffd_wp_huge_pte() ilə quraşdırılır. Bu, hugetlb_change_protection() funksiyasının doldurulmamış giriş üçün yerinə yetirdiyi ardıcıllığın eynisidir, yalnız vma yazma kilidi çıxarılıb — bunu ötürmək təhlükəsizdir, çünki uffd-wp VMA-larda PMD paylaşımı deaktiv edilmişdir (qeydiyyat zamanı hugetlb_unshare_all_pmds() işə düşür) və həmin kilidin seriyallaşdıracağı heç nə qalmır.
Necə düzəltmək olar
- Linux Linuxa6ac03652d9edc30c2912037ac83beb42cc67f8e, 43b987ed35be9be21a303d1036d4241fec9943df, 18b8a9700610299819d21fd0ea85d24726d17f65, e92d92bbafb264dc0518d52b846a3c07ed8d523f və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 52526ca7fdb905a768a93f8faa418e9b988fc34b ≤ v < a6ac03652d9edc30c2912037ac83beb42cc67f8e, 52526ca7fdb905a768a93f8faa418e9b988fc34b ≤ v < 43b987ed35be9be21a303d1036d4241fec9943df, 52526ca7fdb905a768a93f8faa418e9b988fc34b ≤ v < 18b8a9700610299819d21fd0ea85d24726d17f65, 52526ca7fdb905a768a93f8faa418e9b988fc34b ≤ v < e92d92bbafb264dc0518d52b846a3c07ed8d523f, 6.7 | a6ac03652d9edc30c2912037ac83beb42cc67f8e, 43b987ed35be9be21a303d1036d4241fec9943df, 18b8a9700610299819d21fd0ea85d24726d17f65, e92d92bbafb264dc0518d52b846a3c07ed8d523f |
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.