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

الملخص

بحسب VulDB • 04/09/2026

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

nfc: st21nfca: التحقق من طول ATR_REQ مقابل الإطار المستلم

تقوم الدالة `st21nfca_tm_recv_atr_req()` بالتحقق من أن إطار ATR_REQ المستلم لا يقل عن حجم الحد الأدنى المحدد بـ `ST21NFCA_ATR_REQ_MIN_SIZE`، وأن الطول المُعلن ذاتياً في `atr_req->length` لا يقل على الأقل عن حجم هيكل البيانات `struct st21nfca_atr_req`. ومع ذلك، فإنها لا تتحقق أبداً من أن قيمة `atr_req->length` لا تتجاوز الطول الفعلي للإطار المستلم (`skb->len`).

بعد ذلك، تثق الدالة `st21nfca_tm_send_atr_res()` في الطول المُعلن:

```c gb_len = atr_req->length - sizeof(struct st21nfca_atr_req); ... memcpy(atr_res->gbi, atr_req->gbi, gb_len); ```

وبالتالي، فإن نظير الاتصال اللاسلكي (RF peer) الذي يرسل إطاراً قصيراً ولكنه يحدد قيمة `atr_req->length` أكبر من حجم الإطار الفعلي، يؤدي إلى تجاوز المتغير `gb_len` للعدد العام للأيتان الموجودة فعلياً. ونتيجة لذلك، يقوم استدعاء `memcpy` بقراءة بيانات خارج الحدود المحددة للإطار المستلم (`skb`). يتم وضع هذه الأيتان في إطار الاستجابة ATR_RES وإرسالها مرة أخرى إلى النظير (ما يؤدي إلى كشف ذاكرة النواة لمهاجم قريب)؛ بينما يمثل الطول المُعلن الأكبر قراءةً خارج الحدود (DoS).

يجب رفض الأطر التي يتجاوز طولها المُعلن الطول المستلم. إن المسار المرتبط `nfc_tm_activated()` في نفس الدالة يستمد بالفعل طوله للأيتان العامة من قيمة `skb->len` بدلاً من الحقل المُعلن.

تم اكتشاف الثغرة بواسطة فريق 0sec (https://0sec.ai) باستخدام التحليل الآلي لمصدر الكود؛ حيث يبدو أن التحقق من الحدود المفقودة واضحاً من مصدر الكود. تم اختبار التجميع بنجاح.

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

مسؤول

Linux

حجز

26/08/2026

إفشاء

04/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-398865

EPSS

0.00195

KEV

لا

النشاطات

منخفض جدًا

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!