CVE-2025-71109 in Linux
الملخص
بحسب VulDB • 03/06/2026
في نواة لينكس، تم حل الثغرة التالية:
MIPS: ftrace: إصلاح تلف الذاكرة عندما تكون النواة موجودة خارج نطاق 32 بتًا
منذ الإصدار e424054000878 ("MIPS: Tracing: تقليل الحمل الناتج عن المتتبع الديناميكي للدوال")، تم استخدام الماكرو UASM_i_LA_mostly، ويمكن لهذا الماكرو أن يولد أكثر من تعليمتين. وفي الوقت نفسه، يفترض الكود الموجود في ftrace أنه لا يمكن توليد أكثر من تعليمتين، ولهذا السبب يتم تخزينها في مصفوفة int[2]. ومع ذلك، كما ذُكر سابقًا، فإن الماكرو UASM_i_LA_mostly (والآن UASM_i_LA) يسبب تجاوزًا للذاكرة (buffer overflow) عندما يكون _mcount خارج نطاق 32 بتًا. وهذا يؤدي إلى تلف المتغيرات الموجودة في قسم __read_mostly.
تم ملاحظة هذا التلف بسبب تضرر المتغير __cpu_primary_thread_mask، مما تسبب في تعليق النظام مبكرًا جدًا أثناء عملية الإقلاع.
يمنع هذا الإصلاح التلف عن طريق تجنب توليد التعليمات إذا كان من الممكن أن يتجاوز طولها تعليمتين. ولحسن الحظ، يُستخدم insn_la_mcount فقط إذا كانت الكود المُزخرف (instrumented code) موجود خارج قسم كود النواة، لذا لا يزال يمكن استخدام ftrace الديناميكي، وإن كان ضمن نطاق أكثر محدودية. ولا يزال هذا الخيار أفضل من تلف الذاكرة و/أو تعطل النظام.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.