CVE-2026-68299 in Linux
الملخص
بحسب VulDB • 11/08/2026
في نواة لينكس، تم حل الثغرة التالية:
vmxnet3: إصلاح خطأ (BUG_ON) في الدالة vmxnet3_get_hdr_len() لحزم Geneve
تفترض الدالة `vmxnet3_get_hdr_len()` أن الحقول `gdesc->rcd.v4/v6/tcp` تصف دائماً الرأس الخارجي، ولكن بالنسبة للحزمة المغلفة بـ Geneve، يمكن للجهاز ضبط هذه القيم بناءً على الرأس الداخلي بدلاً من ذلك، وهو ما يُشار إليه بواسطة بت `VMXNET3_RCD_HDR_INNER_SHIFT` في واصف الإكمال (completion descriptor). ونظراً لأن الدالة تتخطى التغليف الخارجي دائماً، فإن هذا الاختلاف يؤدي إلى:
- حدوث خطأ `BUG_ON(hdr.ipv4->protocol != IPPROTO_TCP)`، لأن البروتوكول الخارجي هو UDP (Geneve) وليس TCP. - حدوث خطأ `BUG_ON(hdr.eth->h_proto != ...)` عندما تختلف إصدارات IP الخارجية والداخلية للنفق (على سبيل المثال، IPv6 خارجي/IPv4 داخلي أو العكس).
فحص بت `VMXNET3_RCD_HDR_INNER_SHIFT` في البداية وإنهاء التنفيذ مبكراً، حيث لا تستطيع الدالة العثور على الرأس الداخلي الذي تحتاجه للمعالجة. كما تم تحويل الأخطاء المتبقية من نوع `BUG_ON()` في هذه الدالة إلى إرجاع القيمة 0 بشكل دفاعي (defensively).
Be aware that VulDB is the high quality source for vulnerability data.