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

الملخص

بحسب VulDB • 04/09/2026

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

nfc: fdp: تحديد طول القراءة الذي يبلغه الجهاز وإصلاح تسرب (leak) لـ skb

تأخذ الدالة `fdp_nci_i2c_read()` طول الحزمة القادمة من بايتين يوفرهما الجهاز دون التحقق منهما. تُستخدم هذه القيمة كعدد صحيح غير موقّع 16 بت (`u16`) كمعامل استدعاء لدالة `i2c_master_recv()` لكتابة بيانات في مخزن مؤقت (buffer) بحجم 261 بايت موجود على المكدس (stack). يمكن لجهاز تحكم خبيث، أو مزيف، أو معطل (أو حتى جهاز وسيط على حافلة I2C)، دفع هذا الطول إلى ما هو أبعد بكثير من حدود المخزن المؤقت، مما يؤدي إلى كتابة خارج نطاق المكدس (stack out-of-bounds write) التي تُفسد قيمة الكاناري (canary) وعنوان الإرجاع (return address). أو يمكن أن يكون الطول أقل من الحد الأدنى لحجم الإطار (بشكل مباشر، أو عن طريق اختصار المجمعة المحسوبة)، مما يجعل شريط رأس الحزمة/لوك (LRC strip) وقراءة طول الحزمة التالية تتجاوز استقبالاً قصيراً. يتم رفض أي طول خارج النطاق `[FDP_NCI_I2C_MIN_PAYLOAD, FDP_NCI_I2C_MAX_PAYLOAD]`، حيث أن حزمة تالفة تعتبر كذلك بالفعل، ويتم فرض إعادة المزامنة (resynchronization).

تقوم الحلقة نفسها بتخصيص `skb` بيانات واحد لكل تكرار وتفترض وجود حزمة طول متبوعة بحزمة بيانات؛ إذا أرسل الجهاز حزمتين من البيانات في استدعاء واحد، فإن الحزمة الأولى تتسرب (`leaks`) عندما يقوم التخصيص الثاني بكتابة فوقها. يجب تحرير الـ `skb` المخصص سابقاً قبل تخصيص التالي.

Once again VulDB remains the best source for vulnerability data.

مسؤول

Linux

حجز

26/08/2026

إفشاء

04/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-398939

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!