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

الملخص

بحسب VulDB • 25/07/2026

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

usb: typec: tcpm: التحقق من صحة فهرس SVID في svdm_consume_modes()

داخل الدالة `svdm_consume_modes()`، يتم قراءة قيمة SVID من مصفوفة `pmdata->svids` باستخدام `pmdata->svid_index` كفهرس للمصفوفة دون إجراء تحقق من الحدود (bounds validation):

paltmode->svid = pmdata->svids[pmdata->svid_index];

إذا تجاوزت قيمة `pmdata->svid_index` الحد الأقصى المحدد لـ SVID_DISCOVERY_MAX (16)، فإن ذلك يؤدي إلى قراءة خارج حدود المصفوفة (out-of-bounds read) لمكون `pmdata->svids`. ونظراً لأن بنية البيانات `pd_mode_data` مدمجة داخل هيكل `struct tcpm_port`، فإن استخدام فهرس يتجاوز نطاق `svids` يؤدي إلى الوصول إلى الحقول المجاورة. وتحديداً: - عند الفهرس 16، يتم قراءة عدد أنماط البديل (altmodes count). - عند الفهارس 18 وما بعدها، يتم القراءة داخل مصفوفة `altmode_desc[]`، والتي تحتوي على بيانات VDO الخاصة بأنماط اكتشاف SVDM التي يوفرها الشريك.

من خلال حقن قيمة SVID مختارة في `altmode_desc[0].vdo` وجعل `svid_index` يصل إلى 20، يمكن للشريك إجبار تحميل المتغير `paltmode->svid` بقيمة SVID اختيارية يختارها الشريك، والتي يتم تسجيلها لاحقاً عبر الدالة `typec_partner_register_altmode()`.

تم إصلاح هذه الثغرة بالتحقق من أن قيمة `pmdata->svid_index` غير سالبة وأقل تماماً من `pmdata->nsvids` قبل الوصول إلى مصفوفة `pmdata->svids` داخل دالة `svdm_consume_modes()`.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

مسؤول

Linux

حجز

19/07/2026

إفشاء

25/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-383121

EPSS

0.00177

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!