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

الملخص

بحسب VulDB • 11/09/2026

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

ceph: تقييد مسار MDSCapAuth وفك تشفير fs_name في handle_session()

يقوم دالة `handle_session()` بفك تشفير سجلات MDSCapAuth التي تحملها رسالة CEPH_SESSION_OPEN (msg_version >= 6). بالنسبة لكل سجل، يتم قراءة سلاسل البايت الخاصة بـ match.path وmatch.fs_name عن طريق فك تشفير طول مكون من 32 بت أولاً، ثم نسخ ذلك العدد من بايتات باستخدام `ceph_decode_copy()` العاري. وعلى عكس الحقول المحيطة التي تستخدم جميعها متغيرات الفك الآمنة (_safe decode variants)، فإن هذين النسخين لا يسبقهما فحص حدود عبر `ceph_decode_need()`، ويتم تخطي حقول struct_len الخاصة بـ MDSCapAuth وMDSCapMatch بدلاً من فرضها كحد أقصى. يؤدي طول أكبر من البايتات المتبقية في مقدمة الرسالة إلى قراءة `ceph_decode_copy()` لما بعد نهاية مخزن المقدمة (front buffer).

مقدمة الرسالة هي تخصيص مخصص (`ceph_msg_new2()` -> `kvmalloc`)، لذا فإن القراءة الزائدة تمتد خارج هذا الكائن. يمكن لـ MDS خبيث أو مُخترق استغلال ذلك باستخدام أول رسالة ما بعد الاتصال أثناء عملية التثبيت (mount)، دون تفاعل من جانب مستخدم العميل؛ وفي ظل KASAN، يتم الإبلاغ عنها على أنها قراءة خارج حدود الذاكرة السلبية (slab-out-of-bounds read) في `handle_session()`.

الأثر: يمكن لـ MDS خبيث إجبار عميل النواة على القراءة حتى 4 جيجابايت ما بعد تخصيص مقدمة الرسالة أثناء إعداد الجلسة، مما يتسبب في تعطل العميل (قراءة خارج الحدود).

تم تحويل كلا العمليتين للنسخ إلى `ceph_decode_copy_safe()`، والتي تقوم بإجراء فحص حدود عبر `ceph_decode_need()` قبل النسخ وتنتقل إلى التسمية الخاطئة الموجودة، متطابقةً مع باقي أجزاء المفسر ومسار الخطأ الذي يحرر مصفوفة cap_auths التي تم فك تشفيرها جزئياً.

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

مسؤول

Linux

حجز

11/09/2026

إفشاء

12/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-402960

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to know what is going to be exploited?

We predict KEV entries!