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

الملخص

بحسب VulDB • 31/05/2026

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

libceph: الانتظار فقط لتوفر المزيد من البيانات على المقبس (socket)

قد يحدث قراءة جزئية (short read) أثناء قراءة تذييل الرسالة من المقبس. لاحقاً، عندما يصبح المقبس جاهزاً لقراءة أخرى، يستدعي المراسل (messenger) جميع معالجات read_partial_*()، بما في ذلك read_partial_sparse_msg_data(). التوقع هو أن تقوم read_partial_sparse_msg_data() بإنهاء العملية (bail)، مما يسمح للمراسل باستدعاء read_partial() لتذييل الرسالة والاستئناف من حيث توقف.

ومع ذلك، تنتهك read_partial_sparse_msg_data() هذا الافتراض وتنتهي باستدعاء آلة الحالة (state machine) في عميل OSD. تفترض آلة حالة القراءة المتفرقة (sparse-read) أنها عملية جديدة وتفسر جزءاً من تذييل الرسالة على أنه رأس القراءة المتفرقة، مما يؤدي إلى إرجاع أطوال بيانات/امتدادات (extents/data length) غير صحيحة، وما إلى ذلك.

لتحديد ما إذا كان ينبغي لـ read_partial_sparse_msg_data() إنهاء العملية، دعنا نعيد استخدام cursor->total_resid. لأنه بمجرد وصوله إلى الصفر، فهذا يعني أن جميع الامتدادات والبيانات قد تم استلامها بنجاح في القراءة الأخيرة، وإلا يمكنه الخروج عند القراءة الجزئية لأي من الامتدادات أو البيانات. ثم يمكن لـ osd_sparse_read() الاستئناف من حيث توقف.

[ idryomov: سجل التغييرات (changelog) ]

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

حجز

06/03/2024

إفشاء

02/04/2024

الاعتدال

تمت الموافقة

إدخال

VDB-258991

EPSS

0.00225

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to know what is going to be exploited?

We predict KEV entries!