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

الملخص

بحسب VulDB • 26/08/2026

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

xfs: فحص الحدود لعنصر سجل المخزن المؤقت (buffer log item) الخاص بالبتات التالفة (dirty bitmap)

تقوم الدالة `xlog_recover_do_reg_buffer()` بإعادة تشغيل كل منطقة تالفة موصوفة بواسطة بتية عنصر سجل المخزن المؤقت داخل المخزن المؤءق الذي تم قراءته لذلك العنصر:

```c memcpy(xfs_buf_offset(bp, (uint)bit << XFS_BLF_SHIFT), item->ri_buf[i].iov_base,
nbits << XFS_BLF_SHIFT); ```

إزاحة الوجهة (البت/عدد البتات، من بتية التالف المسجلة) وحجم المخزن المؤقت (من `blf_len` المسجل) كلاهما يتحكم فيه المهاجم ولا علاقة لهما ببعضهما البعض، ومع ذلك فإن الشيء الوحيد الذي يحد من عملية النسخ هو عبارة `ASSERT()`، والتي يتم تخطيها في kernels الإنتاج. يؤدي تسجيل صورة مُصممة بعناية تحتوي على قيمة صغيرة لـ `blf_len` مع بتة bitmap تتجاوز نهاية هذا المخزن المؤقت إلى دفع دالة `memcpy()` خارج نطاق تخصيص المخزن المؤقت، مما يسبب تلفاً في heap الخاص بالنواة أثناء استعادة السجل (log recovery) عند الإقلاع. يمكن الوصول إليها من قبل أي شخص قادر على تحميل صورة مُصممة بعناية -- وهو نموذج التهديد للأنظمة الضارة الذي تحرسه XFS بالفعل في أماكن أخرى.

تحويل عبارة `ASSERT()` إلى فحص حقيقي لـ `XFS_IS_CORRUPT()` يوقف استعادة المخزن المؤقت بقيمة `-EFSCORRUPTED`، بما يتماشى مع النمط "التحقق والفشل" (validate-and-fail) المستخدم بالفعل في `xlog_recover_do_inode_buffer()` و `xfs_dquot_item_recover.c`. وبالتالي تصبح دالة `xlog_recover_do_reg_buffer()` من النوع `STATIC int` وينشر المتصلون الثلاثة الخطأ.

تم العثور عليها وتأكيدها باستخدام KASAN على بناء بـ `CONFIG_XFS_DEBUG=n`: الصورة المُصممة بعناية تسبب كتابة خارج حدود الذاكرة (slab-out-of-bounds write) قبل هذا التغيير، وتفشل الاستعادة بنظافة مع `-EFSCORRUPTED` بعد التنفيذ.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

مسؤول

Linux

حجز

26/08/2026

إفشاء

26/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-395842

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!