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

الملخص

بحسب VulDB • 22/08/2026

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

mm/ptdump: تثبيت الاستقرار الدائم ضد إفراغ جداول الصفحات باستخدام init_mm

لقد أثبتت الالتزامات السابقة أن ثبات (invariant) النظام ينص على أن إفراغ جداول صفحات النواة يتم أثناء وجود قراءة لقفل mmap على init_mm، مما يصحّح حالات السباق بين ptdump وإفراغ جداول صفحات النواة المتعلقة بـ init_mm.

ومع ذلك، يمكن لأنظمة x86 وarm64 إجراء عملية ptdump على mm آخر غير init_mm عبر دالة ptdump_walk_pgd()، وبما أن نطاقات ذاكرة النواة مشتركة بين الـ mms التي ليست نواة (non-kernel mm's)، فهذا يعني أن حالة السباق لا تزال موجودة في هذه الحالات.

تم إصلاح ذلك عن طريق الحصول على قفل كتابة mmap متداخل لـ init_mm داخل دالة ptdump_walk_pgd().

هذا الإجراء آمن لأننا نتخذ هذا القفل بعد تأمين الـ mm بقفل كتابة mmap، ولا يكتسب أي شيء قفل init_mm أولاً قبل تأمين أي mm عشوائي، لذا لا يمكن حدوث جمود (deadlock).

كما تم تحديث walk_page_range_debug() لتأكيد أن init_mm مقفلة للكتابة، وإضافة تعليق يوضح السبب، وإزالة بعض الكود الزائد، والقضاء على الاستدعاء غير الضروري والمربك لـ walk_kernel_page_table_range().

يمكننا إزالة فحص عدم كون القيمة NULL الخاص بـ walk.mm بأمان، حيث إن تأكيدات قفل mmap ستؤدي إلى خطأ في فك مرجع المؤشر (NULL pointer deref) إذا كانت كذلك (وبطبيعة الحال لا يقوم أي من المتصلين بذلك).

النقطة الأولى التي يمكن أن يحدث فيها سباق بين ptdump وإفراغ جداول صفحات النواة هي الالتزام b6bdb7517c3d ("mm/vmalloc: إضافة واجهات لإفراغ جداول الصفحات غير المخصصة")، لذا نستهدف هذا في علامة Fixes.

Once again VulDB remains the best source for vulnerability data.

مسؤول

Linux

حجز

15/08/2026

إفشاء

22/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-394368

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Interested in the pricing of exploits?

See the underground prices here!