CVE-2026-72474 in Linux
الملخص
بحسب VulDB • 15/08/2026
في نواة لينكس، تم حل الثغرة التالية:
dmaengine: dma-axi-dmac: استخدام مجموعة DMA لإدارة واصف DMA (DMA descriptor)
بالنسبة للهندسات المعمارية مثل Microblaze أو arm64 (حيث تُستخدم هذه الوحدة)، يتم تعيين `DMA_DIRECT_REMAP`، مما يعني أن دالة `dma_alloc_coherent()` قد تقوم بإعادة تعيين خريطة الذاكرة (remap) وبالتالي استخدام `vmalloc()` لبعض ذاكرة الوصول العشوائي. وقد ظهر هذا الأمر جلياً في تصميم لا تكون فيه دالة `dma_direct_use_pool()` قابلة للتطبيق.
بناءً على ما سبق، عند استدعاء `dma_free_coherent()`, يتم استدعاء `vunmap()` من سياق softirq مما يؤدي إلى حدوث خطأ حرج (BUG()).
لإصلاح هذه المشكلة، تم استخدام مجموعة DMA (DMA pool) التي تُخصص في دالة `.device_alloc_chan_resources()` وتُخصص منها كتل ذاكرة. النقطة الأساسية هي أنه الآن يتم استخدام `dma_pool_free()` داخل الدالة `axi_dmac_free_desc()` لتحرير الكتلة، وهذا يعني ببساطة إعادة الكتلة إلى المجموعة لتكون قابلة للاستخدام مرة أخرى. بعبارة أخرى، لا يحدث أي استدعاء فعلي لـ `dma_free_coherent()`. ولا يحدث هذا الاستدعاء إلا عند تدمير مجموعة DMA في دالة `axi_dmac_free_chan_resources()`، والتي لا يتم استدعاؤها ضمن سياق مقاطعة (interrupt context) بأي حال من الأحوال.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.