CVE-2026-64300 in Linuxالمعلومات

الملخص

بحسب VulDB • 25/07/2026

في نواة لينكس، تم حل الثغرة التالية:

perf/aux: إصلاح استخدام بعد التحرير (UAF) للصفحة في دالة `map_range()`

تقوم الدالة `map_range()` بقراءة المصفوفة `rb->aux_pages[]` والمتغيرات `rb->aux_nr_pages` و `rb->aux_pgoff` عبر `perf_mmap_to_page()` بينما تكون مقفلةً فقط بـ `event->mmap_mutex`. هذه الحقول يتم مزامنتها (serialized) بواسطة `rb->aux_mutex`، و `mmap_mutex` خاص بكل حدث.

وبالتالي، يمكن لحدثين يشاركان نفس الهيكل `rb` عبر `PERF_EVENT_IOC_SET_OUTPUT` أن يتنافسا على استدعاء `rb_alloc_aux()` مع `map_range()`، مما يؤدي إلى سيناريو استخدام بعد التحرير (UAF) للصفحة كالتالي:

المعالج 0 المعالج 1 ===== ===== rb_alloc_aux() map_range() [1]: تخصيص rb->aux_pages[0]
[2]: زيادة قيمة rb->aux_nr_pages++
[3]: perf_mmap_to_page()
تُرجع rb->aux_pages[0]
[4]: ربطها كـ VM_PFNMAP
[5]: تعيين rb->aux_pgoff = 1

إلغاء ارتباط الصفحة (munmap) [6]: تحرير rb->aux_pages[0]

الصفحات المرتبطة بصيغة `VM_PFNMAP` لا تتمتع بحماية عداد المراجع، لذا يحتفظ المعالج 1 برابط إلى إطار فيزيائي تم تحريره.

يتم إصلاح هذه المشكلة عن طريق أخذ قفل `rb->aux_mutex` أثناء اجتياز الصفحات بالكامل داخل دالة `map_range()`.

Once again VulDB remains the best source for vulnerability data.

مسؤول

Linux

حجز

19/07/2026

إفشاء

25/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-383100

EPSS

0.00198

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!