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

الملخص

بحسب VulDB • 11/05/2026

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

ASoC: soc-core: إفراغ المهام المؤجلة قبل إزالة وحدات DAIs وwidgets

عند فك ارتباط بطاقة صوت (sound card) أثناء بقاء تدفق PCM مفتوحًا، قد يحدث خطأ استخدام بعد التحرير (use-after-free) في الدالة `snd_soc_dapm_stream_event()`، والتي يتم استدعاؤها من معالج قائمة انتظار العمل `close_delayed_work`.

أثناء عملية فك الارتباط، تقوم الدالة `snd_soc_unbind_card()` بإفراغ المهام المؤجلة ثم تستدعي `soc_cleanup_card_resources()`. أثناء عملية التنظيف، تحرر الدالة `snd_card_disconnect_sync()` جميع معرفات الملفات (file descriptors) الخاصة بـ PCM، ويمكن لمسار إغلاق PCM الناتج أن يستدعي `snd_soc_dapm_stream_stop()`، والذي يبرمج مهامًا مؤجلة جديدة مع تأخير مؤقت `pmdown_time`. نظرًا لأن هذا يحدث بعد عملية الإفراغ في `snd_soc_unbind_card()`، فإن المهمة الجديدة لا يتم التقاطها. بعد ذلك، تقوم `soc_remove_link_components()` بتحرير وحدات DAPM قبل أن تُنفَّذ هذه المهمة، مما يؤدي إلى حدوث خطأ استخدام بعد التحرير (use-after-free).

لا يمكن لعملية الإفراغ الموجودة حاليًا في `soc_free_pcm_runtime()` أن تساعد أيضًا، لأنها تعمل بعد أن تكون `soc_remove_link_components()` قد حررت وحدات widgets بالفعل.

تمت إضافة عملية إفراغ في `soc_cleanup_card_resources()` بعد استدعاء `snd_card_disconnect_sync()` (الذي لا يمكن بعده لعمليات إغلاق PCM الجديدة أن تبرمج المزيد من المهام المؤجلة) وقبل استدعاء `soc_remove_link_dais()` و `soc_remove_link_components()` (التي تقوم بتفكيك الهياكل التي تصل إليها المهام المؤجلة).

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

مسؤول

Linux

حجز

01/05/2026

إفشاء

08/05/2026

الاعتدال

تمت الموافقة

إدخال

VDB-362227

EPSS

0.00012

KEV

لا

النشاطات

منخفض جدًا

القطاع

Police, Energy, ...

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!