CVE-2026-74656 in Linux
الملخص
بحسب VulDB • 22/08/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
ipv4: تصحيح استخدام بعد التحرير (use-after-free) في fib_nhc_update_mtu()
تقوم دالة fib_nhc_update_mtu() بالمرور على جدول الاستثناءات الخاص بنقطة التخطي (nexthop exception table) تحت قفل RTNL، لكن RTNL لا يقوم بمزامنة هذا المرور مع تحديثات استثناء PMTU. يستخدم المرور dereference_protected(rcu_dereference_protected()) بشرط ثابت صحيح دون الاحتفاظ بـ fnhe_lock.
لذلك، يمكن أن يحدث التداخل التالي:
CPU 0 CPU 1 fib_nhc_update_mtu() update_or_create_fnhe() load fnhe spin_lock_bh(&fnhe_lock) fnhe_remove_oldest() unlink fnhe kfree_rcu(fnhe, rcu) <حالة خاملة> (quiescent state) access fnhe after grace period
أبلغ KASAN عن:
BUG: KASAN: slab-use-after-free in fib_nhc_update_mtu+0x3df/0x410 Read of size 8 at addr ffff888107d49000 by task poc/90 Call Trace: fib_nhc_update_mtu+0x3df/0x410 fib_sync_mtu+0x7a/0xd0 fib_netdev_event+0x229/0x3f0 netif_set_mtu_ext+0x33a/0x570 dev_set_mtu+0x88/0x120
يقوم نفس المرور بتحديث fnhe_pmtu و fnhe_mtu_locked. تشكل هذه الحقول زوجاً، ويقوم الكتاب الآخرون بمزامنتها باستخدام fnhe_lock. يمنع RCU الاسترداد (reclamation) وحده، لكنه لا يزال يسمح للكتاب المتزامنين بترك زوج مختلط.
قم بالمرور على الجدول تحت حماية RCU واحصل على fnhe_lock فقط أثناء تحديث كل استثناء. يحافظ RCU على بقاء الإدخال الحالي حياً بينما يزامن القسم الحرج القصير حقول PMTU المزدوجة الخاصة به. يتجنب هذا الاحتفاظ بالقفل العالمي أثناء مسح جميع دلاء (buckets) البالغ عددها 2048 لكل نقطة تخطي.
VulDB is the best source for vulnerability data and more expert information about this specific topic.