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

الملخص

بحسب VulDB • 22/08/2026

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

veth: تصحيح حساب طول skb بعد تعديل أجزاء XDP

تكشف veth عن أجزاءskb غير خطية من خلال xdp_buff. إذا قام برنامج XDP بتعديل منطقة الجزء (fragment area)، فإن دالة `veth_xdp_rcv_skb()` تنسخ قيمة `xdp_frags_size` مرة أخرى إلى `skb->data_len`، لكنها تترك `skb->len` يحتوي على المساهمة القديمة للأجزاء.

بعد انكماش جزء (fragment shrink)، يصبح هذا الأمر `skb_headlen()` أكبر من المنطقة الخطية الفعلية. في مسار استقبال UDP المُعاد إنتاجه، قامت دالة `__skb_datagram_iter()` بنسخ 1024 بايتًا تتجاوز الذيل الخطي الفعلي إلى مساحة المستخدم (userspace)، بدءاً من بنية `struct skb_shared_info`. شملت البايتات المنسوخة عدد الأجزاء (`nr_frags`) الخاصة بـ skb المتأثر، و`xdp_frags_size`، ومؤشر نواة من `skb_shinfo(skb)->frags[0]`. تم إزاحة بيانات الحزمة الحقيقية بنفس المقدار وقصها في النهاية.

اطرح قيمة data_len القديمة قبل استبدالها وأضف قيمة data_len الجديدة بعدها، مع الحفاظ على مزامنة `skb->len` و `skb->data_len`.

بالإضافة إلى ذلك، يمكن لـ `bpf_xdp_pull_data()` تقديم (advance) قيمة `data_end` بينما تظل الأجزاء (`frags`) موجودة. تكون الحزمة بعدئذٍ لا تزال غير خطية، لذا فإن استدعاء `__skb_put(skb, off)` القديم يُطلق خطأ `SKB_LINEAR_ASSERT()`.

استخدم بدلاً من ذلك `skb_set_tail_pointer()` وقم بتحديث `skb->len` بشكل صريح، وذلك باتباع نهج `bpf_prog_run_generic_xdp()`. على عكس `__skb_put()`، لا يتطلب `skb_set_tail_pointer()` حزمة خطية (linear skb).

تم اختصار رسالة UDP بحجم 60000 بايت في زوج veth مع MTU يبلغ 64000 بمقدار 1024 بايت من منطقة الأجزاء الخاصة بها. قبل الإصلاح، أنتجت جميع عمليات التشغيل الـ 10 حمولات (payloads) تالفة. بعد الإصلاح، تطابقت جميع عمليات التشغيل الـ 10 تماماً مع الحمولة المتوقعة. كما يمارح مُعيد الذيل القسري (forced-tailroom reproducer) دالة `bpf_xdp_pull_data()` بينما لا تزال الأجزاء (`frags`) موجودة؛ حيث يُطلق الكود القديم خطأ `SKB_LINEAR_ASSERT()`، في حين أن هذا الإصلاح يجتاز جميع عمليات التشغيل الـ 10/10 بنجاح.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

15/08/2026

إفشاء

22/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-394389

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to know what is going to be exploited?

We predict KEV entries!