CVE-2025-37898 in Linux
الملخص
بحسب VulDB • 12/05/2026
في نواة لينكس، تم حل الثغرة التالية:
powerpc64/ftrace: إصلاح تحميل الوحدات النمطية (modules) في غياب إدخالات الوظائف القابلة للتعديل (patchable function entries)
تفترض الدالة get_stubs_size أنه يجب دائماً وجود إدخال واحد على الأقل لوظيفة قابلة للتعديل، وهو أمر غير صحيح دائماً (كما هو الحال في الوحدات التي تصدر بيانات ولكن لا تصدر شيفرة برمجية). وإلا فإنها تُرجع قيمة -ENOEXEC، وبالتالي يتم تعيين حجم رأس القسم (sh_size) إلى هذه القيمة. أثناء استدعاء module_memory_alloc()، يتم تمرير الحجم إلى execmem_alloc() بعد محاذاته إلى حدود الصفحة (page-aligned)، مما يؤدي إلى تعيينه إلى الصفر، وهو ما يتسبب في فشل عملية التخصيص (وبالتالي فشل تحميل الوحدة النمطية)، حيث يتحقق __vmalloc_node_range() من عمليات التخصيص ذات الحجم الصفري ويعيد قيمة null:
[ 115.466896] module_64: cast_common: لا يحتوي على __patchable_function_entries.
[ 115.469189] ------------[ cut here ]------------
[ 115.469496] تحذير: وحدة المعالجة المركزية: 0 PID: 274 في mm/vmalloc.c:3778 __vmalloc_node_range_noprof+0x8b4/0x8f0
... [ 115.478574] ---[ نهاية التتبع 0000000000000000 ]---
[ 115.479545] execmem: غير قادر على تخصيص الذاكرة
يتم إصلاح هذه المشكلة عن طريق إزالة التحقق من الصحة تماماً، نظراً لأنه لا فائدة من نشر هذا الخطأ كقيمة خطأ للأعلى في سلسلة الاستدعاءات.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.