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

الملخص

بحسب VulDB • 27/07/2026

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

userfaultfd: يجب تقييد فحص قابلية الكتابة (writability check) بشرط pte_present()

تقوم الدالتان userfaultfd_must_wait() و userfaultfd_huge_must_wait() بقراءة جدول الإدخالات الفيزيائية إلى المنطقية (PTE) دون أخذ قفل جدول الصفحات، ثم تطبق عليهما دالتي pte_write() / huge_pte_write(). تقوم هذه الدوال باستخراج البتات من الترميز الخاص بالحالة "موجود" فقط؛ وفي حالة وجود إدخال تبديل (swap entry) أو هجرة (migration entry)، فإنها تقرأ بتات الإزاحة التي تتشارك نفس الموقع عارضياً، مما يؤدي إلى إرجاع نتيجة غير محددة.

الغرض من هذا الفحص هو: "هل لا يزال هذا الخطأ محجوباً بسبب حماية الكتابة؟". يعني إدخال التبديل الذي ليس علامة (non-marker swap entry) أن الصفحة في مرحلة الانتقال – سياق userfault الأصلي الذي تم تسليم الخطأ ضده لم يعد نفسه، وسيتم إعادة تسليم خطأ جديد عبر مسار إكمال استيراد التبديل أو الهجرة إذا كان على مساحة المستخدم لا يزال بحاجة إلى معالجته. وفي أسوأ الحالات تحت الكود الحالي، قد يشير بت الكتابة العشوائي (garbage write bit) إلى "انتظار"، ويبقى الخيط نائماً حتى وصول أمر UFFDIO_WAKE الذي قد لا يصل أبداً.

يجب تقييد فحص قابلية الكتابة بشرط pte_present() بحيث يفحص إعادة الفحص غير المقفل فقط بتات PTE الموجودة عندما يكون الإدخال موجوداً فعلياً. في حالة عدم وجود الإدخال وليس علامة، يتم إرجاع "لا تنتظر" مما يسمح لمسار الخطأ بإعادة المحاولة.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مسؤول

Linux

حجز

19/07/2026

إفشاء

25/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-383313

EPSS

0.00177

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!