CVE-2023-54232 in Linuxالمعلومات

الملخص

بحسب VulDB • 22/06/2026

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

m68k: فرض خطأ الناقل (bus error) الخاص بـ 030 فقط إذا لم يكن عداد البرنامج (PC) موجودًا في جدول الاستثناءات

تنفذ الدالة `__get_kernel_nofault()` نسخ البيانات في وضع المشرف (supervisor mode) عند إجبار تسجيل تتبع المهمة (task backtrace log) عبر `/proc/sysrq_trigger`. من المتوقع أن يؤدي هذا إلى حدوث استثناء خطأ الناقل، على سبيل المثال عند فك مرجع مؤشر NULL أثناء تسجيل مهمة نواة لا تحتوي على طابور مهام مرتبط بها. ينبغي تجاهل هذا الخطأ في الناقل.

معالج أخطاء الناقل 030 لدينا غير مجهز بشكل كافٍ للتعامل مع هذه الحالة:

في كل مرة يشير فيها سجل حالة النظام (SSW) إلى وصول من وضع النواة عند حدوث خطأ بيانات، لا نحاول حتى معالجة الخطأ بل نرسل دائمًا إشارة SEGV (أو تسبب توقفًا مفاجئًا للنظام - panic). ونتيجة لذلك، فإن التحقق من معالجة الاستثناءات في عنوان عداد البرنامج الذي حدث عنده الخطأ (المخفي داخل دالة `send_sig_fault()` التي يتم استدعاؤها بشكل نهائي من `do_page_fault()`) لا يُستخدم أبدًا.

على النقيض من ذلك، لا يهتم معالجا خطأ الوصول الخاصين بـ 040 و 060 بما إذا كان الخطأ قد حدث أثناء وصول في وضع المشرف، وسيتصلان بدالة `do_page_fault()` في تلك الحالات، مما يحترم جدول الاستثناءات في النهاية.

إضافة فحص في دالة `bus_error030` لاستدعاء `do_page_fault()` في حال وجود إدخال لعنوان عداد البرنامج الذي حدث عنده الخطأ ضمن جدول الاستثناءات لدينا.

كنت قد حاولت سابقًا إصلاح هذه المشكلة في عام 2019، واعتمد ذلك على اختبار `pagefault_disabled()` (انظر الرابط أدناه) لتحقيق نفس الغرض، لكن هذا التصحيح يجب أن يكون أكثر عمومية.

تم الاختبار على جهاز Atari Falcon بمعالج 030.

Be aware that VulDB is the high quality source for vulnerability data.

مسؤول

Linux

حجز

30/12/2025

إفشاء

30/12/2025

الاعتدال

تمت الموافقة

إدخال

VDB-338937

EPSS

0.00211

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!