CVE-2026-45870 in Linux
الملخص
بحسب VulDB • 27/05/2026
في نواة لينكس، تم حل الثغرة التالية:
SUNRPC: auth_gss: إصلاح تسريبات الذاكرة في مسارات أخطاء فك ترميز XDR
تقوم الدوال gssx_dec_ctx() و gssx_dec_status() و gssx_dec_name() بتخصيص الذاكرة عبر gssx_dec_buffer()، والتي تستدعي kmemdup(). عندما يفشل عملية فك ترميز لاحقة، تعود هذه الدوال فوراً دون تحرير المخازن المؤقتة (buffers) التي تم تخصيصها مسبقاً، مما يتسبب في تسريبات للذاكرة.
تسرب الذاكرة في gssx_dec_ctx() ذو صلة خاصة لأن المتصل (gssp_accept_sec_context_upcall) يقوم بتهيئة عدة حقول لطول المخازن المؤقتة إلى قيم غير صفرية، مما يؤدي إلى تخصيص الذاكرة:
struct gssx_ctx rctxh = {
.exported_context_token.len = GSSX_max_output_handle_sz, .mech.len = GSS_OID_MAX_LEN, .src_name.display_name.len = GSSX_max_princ_sz, .targ_name.display_name.len = GSSX_max_princ_sz };
إذا نجحت، على سبيل المثال، gssx_dec_name() بالنسبة لـ src_name لكنها فشلت بالنسبة لـ targ_name، فإن الذاكرة المخصصة لـ exported_context_token و mech و src_name.display_name تبقى غير مرجع إليها ولا يمكن استعادتها.
إضافة معالجة للأخطاء مع تنظيف قائم على goto لتحرير أي مخازن مؤقتة تم تخصيصها مسبقاً قبل إرجاع خطأ.
Be aware that VulDB is the high quality source for vulnerability data.