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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-64705 — تحليل السبب الجذري وإثبات المفهوم لـ CVE-2026-64705، وهو تجاوز سعة في كومة نواة macOS HFS xattr. يتضمن صورة HFS+ معبأة بأدوات هجومية، وأداة تصحيح، ومحللاً، وشرحاً تفصيلياً لأغراض البحث التعليمي والدفاعي. | Kitploit
أدوات/GitHubGitHub/eddinos2/cve-2026-64705
أطر الاستغلالتحليل الثغرات الأمنيةالاستغلالتحليل الملفات الثنائيةالتعلم والتعليم
GitHubeddinos2/cve-2026-64705

CVE-2026-64705

تحليل السبب الجذري وإثبات المفهوم لـ CVE-2026-64705، وهو تجاوز سعة في كومة نواة macOS HFS xattr. يتضمن صورة HFS+ معبأة بأدوات هجومية، وأداة تصحيح، ومحللاً، وشرحاً تفصيلياً لأغراض البحث التعليمي والدفاعي.

عرض المستودع
منذ يوم واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-64705 — تجاوز سعة الكومة في امتداد HFS xattr (macOS)

تحليل السبب الجذري وإثبات المفهوم لـ CVE-2026-64705، وهو تجاوز سعة مخزن مؤقت في امتداد نواة HFS الذي تم إصلاحه في macOS Sonoma 14.8.7 (HT127117):

HFS — التأثير: قد يتسبب أحد التطبيقات في إنهاء غير متوقع للنظام أو كتابة في ذاكرة النواة. تمت معالجة تجاوز سعة المخزن المؤقت من خلال تحسين فحوصات الحدود.

إثبات المفهوم هو صورة قرص HFS+ مُسلَّحة. يؤدي تركيبها وقراءة سمة ممتدة مصممة بعناية إلى دفع امتداد HFS kext إلى حلقة bcopy غير محدودة بحجم 64 بايت في مخزن مؤقت للكومة بحجم 512 بايت → تجاوز سعة كومة النواة بمحتوى على القرص يتحكم فيه المهاجم → تعطل (panic) على الإصدارات القابلة للاستغلال. مستوى تعطل/انهيار — وليس تنفيذ كود عن بُعد (RCE).

  • قابل للاستغلال: macOS ≤ 14.8.5 (hfs kext 650.140.2)، وفروع أخرى قبل الإصلاح
  • مُصلَح: macOS 14.8.7 (hfs 650.140.2.701.4) — يضيف فحوصات حمل adds/b.hs، وإنهاء العد الصفري، ورفض total==0 / total>expected
  • سلاسل التصحيح (عقد المدقق): hfs_setxattr: %s has a malformed overflow extent، وكذلك لـ getxattr.

المحتويات

الملفالوصف
poc-cve-2026-64705.dmgصورة HFS+ مُسلَّحة بحجم 32 ميجابايت (ملف تشغيل + سجلات xattr مصممة)
weaponize.pyأداة التصحيح التي بنت الصورة — تعيد اشتقاق كل إزاحة من الصورة نفسها؛ تعمل على أي صورة أساسية متوافقة
parse_attr.pyمحلل شجرة B للسمات المستخدم لتحديد/تفريغ سجلات xattr
BUILD.mdوصفة بناء كاملة من صورة أساسية نظيفة + فروق hex الدقيقة
WRITEUP.mdتحليل السبب الجذري: فرق kext (14.8.5 مقابل 14.8.7)، الحلقة القابلة للاستغلال، الآلية

التشغيل

على نظام قبل الإصلاح (أو جهاز افتراضي قابل للتضحية — هذا يسبب تعطل النواة):

root@kitploit:~
hdiutil attach -nobrowse poc-cve-2026-64705.dmg
xattr -l /Volumes/CVE64705/trigger.txt     # تجاوز سعة كومة النواة -> تعطل

على نظام مُصلَح تُركب نفس الصورة بشكل طبيعي ويتم رفض ملف التشغيل بواسطة المدقق الجديد — يمكنك مشاهدة الإثبات التفاضلي في سجل النواة:

root@kitploit:~
hfs_getxattr: bigattr has a malformed overflow extent

وهذا يؤكد أيضًا أن السجل المصمم يدفع التنفيذ بالضبط إلى مسار الاجتياز المُصلَح (والذي كان سابقًا قابلًا للاستغلال).

إعادة بناء الصورة

root@kitploit:~
hdiutil create -fs HFS+ -size 32m -volname CVE64705 base.dmg
hdiutil attach -nobrowse base.dmg
echo trigger > /Volumes/CVE64705/trigger.txt
xattr -w bigattr "$(head -c 8192 /dev/zero | base64)" /Volumes/CVE64705/trigger.txt
hdiutil detach /Volumes/CVE64705
python3 weaponize.py          # -> poc-cve-2026-64705.dmg

الخلل في فقرة واحدة

بالنسبة لسمة كبيرة مخزنة كـ kHFSPlusAttrForkData، يقوم hfs_getxattr_internal (والمطابق له hfs_setxattr_internal) باجتياز واصفات الامتداد الثمانية لسجل التجاوز. count_extent_blocks() تتخطى أي واصف يتجاوز blockCount الخاص به الإجمالي المتوقع وتُرجع المجموع 32-بت بدون فحص حمل أو صفر. إذا تجاوز كل blockCount الإجمالي، تعود القيمة 0، ولا يتقدم blkcnt أبدًا، وتستمر حلقة while (blkcnt < totalblocks) في نسخ 64 بايت يتحكم بها المهاجم في كل تكرار متجاوزة مخزنًا مؤقتًا للكومة بحجم totalblocks*8 بايت. متغير التفاف الأعداد الصحيحة (blockCounts التي تجمع لتتجاوز 2^32) هو نفس الفحص المفقود؛ إصلاح 14.8.7 يلغي كليهما.

لأغراض تعليمية وبحثية دفاعية. الخلل مُصلَح في macOS الحالي؛ اختبر فقط على أجهزة تملكها.

تنزيل الأداة