CVE-2023-53989

Naməlum

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: arm64: mm: VA-diapazonunun sağlamlıq yoxlamasını düzəltmək Həm create_mapping_noalloc(), həm də update_mapping_prot() funksiyaları özlərinin 'virt' parametrini sağlamlıq baxımından yoxlayırlar, lakin bu yoxlama məntiqi cəhətdən düzgün deyil. Hazırda istifadə olunan şərt tarixi təsadüf nəticəsində yaranmış görünür. Sağlamlıq yoxlamasının şərti: if ((virt >= PAGE_END) && (virt < VMALLOC_START)) { [ ... burada xəbərdarlıq var ... ] return; } ... yalnız KASAN kölgə bölgəsi və ya modul bölgəsi üçün doğru ola bilər və xəritələrin yaradılması və yenilənməsi zamanı məhz bunların istisna edilməsi üçün heç bir səbəb yoxdur. arm64 dəstəyi ilk dəfə bu commit ilə əlavə edildikdə: c1cc1552616d0f35 ("arm64: MMU initialisation") ... şərt belə idi: if (virt < VMALLOC_START) { [ ... burada xəbərdarlıq var ... ] return; } Həmin vaxt VMALLOC_START ən aşağı nüvə ünvanı idi və bu, 'virt'-in TTBR1 vasitəsilə tərcümə olunub-olunmayacağını yoxlayırdı. Sonradan bu commit-də: 14c127c957c1c607 ("arm64: mm: Flip kernel VA space") ... şərt aşağıdakı kimi dəyişdirildi: if ((virt >= VA_START) && (virt < VMALLOC_START)) { [ ... burada xəbərdarlıq var ... ] return; } Bu, düşüncə xətası kimi görünür. Commit xətti xəritəni nüvə ünvan sahəsinin aşağı hissəsinə köçürmüşdü və VMALLOC_START orta nöqtədə yerləşirdi. Köhnə şərt bunun altındakı xətti xəritə dəyişiklikləri üçün xəbərdarlıq verərdi və həmin vaxt VA_START xətti xəritənin sonu idi. Daha sonra biz bu commit-də VA_START adlandırmasını təmizlədik: 77ad4ce69321abbe ("arm64: memory: rename VA_START to PAGE_END") ... və yanlış şərti olduğu kimi saxladıq: if ((virt >= PAGE_END) && (virt < VMALLOC_START)) { [ ... burada xəbərdarlıq var ... ] return; } Şərti hazırda PAGE_OFFSET olan TTBR1 ünvan sahəsinin başlanğıcı ilə müqayisə etmək üçün düzəldin. Bu, məntiqi sadələşdirir və xəbərdarlıqdakı "nüvə diapazonundan kənarda" mesajına daha dəqiq uyğun gəlir.

CiddilikNaməlum
CVSS—
İstismar ehtimalı—
MəhsulLinux
Dərc24 dek 2025
İlk görülmə24 dek 2025

Necə düzəltmək olar

Yeniləyin
  • Linux Linux9d8d3df71516ec3236d8d93ff029d251377ba4b1, 32020fc2a8373d3de35ae6d029d5969a42651e7a, 621619f626cbe702ddbdc54117f3868b8ebd8129, c7a9e967cc9615a1dabc5e0e6fdbe88a172d5a5b, b03c7fcc5ed854d0e1b27e9abf12428bfa751a37, ab9b4008092c86dc12497af155a0901cc1156999 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
Linux Linux14c127c957c1c6070647c171e72f06e0db275ebf ≤ v < 9d8d3df71516ec3236d8d93ff029d251377ba4b1, 14c127c957c1c6070647c171e72f06e0db275ebf ≤ v < 32020fc2a8373d3de35ae6d029d5969a42651e7a, 14c127c957c1c6070647c171e72f06e0db275ebf ≤ v < 621619f626cbe702ddbdc54117f3868b8ebd8129, 14c127c957c1c6070647c171e72f06e0db275ebf ≤ v < c7a9e967cc9615a1dabc5e0e6fdbe88a172d5a5b, 14c127c957c1c6070647c171e72f06e0db275ebf ≤ v < b03c7fcc5ed854d0e1b27e9abf12428bfa751a37, 14c127c957c1c6070647c171e72f06e0db275ebf ≤ v < ab9b4008092c86dc12497af155a0901cc1156999, 5.49d8d3df71516ec3236d8d93ff029d251377ba4b1, 32020fc2a8373d3de35ae6d029d5969a42651e7a, 621619f626cbe702ddbdc54117f3868b8ebd8129, c7a9e967cc9615a1dabc5e0e6fdbe88a172d5a5b, b03c7fcc5ed854d0e1b27e9abf12428bfa751a37, ab9b4008092c86dc12497af155a0901cc1156999

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-2023-53989 · Linux · Dark Radar