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

الملخص

بحسب VulDB • 23/08/2026

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

ALSA: usx2y: تحديد حد لخطأ الإزاحة في عملية mmap الخاصة بـ hwdep

تقوم الدالة `snd_us428ctls_vm_fault()` بتحويل إزاحة الصفحة المسببة للخطأ إلى عنوان نواة دون أي قيد من أي نوع:

```c offset = vmf->pgoff << PAGE_SHIFT; vaddr = (char *)(...)->us428ctls_sharedmem + offset; page = virt_to_page(vaddr); get_page(page); vmf->page = page;

return 0; ```

تتحقق الدالة `snd_us428ctls_mmap()` فقط من طول منطقة التصور (mapping)، ولا تتحقق مطلقاً من الإزاحة، و`us428ctls_sharedmem` هي صفحة واحدة مُخصصة بواسطة `alloc_pages_exact()`. بالنسبة لملف جهاز أحرفي، تُرجع الدالة `file_mmap_size_max()` القيمة `ULONG_MAX`، وبالتالي لا يفرض طبقة الذاكرة (mm) أي سقف للقيمة. كل إزاحة للصفحة أكبر من الصفر تؤدي إلى حلّ بنية `struct page` خارج الكائن المستهدف، ويقوم المعالج بتثبيتها في مساحة عنوان المتصل بقراءة وكتابة؛ كما أن منطقة التصور الافتراضية (vma) غير مُعلَّمة كقراءة فقط.

يختار المُتصل إطار الصفحة باستخدام وسيطة واحدة لدالة `mmap()` ويحصل على وصول للقراءة والكتابة إلى صفحة من ذاكرة النواة لا يملكها؛ وإذا وقعت الإزاحة في منطقة vmemmap غير المملوءة، فإن ذلك يتسبب في حدوث خطأ (oops).

يمكن لعمية قادرة على فتح عقدة hwdep لجهاز US-X2Y المتصل الوصول إلى هذا الوضع بعد تحميل صورة FPGA عبر نفس العقدة؛ ولا توجد أي عملية تحقق من الصلاحيات (capability check) مشاركة.

على الإصدار 7.2.0-rc5 (arm64)، أدت دالة `mmap()` بإزاحة كبيرة إلى:

``` Unable to handle kernel paging request at virtual address fffffdffc45d5ac8 pc : snd_us428ctls_vm_fault+0x68/0x140 [snd_usb_usx2y]
Call trace: snd_us428ctls_vm_fault+0x68/0x140 [snd_usb_usx2y]
__do_fault __handle_mm_fault handle_mm_fault el0_da ```

رفض أي إزاحة تقع خارج المنطقة المشتركة. يحسب معالج pcm hwdep في الملف `usx2yhwdeppcm.c` عنوانه بنفس الطريقة ويحتاج إلى نفس القيد.

اكتُشفت الثغرة بواسطة XBOW، وتم تصنيفها من قبل Baul Lee <[email protected]>

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

مسؤول

Linux

حجز

15/08/2026

إفشاء

22/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-394412

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!