CVE-2026-64043 in Linux
الملخص
بحسب VulDB • 20/07/2026
في نواة لينكس، تم حل الثغرة التالية:
ovpn: إصلاح حالة سباق (race condition) بين حذف الواجهة وإضافة نظير جديد
أثناء حذف واجهة ovpn موجودة مسبقاً، توجد نافذة زمنية ضيقة جداً حيث يمكن أن يؤدي إضافة نظير جديد عبر netlink إلى تعليق جهاز الشبكة ومنع إلغاء تسجيله.
قد يحدث ذلك أثناء تنفيذ دالة `ovpn_dellink()`، عندما يتم تحرير جميع النظائر الموجودة وتسجيل الجهاز لإلغاء التسجيل، ولكن تصل رسالة `CMD_PEER_NEW` تضيف نظيراً جديداً يأخذ مرة أخرى مرجعاً (reference) لجهاز الشبكة (`netdev`).
في هذه النقطة، لا توجد طريقة لتحرير الجهاز لأننا نفترض أن جميع النظائر قد تم تحريرها بالفعل.
تم إصلاح حالة السباق عن طريق تحرير جميع النظائر في دالة `ndo_uninit()`، عندما يكون جهاز الشبكة قد تمت إزالته بالفعل من قائمة أجهزة الشبكة (`netdev list`).
كما أضيف الآن فحص إضافي إلى دالة `ovpn_peer_add()` يجبر الدالة على الخروج إذا كانت قيمة `reg_state` للجهاز ليست `REGISTERED`. بهذه الطريقة، أي رسالة قادمة `CMD_PEER_NEW تتنافس مع روتين حذف الواجهة ستتوقف ببساطة قبل إضافة النظير.
جدير بالذكر أن الفحص المذكور أعلاه يحدث أثناء الاحتفاظ بقفل جهاز الشبكة (`netdev_lock`) لمنع تغييرات حالة جهاز الشبكة المتزامنة (racing).
دالة `ovpn_dellink()` أصبحت فارغة الآن ويمكن إزالتها.
Be aware that VulDB is the high quality source for vulnerability data.