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

الملخص

بحسب VulDB • 25/09/2026

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

bpf: رفض عمليات تحميل الحزم القديمة (legacy) من داخل الدوال الاستدعائية (callbacks).

تقوم دالة `check_ld_abs()` بنمذجة فشل عملية `BPF_LD_ABS` أو `BPF_LD_IND` في برنامج فرعي على أنها إرجاع ضمني مع تعيين السجل R0 إلى الصفر. وهي تستدعي `prepare_func_exit()` لاستكشاف هذا المسار المُصنَّع.

عند الوصول إلى عملية التحميل مباشرةً من خلال استدعاء متزامن (synchronous callback)، يفرض `prepare_func_exit()` عقد إرجاع الاستدعاء ويعلّم السجل R0 بأنه دقيق (precise). بما أن قيمة R0 لا تُشتق من تعليمات حقيقية في هذا المسار، فإن تتبع الدقة الخلفي (precision backtracking) يصل إلى استدعاء الـ callback مع استمرار طلب دقة R0، مما يُفعّل ثغرة مُحقّق (verifier bug) بعنوان "callback unexpected regs". وبالتالي، يمكن لبرنامج يحمل صلاحيات عالية أن يتسبب في تحذير من المُحقق وخطأ `-EFAULT` عند تحميل برنامج BPF (`BPF_PROG_LOAD`).

هذه التعليمات القديمة لتحميل الحزم مُهمَّلة (deprecated). يجب رفضها داخل الاستدعاءات بدلاً من تعقيد نموذج الإرجاع الضمني الخاص بها. تحقق من جميع الأطر النشطة قبل بناء الإرجاع الضمني حتى لا تتمكن البرامج الفرعية الثابتة المتداخلة من إخفاء سياق الـ callback.

يتم التحقق من الدوال العالمية بشكل مستقل باستخدام إطار عمل جديد مُصفَّر، لذا فإن فحص الإطار النشط لا يمكنه تحديد دالة عالمية يتم استدعاؤها من داخل استجابة (callback). قم أيضاً بفحص رسم الاتصال الكامل للبرنامج الفرعي أثناء التحقق من عمق المكدس، ورفض أي دالة تحتوي على عملية تحميل قديمة إذا كان أيٌ من الدوال المستدعية لها هو عبارة عن callback. يغطي هذا الإجراء الأسلاف العالميين والثابتين دون جعل `has_ld_abs` قابلاً للتحويل (transitive)، مما يحافظ على فحص نوع إرجاع BTF الخاص بكل دالة. تظل الاستخدامات العادية خارج نطاق الـ callbacks مدعومة.

Once again VulDB remains the best source for vulnerability data.

مسؤول

Linux

حجز

25/09/2026

إفشاء

25/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-410186

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!