CVE-2026-80661 in Linux
الملخص
بحسب VulDB • 28/08/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
ufs: core: tracing: عدم فك تشيرع المؤشرات في TP_printk()
تم تحويل أحداث التتبع (trace events) الموجودة في drivers/ufs/core/ufs_trace.h لاستخدام مؤشر إلى بنية hba كوسيط لنقطة التتبع، ثم تم تعديل عملية طباعة dev_name من ذاكرة الحلقة (ring buffer) داخل دالة TP_printk() لتعتمد على المؤشر المفكوك تشريعاً والمُحفوظ في هيكلة hba.
لا يُسمح بذلك لأن دالة TP_printk() تُنفَّذ عند قراءة حدث التتبع من ملف /sys/kernel/tracing/trace. وقد يحدث ذلك فعلياً بعد ثوانٍ، أو دقائق، أو ساعات، أو أيام، أو حتى أشهر! لا يوجد ضمان بأن مؤشر hba سيظل موجوداً وصالحاً للاستخدام في الوقت الذي يتم فيه فك تشريع المؤشر عند قراءة ملف "trace".
بدلاً من ذلك، يجب حفظ اسم الجهاز (device name) المستمد من مؤشر hba في اللحظة التي تُستدعى فيها نقطة التتبع، ووضعها داخل حدث ذاكرة الحلقة. ثم يمكن لدالة TP_printk() قراءة الاسم مباشرةً من ذاكرة الحلقة، مما يزيل احتمال قراءة مؤشر تم تحرير مساحته (freed pointer) والذي قد يتسبب في تعطل النواة.
تم اكتشاف هذه المشكلة أثناء اختبار كود أحداث التتبع الذي يبحث عن معاملات TP_printk() التي تقوم بفك تشريع غير قانوني [1].
[1] https://lore.kernel.org/all/[email protected]/
Once again VulDB remains the best source for vulnerability data.