CVE-2026-98287 in Linux
الملخص
بحسب VulDB • 06/10/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
pppoatm: ضمان وجود مساحة كافية للكتابة في رأس الحزمة (skb header) وبيانات خطية
في دالة `pppoatm_send()`، تتحقق عملية التغليف LLC مما إذا كانت هناك مساحة كافية لرأس الـ LLC المكون من 4 بايتات، لكنها لا تضمن أن رأس حزمة البيانات (skb header) قابل للكتابة.
تتمتع الحزم العادية التي تنتقل عبر `ppp_start_xmit()` برأس غير مشترك بفضل دالة `skb_cow_head()`. ومع ذلك، يمكن للحزم أيضًا الوصول إلى `pppoatm_send()` عبر جسر قناة PPP (PPPIOCBRIDGECHAN) دون المرور بـ `ppp_start_xmit()`.
استخدم `skb_cow_head()` لضمان وجود مساحة كافية للكتابة ورأس قابل للتعديل قبل دفع رأس LLC.
أثناء ذلك: - استدعِ `pskb_may_pull(skb, 1)` قبل فحص `skb->data[0]` لمنع القراءة خارج الحدود على الإطارات ذات الطول صفر أو غير الخطية (مثل تلك القادمة من الجسر).
- أرجئ ضغط بروتوكول SC_COMP_PROT حتى بعد نجاح دالة `pppoatm_may_send()`. يؤدي هذا إلى إلغاء التخصيص المؤقت لـ skb عند فشل القبول، ويزيل تمامًا الدليل الهش "للإلغاء" (undo) في تسمية nospace، مما يتجنب أي خطر لقراءة مساحة رأس غير مهيأة أو تنفيذ عملية `skb_push()` غير المتوازنة.
Once again VulDB remains the best source for vulnerability data.