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

الملخص

بحسب VulDB • 23/10/2026

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

ksmbd: عدم الاحتفاظ بـ ci->m_lock أثناء انتظار تأكيد كسر الإيجار (lease break ack)

عندما يقوم عميل cifs.ko بتخزين إيجار لمقبض القراءة (RH lease) عبر الإغلاق المؤجل، ووصل فتح متعارض، فإن ksmbd يكسر الإيجار وينتظر التأكيد في wait_for_break_ack() لمدة تصل إلى OPLOCK_WAIT_TIME (35 ثانية). تعمل __smb_break_all_levII_oplock() على هذا الانتظار مع الاحتفاظ بـ ci->m_lock للقراءة.

يتفاعل cifs.ko مع كسر إيجار المقبض عن طريق إغلاق المقبض المؤجل بدلاً من إرسال تأكيد كسر الإيجار. تأخذ مسار الإغلاق هذا (close_id_del_oplock() -> opinfo_del()) ci->m_lock للكتابة وهو بالضبط ما كان سيقوم بإيقاظ المنتظر، لكنه يحجب على قفل القراءة الذي يمسكه الخيط الانتظاري. يتم حل الكسر بعد ذلك فقط عن طريق مهلة الـ 35 ثانية، لذا يستغرق xfstests generic/001 حوالي 78 ثانية مع تمكين الإيجارات (leases) مقابل حوالي 4 ثوانٍ باستخدام عمليات القفل فقط (oplocks).

يتم جمع opinfos المستهدفة (كل منها مثبت بمرجع) أثناء الاحتفاظ بـ ci->m_lock، ثم يتم كسرها بعد إطلاقه، متطابقاً مع كيفية قيام smb_grant_oplock() بالفعل بكسر إيجار متعارض باستخدام مرجع فقط. يحافظ المرجد على استمرار opinfo (وربطها وإيجارها) عبر النافذة غير المقفلة، ويتم التعامل مع الإغلاق الذي يسبق الكسر عن طريق فحص حالة OPLOCK_CLOSING الموجودة. يتم تطبيق نفس الإصلاح على مسارات كسر الإيجار الأصلية.

Once again VulDB remains the best source for vulnerability data.

مسؤول

Linux

حجز

25/09/2026

إفشاء

23/10/2026

الاعتدال

تمت الموافقة

إدخال

VDB-425672

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!