Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-55781-poc — تخصيص ذاكرة غير محدود في معالج UFS الخاص بـ NanaZip عبر حقل `fs_bsize` الذي يتحكم فيه المهاجم. | Kitploit
أدوات/GitHubGitHub/g17hubh4ck/cve-2026-55781-poc
ماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةالاستغلالالأوراق والأبحاث
GitHubg17hubh4ck/cve-2026-55781-poc

CVE-2026-55781-poc

تخصيص ذاكرة غير محدود في معالج UFS الخاص بـ NanaZip عبر حقل `fs_bsize` الذي يتحكم فيه المهاجم.

عرض المستودع
منذ 3س 52دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2026-55781 — حجب الخدمة (DoS) في محلل UFS الخاص بـ NanaZip

تخصيص ذاكرة غير محدود في معالج UFS الخاص بـ NanaZip عبر حقل fs_bsize الذي يتحكم فيه المهاجم.

الملخص

الحقلالقيمة
CVECVE-2026-55781
الإشعارGHSA-m34h-jf84-m74h
المورّدM2Team / NanaZip
المتأثرNanaZip <= 6.5 Preview (6.5.1742.0)
المُصلَح6.5.1749.0
التصنيفحجب الخدمة (CWE-789: تخصيص الذاكرة بقيمة حجم مفرطة)
المنصةWindows
المؤلفg17hubH4ck
تاريخ الإفصاح2026-07-17

السبب الجذري

يقرأ NanaZip.Codecs.Archive.Ufs.cpp الكتلة الفائقة (superblock) الخاصة بـ UFS ويتحقق من fs_bsize مقابل حد أدنى فقط (MINBSIZE). لا يتم فرض أي حد أعلى قبل استخدام القيمة لتحديد حجم التخصيصات.

عندما يعلن الـ inode الجذري (#2) عن di_size كبير بما يكفي ليتطلب كتل غير مباشرة (indirect blocks)، يخصص المحلل مخزنًا مؤقتًا واحدًا لكل مستوى غير مباشر باستخدام fs_bsize. تعيين fs_bsize = 0x40000000 (1 GiB) و di_size = 0x10000000000 (1 TiB) يفرض ثلاثة تخصيصات بحجم 1 GiB (Ufs.cpp:435-437) — ما يقارب 3 GiB من الذاكرة المتجاورة — قبل تشغيل أي فحص للحدود.

النتيجة: استنفاد الذاكرة وإنهاء العملية. لا يوجد تنفيذ لأي كود.

تخطيط الصورة المُصمَّمة

المنطقةالإزاحةملاحظات
الـ inode الجذري #2512ufs2_dinode، 256 بايت، di_mode = IFDIR، di_size = 1 TiB
الكتلة الفائقة UFS265536 (SBLOCK_UFS2)struct fs، little-endian، fs_bsize = 0x40000000
الحجم الإجمالي66912 بايتSBLOCK_UFS2 + sizeof(struct fs)

حقول الكتلة الفائقة الرئيسية (الإزاحات من offsetof(struct fs, ...) في fs.h الخاص بـ FreeBSD):

الإزاحةالحقلالقيمة
+16fs_iblkno0
+44fs_ncg1
+48fs_bsize0x40000000 ← خبيث
+52fs_fsize1
+56fs_frag1
+104fs_sbsize1376
+1000fs_sblockloc65536
+1372fs_magic0x19540119 (FS_UFS2_MAGIC)

عنوان الـ inode الجذري: GetInodeOffset(2) = fs_iblkno * fs_fsize + 2 * 256 = 512.

الاستخدام

root@kitploit:~
python3 poc.py poc.img

يكتب السكربت الصورة المشوّهة ويعيد تحليلها للتأكد من أن كل حقل استقر حيث يتوقعه المحلل المعرّض للثغرة. لا يوجد وصول للشبكة، ولا عمليات فرعية، ولا حمولة مسلّحة — ملف النقل وحده غير ضار.

التحقق

يمكن فحص الصورة المُنشأة دون NanaZip:

root@kitploit:~
xxd -s 65536 -l 64 poc.img     # superblock header
xxd -s 512   -l 32 poc.img     # root inode header

لملاحظة الانهيار، افتح poc.img باستخدام إصدار معرّض للثغرة على Windows. تتعامل الإصدارات 6.5.1749.0 وما بعدها مع المدخلات بشكل صحيح.

ملاحظة: تم إنشاء هذا PoC عبر التحليل الساكن لمحلل NanaZip.Codecs. يصل إلى السطر المعرّض للثغرة بالضبط كما هو موثق في الإشعار، لكنه لم يُنفَّذ ضد إصدار NanaZip قيد التشغيل.

التخفيف

· الترقية إلى NanaZip >= 6.5.1749.0. · إذا لم يكن الترقية ممكنة، تجنّب فتح صور UFS من مصادر غير موثوقة.

المراجع

· NanaZip: https://github.com/M2Team/NanaZip · الإشعار: GHSA-m34h-jf84-m74h · CWE-789: https://cwe.mitre.org/data/definitions/789.html

إخلاء المسؤولية

تُقدَّم هذه المواد لأغراض البحث الدفاعي وإعادة إنتاج الثغرات في بيئات مُتحكَّم بها فقط. لا تستخدمها ضد أنظمة لا تملكها أو لا تملك إذنًا صريحًا لاختبارها.

تنزيل الأداة