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

الملخص

بحسب VulDB • 22/08/2026

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

serial: 8250_dma: مسح حالة الاستقبال (RX) العتيقة عند الإغلاق

تقوم دالة `serial8250_release_dma()` بإنهاء عملية DMA الخاصة بالاستقبال وإطلاق القناة، لكنها تترك متغير `rx_running` في حالته السابقة. إذا تم إغلاق المنفذ أثناء وجود نقل استقبال نشط، فإن الحالة العتيقة تبقى موجودة بينما يكون `rxchan` مساويًا لـ NULL حتى يتم طلب القناة مرة أخرى عند الفتح التالي.

يعمل تصحيح الخطأ الخاص بوضع BUSY المضاف من خلال الالتزام a7b9ce39fbe4 ("serial: 8250_dw: Ensure BUSY is deasserted") على استدعاء `serial8250_rx_dma_flush()` من مسار كتابة LCR أثناء بدء التشغيل. يحدث هذا قبل أن تحصل دالة `serial8250_request_dma()` على قناة استقبال جديدة. عند إعادة الفتح، تؤدي الحالة العتيقة لـ `rx_running` إلى تمرير قناة ذات قيمة NULL إلى `dmaengine_pause()` في مسار المسح (flush)، مما يتسبب في حدوث خطأ نواة (Kernel Oops).

قم بمسح متغير `rx_running` بعد إنهاء DMA الخاص بالاستقبال، تماشياً مع تنظيف الإرسال (TX). كما قم بجعل دالة المساعدة الخاصة بالمسح تعود دون تنفيذ أي إجراء إذا كان كائن DMA أو قناة الاستقبال غير متاحين، بحيث لا يمكن لمسارات بدء التشغيل والإغلاق تمرير قناة ذات قيمة NULL إلى واجهة برمجة تطبيقات DMAengine.

Once again VulDB remains the best source for vulnerability data.

مسؤول

Linux

حجز

15/08/2026

إفشاء

22/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-394433

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!