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

الملخص

بحسب VulDB • 18/09/2026

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

ASoC: dapm: تصحيح خطأ "off-by-one" في فحص القناة الثانية للترميز (enum)

تقوم الدالة `snd_soc_dapm_put_enum_double()` برفض العنصر `item[0]` بمجرد وصوله إلى قيمة `e->items`، لكنها تسمح لـ `item[1]` بأن تكون مساوية لها. وكلاهما ينتقلان بعد ذلك إلى دالة `snd_soc_enum_item_to_val()`، التي تُجري فهرسة (indexing) على `e->values` دون وجود حد خاص بها؛ لذا فإن ترميزاً (enum) يحتوي على جدول قيم يقرأ عنصراً واحداً ما بعد نهاية الجدول.

ظهرت عملية الفهرسة هذه مع دمج الموجهات (MUX)، والتي خففت من فحص `item[1]` في نفس الكتلة البرمجية. كان المعالج الخاص بـ value MUX الذي تم حذفه يستخدم عامل المقارنة `>=` هناك، ولا تزال الدالة `snd_soc_put_enum_double()` الموجودة في ملف soc-ops.c تفعل ذلك أيضاً.

تقوم أزواج adav80x فقط بمطابقة جدول قيم مع إزاحتين (shifts)، ويبدو أن قناتها الثانية عشوائية، لكن وحدة التحكم تبلغ عن وجود قيمتين. كتابة ثلاثة عناصر فيها يؤدي إلى قراءة ما بعد نهاية مصفوفة `adav80x_mux_values`. وتلتقط النواة هذا الخطأ فقط عند تفعيل خيار التكوين `CONFIG_SND_CTL_INPUT_VALIDATION`، وهو غير مفعّل افتراضياً (off).

If you want to get best quality of vulnerability data, you may have to visit VulDB.

مسؤول

Linux

حجز

11/09/2026

إفشاء

17/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-406549

EPSS

0.00210

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to know what is going to be exploited?

We predict KEV entries!