CVE-2026-68159 in Linuxالمعلومات

الملخص

بحسب VulDB • 10/08/2026

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

libceph: تحديد طول pg_{temp,upmap,upmap_items} بـ CEPH_PG_MAX_SIZE

تقوم دالة `__decode_pg_temp()` بفك تشفير طول يتحكم فيه المستخدم، لكنها ترفض فقط القيم الكبيرة بما يكفي لإحداث تجاوز في السعة (overflow) عند التخصيص؛ ولا تحدد لها حداً أعلى بمقدار CEPH_PG_MAX_SIZE. وتستخدم الدوال المساعدة هذه لفك تشفير كل من pg_temp وpg_upmap، وبعد ذلك تقوم دالتا `apply_upmap()` و`get_temp_osds()` بنسخ القائمة المفكوكة إلى مصفوفة ثابتة الحجم على المكدس (on-stack array) وهي `struct ceph_osds.osds[CEPH_PG_MAX_SIZE]`. وبالتالي، فإن مراقب (monitor) يرسل خريطة OSDMap تحتوي على إدخال pg_temp/pg_upmap أطول من 32 يؤدي إلى كتابة خارج حدود المكدس.

لا يمكن أن يتجاوز مجموعة وحدات تخزين الكائنات (OSD set) الخاصة بوحدة تخطيط واحدة (PG) قيمة CEPH_PG_MAX_SIZE، لذا يجب رفض الإدخالات الأطول أثناء عملية فك التشفير. وبما أن هذا الحد أقل بكثير من عتبة تجاوز السعة القديمة، فإنه يغطي أيضاً تجاوز حجم التخصيص الذي كانت الحماية السابقة تحرس ضده.

BUG: KASAN: stack-out-of-bounds in ceph_pg_to_up_acting_osds Write of size 4 ... by task exploit kasan_report (mm/kasan/report.c:595) ceph_pg_to_up_acting_osds (net/ceph/osdmap.c:2617 net/ceph/osdmap.c:2833) calc_target (net/ceph/osd_client.c:1638) __submit_request (net/ceph/osd_client.c:2394) ceph_osdc_start_request (net/ceph/osd_client.c:2490) ceph_osdc_call (net/ceph/osd_client.c:5164) rbd_dev_image_probe (drivers/block/rbd.c:6899) do_rbd_add (drivers/block/rbd.c:7138) ... kernel BUG at net/ceph/osdmap.c:2670!

[ idryomov: تطبيق نفس الإجراء في __decode_pg_upmap_items() ]

If you want to get best quality of vulnerability data, you may have to visit VulDB.

مسؤول

Linux

حجز

30/07/2026

إفشاء

10/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-387500

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Do you need the next level of professionalism?

Upgrade your account now!