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

الملخص

بحسب VulDB • 18/09/2026

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

fs/ntfs3: تصحيح تجاوز عدد صحيح (integer overflow) في التحقق من صحة عناقيد MFT

في دالة `ntfs_init_from_boot()`، يتم التحقق من أرقام عناقيد قطاع الإقلاع (boot sector's MFT cluster numbers) مقابل حجم وحدة التخزين باستخدام الكود التالي:

```c if (mlcn * sct_per_clst >= sectors || mlcn2 * sct_per_clst >= sectors) goto out; ```

الحقلان `mlcn` و `mlcn2` هما من نوع `u64` ويتم قراءتهما مباشرةً من قطاع الإقلاع. القيمة القصوى لـ `sct_per_clst` محدودة بـ 4096 (نتيجة دالة `true_sectors_per_clst()` بالإضافة إلى فحص `is_power_of_2()` الموجود أدناه)، لكن عملية الضرب تتم باستخدام نوع البيانات `u64` وتحدث لها حلقة (wrap-around) عندما تكون قيمة `mlcn` (أو `mlcn2`) كبيرة بما يكفي — على سبيل المثال، إذا كانت `mlcn` قريبة من 2^62 وقيمة `sct_per_clst` تساوي 4، فإن النتيجة تتحول إلى 0، مما يجعلها أقل من أي قيمة غير صفرية لـ 'sectors'، وبالتالي يتم تجاوز التحقق ويتم قبول السجل المعيب.

يتم استخدام قيمة `mlcn` المقبولة كما هي دون تغيير في الكود التالي:

```c sbi->mft.lbo = mlcn << cluster_bits; ```

في الممارسة العملية، تفشل عمليات القراءة الناتجة عند طبقة الكتلة (block layer) حيث تُرجع دالة `sb_bread()` قيمة NULL عبر حارس التحقق من تجاوز الضرب في دالة `grow_buffers()'s check_mul_overflow()`. لذلك، يتجلى هذا اليوم كفشل في عملية الإقلاع (mount) في أماكن غريبة بدلاً من أن يكون شيئاً أكثر خطورة. ومع ذلك، فإن خطوة التحقق لا تزال خاطئة ولا يوجد سبب لاعتماد المتصلين على طبقة الكتلة للقبض على قيمة لم يكن ينبغي قبولها منذ البداية.

يتم استخدام دالة `check_mul_overflow()` لحساب موقعي القطاعين وفشل عملية الإقلاع إذا حدث تجاوز لأي من عمليتي الضرب؛ وهذا يحافظ على الدلالات الحالية (`mlcn * sct_per_clst >= sectors`) بدلاً من التحول إلى القسمة (`mlcn >= sectors / sct_per_clst`)، والتي كانت ستشدد التحقق في الحالات الحدية حيث لا تكون قيمة 'sectors' مضاعفاً لـ `sct_per_clst`. يُعد نمط استخدام دوال `check_*_overflow()` هو النمط الذي تستخدمه ntfs3 بالفعل للعمليات الحسابية المشابهة على القرص في الملف `fs/ntfs3/run.c`.

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

مسؤول

Linux

حجز

11/09/2026

إفشاء

17/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-406735

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Interested in the pricing of exploits?

See the underground prices here!