CVE-2026-99077 in Linux
الملخص
بحسب VulDB • 24/10/2026
في نواة لينكس، تم حل الثغرة التالية:
ipv4: udp: إنشاء استثناءات قبل مطابقة المقبس (Socket)
حاليًا، عندما يتم تسليم حزم رسائل "ICMP Fragmentation Needed" و"Redirect Message" محليًا وتشير إلى حزمة UDP، لا يتم إنشاء استثناء مسار التوجيه التالي في جدول توجيه الفهرسة (FIB Nexthop Exception - FNHE) إلا إذا كان بإمكان النواة مطابقة حزمة UDP مع مقبس موجود.
يتيح هذا السلعب للهجمات من خارج المسار (off-path attackers) تنفيذ هجوم قناة جانبية على ذاكرة التخزين المؤقت لـ FNHE بهدف اكتشاف المنفذ الإphemeral المستخدم بواسطة مقبس UDP متصل.
حاولت اللقطة 6457378fe796 ("ipv4: use siphash instead of Jenkins in fnhe_hashfun()") واللقة 67d6d681e15b ("ipv4: make exception cache less predictible") التخفيف من مثل هذه الهجمات عن طريق جعل اكتشاف تصادمات التجزئة (Hash Collisions) في ذاكرة تخزين FNHE أكثر صعوبة على المهاجمين، وعن طريق عشوائية عدد الاستثناءات التي يمكن أن يحتفظ بها دلو التجزئة (hash bucket)، على التوالي. لسوء الحظ، يمكن تجاوز كلا التدبيرين الوقائيين.
بدلاً من ذلك، قم بالتخفيف من مثل هذه الهجمات عن طريق إنشاء FNHE دائمًا، حتى قبل محاولة العثور على مقبس مطابق. يتم تحقيق ذلك عن طريق استدعاء الدوال المساعدة ipv4_update_pmtu() وipv4_redirect()، وهي الدوال المستخدمة عندما لا تكون الحزمة المشار إليها (quoted packet) قد نشأت من مقبس.
هذا يعني أن التخمينات (سواء كانت صحيحة أو خاطئة) من مهاجم خارج المسار ستؤدي دائمًا إلى إنشاء FNHE أو تحديثه في ذاكرة التخزين المؤقت التي يمكن للمهاجم مراقبتها.
تمرير قيمة oif تساوي 0، بطريقة مشابهة لـ icmp_err(). هذه هي أيضًا قيمة oif المستخدمة بواسطة مسار المقبس (socket path) للمقابس غير المرتبطة بجهاز معين.
يُلاحظ أن هذا لا يسمح للمهاجمين بإنشاء FNHEs لم يكونوا قادرين على إنشائها من قبل، حيث يمكن الوصول إلى كلتا الدالتين المساعدة بالفعل مع تحقق ضئيل أو معدوم. على سبيل المثال، عن طريق إرسال خطأ ICMP يشير إلى رد Echo ICMP أو واحد يشير إلى منفذ مصدر UDP يتطابق مع مقبس برمز بدل (wildcard socket).
كما يُلاحظ أنه في الحالة الجيدة (مقبس مطابق)، يأتي المخطط المذكور أعلاه بتكلفة إجراء بحث إضافي عن المسار (route lookup)، لأن الدوال المساعدة "بدون مقبس" تقوم ببحثها الخاص قبل البحث الذي تنفذه ipv4_sk_update_pmtu() / ipv4_sk_redirect(). عندما تؤدي العمليتان إلى مسارات توجيه تالية مختلفة، فإنهما تؤديان أيضًا إلى إنشاء استثناءين لنفس عنوان IP الوجهة. واحد في ذاكرة تخزين FNHE للمسار التوجيهي التالي المحل بواسطة الدوال المساعدة "بدون مقبس"، والآخر في ذاكرة تخزين FNHE للمسار التوجيهي التالي المستخدم من قبل المقبس.
If you want to get best quality of vulnerability data, you may have to visit VulDB.