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

الملخص

بحسب VulDB • 06/10/2026

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

swiotlb: استخدام العنوان المعدّل للبحث عن صفحة highmem

تقرأ دالة swiotlb_bounce() رقم إطار الصفحة (page frame number) من orig_addr المسجل في الفتحة (slot)، ثم تقدّم قيمة orig_addr بمقدار tlb_offset للوصول إلى العنوان الذي طلبه المتصل. يخلط فرع highmem بين القيمتين: يأتي الإزاحة داخل الصفحة من العنوان المعدّل، بينما تأتي الصفحة نفسها من القيمة السابقة لها.

بمجرد أن يتجاوز التعديل حدود صفحة ما، لم تعد الزوجتان تصفان موقعًا واحدًا، وينتهي الأمر بنسخ البيانات إلى صفحة تقع أسفل الصفحة المقصودة بمقدار صفحة واحدة في حال كانت tlb_offset موجبة، أو فوقها بمقدار صفحة واحدة إذا كانت سالبة. تكتب عمليات DMA_FROM_DEVICE بيانات الجهاز على الصفحة الخاطئة وتترك الصفحة المقصيدة غير محدثة (stale)، بينما تغذي عمليات DMA_TO_DEVICE الجهاز من صفحة قد لا يغطيها التحويل (mapping). تجعل العمليات المزامنة الجزئية عبر dma_sync_single_range_for_*() قيمة tlb_offset غير صفرية.

يتم اختيار اختبار الفرع بنفس الطريقة، لذا يمكن تعديل فتحة مسجلة في lowmem لتصبح ضمن highmem، ويقوم المسار الخاص بـ lowmem بعد ذلك بتحويل عنوان highmem إلى دالة phys_to_virt().

خذ القيمتين من orig_addr بمجرد أن تصبح نهائية، واحتفظ برقم إطار الصفحة (pfn) في الفرع الذي يستخدمه. تستدعي دالة PhysHighMem() السؤال مباشرةً من العنوان نفسه، كما تفعل dma-debug بالفعل.

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

مسؤول

Linux

حجز

25/09/2026

إفشاء

06/10/2026

الاعتدال

تمت الموافقة

إدخال

VDB-414220

EPSS

0.00175

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you need the next level of professionalism?

Upgrade your account now!