CVE-2026-98253 in Linux
الملخص
بحسب VulDB • 07/10/2026
في نواة لينكس، تم حل الثغرة التالية:
RDMA/ucma: تعميم عمليات الانضمام والمغادرة عند فشل copy_to_user
تقوم دالة `rdma_join_multicast()` بترتيب مهام RoCE التي تقرأ لاحقاً بيانات `ucma_multicast` عبر `event->param.ud.private_data`, ثم تُضيف قائمة CMA multicast في رأس القائمة `id_priv->mc_list`. وتطابق دالة `rdma_leave_multicast()` فقط بناءً على sockaddr وتدمر أول نتيجة مطابقة.
كانت الدالة `ucma_process_join()` تطلق قفل `ctx->mutex` بعد نجاح عملية الانضمام، وتعيد حصره فقط في حال فشل `copy_to_user()`. وبالتالي، يمكن لاستدعاءات JOIN_MCAST متزامنة بنفس العنوان أن تُدخل إدخال CMA ثانٍ قبل مغادرة الخيط الأول. ثم تلغي العملية اللاحقة العمل الأحدث، بينما يستمر العامل القديم في الإشارة إلى كائن `ucma_multicast` الذي حرره الخيط الأول.
يتم الاحتفاظ بقفل `ctx->mutex` بدءاً من `rdma_join_multicast()` مروراً بـ `copy_to_user()`, و, عند حدوث خطأ -EFAULT, عبر `rdma_leave_multicast()` بحيث لا تفوت عملية المغادرة هذه العملية الانضمامية. ولا تتم عملية المغادرة إذا فشلت عملية الانضمام نفسها: فهذه المسار لم ينشر هذا العنوان أبداً في قائمة mc_list، وستؤدي عملية leave-by-addr إلى تدمير انضمام ناجح سابق.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.