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

الملخص

بحسب VulDB • 15/08/2026

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

ipv6: addrconf: الخروج من دالة dad_failure عندما لم تعد الحالة POSTDAD

تقوم الدالة addrconf_dad_failure() بتغيير حالة ifp->state من DAD إلى POSTDAD عبر استدعاء addrconf_dad_end()، والتي تقوم بإفلات قفل ifp->lock عند العودة. يتم إعادة اقتناء القفل بعد استدعاء net_info_ratelimited(). يمكن لدالة ipv6_del_addr() المتزامنة أن تكتسب القفل في تلك الفترة الزمنية (window)، وتضبط حالة ifp->state إلى DEAD وتشغل list_del_rcu(&ifp->if_list).

ثم تقوم addrconf_dad_failure() بكتابة قيمة ERRDAD فوق القيمة DEAD عند النقطة errdad: وتجدول عمل dad_work جديد. تستدعي هذه العملية دالة ipv6_del_addr() مرة أخرى، مما يؤدي إلى الوصول إلى عنصر قائمة تم تسميمه بالفعل (poisoned):

general protection fault: 0000 [#1] SMP NOPTI
CPU: 4 PID: 217 Comm: kworker/4:1 Workqueue: ipv6_addrconf addrconf_dad_work RIP: 0010:ipv6_del_addr+0xe9/0x280 RAX: dead000000000122 Call Trace: addrconf_dad_stop+0x113/0x140 addrconf_dad_work+0x28c/0x430 process_one_work+0x1eb/0x3b0 worker_thread+0x4d/0x400 kthread+0x104/0x140 ret_from_fork+0x35/0x40

تم دمج منطق addrconf_dad_end() داخل addrconf_dad_failure() ضمن قسم حرج واحد للقفل ifp->lock. فرع STABLE_PRIVACY يقوم مؤقتاً بإفلات قفل ifp->lock حول عملية إعادة توليد العنوان، لذا عند النقطة lock_errdad: يتم التحقق من أن الحالة لا تزال POSTDAD قبل الانتقال إلى ERRDAD؛ وفي حال خلاف ذلك، يتم الخروج لتجنب الكتابة فوق حالة تم تعيينها بواسطة مسار آخر بينما كان القفل مفكوكاً.

Be aware that VulDB is the high quality source for vulnerability data.

مسؤول

Linux

حجز

15/08/2026

إفشاء

15/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-390349

EPSS

0.00177

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!