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

الملخص

بحسب VulDB • 25/07/2026

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

fuse-uring: إنهاء طلب fuse في عمل مهمة إلغاء io_uring

عندما يقوم io_uring بتسليم عمل المهمة مع تعيين tw.cancel (PF_EXITING، أو السقوط إلى PF_KTHREAD، أو percpu_ref_is_dying على سياق الحلقة)، فإن دالة fuse_uring_send_in_task() تأخذ فرع الإلغاء، وتعين القيمة -ECANCELED، ثم تنتقل مباشرةً إلى استدعاء fuse_uring_send(). هذا المسار يقوم فقط بتبديل حالة العنصر إلى FRRS_USERSPACE وإكمال أمر io_uring؛ ولكنه لا يفرغ مرجع الملكية للعنصر في الحلقة الخاص بـ fuse_req الذي تم تسليمه من قبل دالة fuse_uring_add_req_to_ring_ent() عند وقت الإرسال.

fuse_uring_send_in_task() tw.cancel == true err = -ECANCELED fuse_uring_send(ent, cmd, err, issue_flags) ent->state = FRRS_USERSPACE list_move(&ent->list, &queue->ent_in_userspace) ent->cmd = NULL io_uring_cmd_done(-ECANCELED) /* لا يزال ent->fuse_req مضبوطاً، ولا يزال req موجوداً في الهاش */

يبقى طلب fuseReq مرتبطاً على fpq->processing[hash] ولن يتم استدعاء دالة fuse_request_end() أبداً. ستنحصر خيط النظام الأصلي (syscall thread) في حالة D-state داخل request_wait_answer() حتى تعمل دالة fuse_abort_conn()، وهو ما قد يستمر طوال عمر الاتصال. وفي حال طلبات FR_BACKGROUND، لن يتم إنقاص fc->num_background أيضاً، لذا فإن عمليات الإلغاء المتكررة تزيد من العداد حتى يصل إلى max_background وتتوقف جميع العمليات الخلفية اللاحقة. لا يعني tw.cancel بالضرورة إنهاء الاتصال (على سبيل المثال، قد يغادر خيط عامل io_uring واحد بينما يبقى اتصال fuse نشطاً)، لذلك لا يمكن ترك التنظيف لدالة fuse_abort_conn().

إنهاء الطلب ولكن توجيه العنصر عبر دالة fuse_uring_send() ليس كافياً: فهذا يترك عنصراً بلا طلب على ent_in_userspace، وتقوم الدالة ent_list_request_expired() بإلغاء مرجع ent->fuse_req بشكل غير مشروط عند رأس هذه القائمة، مما سيؤدي إلى إلغاء مرجع NULL.

تم إصلاح فرع الإلغاء لإفلات العنصر مباشرةً. تمت إزالته من قائمة الانتظار، وإكمال أمر io_uring وإنهاء طلب fuseReq وتحرير العنصر وخفض مراجعات قوائم الانتظار الخاصة به (إيقاظ مستعد التفكيك إذا كان الأخير).

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

19/07/2026

إفشاء

25/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-383041

EPSS

0.00198

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!