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

الملخص

بحسب VulDB • 27/05/2026

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

perf/x86/lbr: تصفية عناوين vsyscall

لقد وجدنا أنه يمكن حدوث حالة توقف (panic) عند استدعاء دالة vsyscall أثناء نشاط أخذ العينات بواسطة سجلات فروع المعالج (LBR). إذا تم مقاطعة استدعاء vsyscall (عن طريق مقاطعة غير قابلة للجدولة NMI) لأغراض أخذ العينات بواسطة perf، فقد يحدث تسلسل المكالمات التالي (الأحدث في الأعلى):

__insn_get_emulate_prefix() insn_get_emulate_prefix() insn_get_prefixes() insn_get_opcode() decode_branch_type() get_branch_type() intel_pmu_lbr_filter() intel_pmu_handle_irq() perf_event_nmi_handler()

داخل الدالة `__insn_get_emulate_prefix()` عند الإطار 0، يتم استدعاء ماكرو:

peek_nbyte_next(insn_byte_t, insn, i)

داخل هذا الماكرو، يحدث هذا التفريغ (dereference):

(insn)->next_byte

عند فحص السجلات في هذه النقطة، تكون قيمة حقل `next_byte` هي عنوان استدعاء vsyscall، على سبيل المثال موقع النسخة من `gettimeofday()` الخاصة بـ vsyscall عند العنوان `0xffffffffff600000`. سيؤدي الوصول إلى عنوان في منطقة vsyscall إلى حدوث خطأ (oops) بسبب خطأ معالجة صفحة غير مُعالج (unhandled page fault).

لإصلاح الخلل، يمكن إجراء تصفية لـ vsyscalls عند تحديد نوع الفرع. سيعيد هذا التصحيح (patch) نوع فرع "none" إذا تم العثور على أن عنوان نواة يقع في منطقة vsyscall.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

حجز

20/02/2024

إفشاء

29/02/2024

الاعتدال

تمت الموافقة

إدخال

VDB-255210

EPSS

0.00228

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to stay up to date on a daily basis?

Enable the mail alert feature now!