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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-65349 — إثبات مفهوم لكتابة خارج الحدود في دالة vfs_attr_pack_internal (getattrlist) الخاصة بـ XNU على iOS 26.6، مع توضيح تلف كومة النواة وملاحظات استغلال لتزوير مؤشرات PAC. | Kitploit
أدوات/GitHubGitHub/bytev0rtex/cve-2026-65349
أمان iOSتحليل الثغرات الأمنيةالاستغلالالهندسة العكسيةاستغلال الملفات الثنائية
GitHubbytev0rtex/cve-2026-65349

CVE-2026-65349

إثبات مفهوم لكتابة خارج الحدود في دالة vfs_attr_pack_internal (getattrlist) الخاصة بـ XNU على iOS 26.6، مع توضيح تلف كومة النواة وملاحظات استغلال لتزوير مؤشرات PAC.

عرض المستودع
1منذ 9س 40دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-65349 — كتابة خارج الحدود في getattrlist داخل vfs_attr_pack_internal

المكوّن: XNU VFS — vfs_attr_pack_internal (استدعاء النظام getattrlist)
المتأثر: iOS / iPadOS 26.6 (23G71) والإصدارات الأقدم
تم الإصلاح في: iOS / iPadOS 26.6.1 (23G83)
النوع: كتابة خارج حدود المخزن المؤقت للمتصل
التأثير: تلف في كومة النواة؛ من سياق النواة (بعد قراءة/كتابة النواة)، يتيح كتابة مؤشر موقّع بـ PAC إلى مخزن مؤقت يتحكم به المهاجم


الاعتمادات

اكتُشف بواسطة باحث مجهول
(وفقًا لنشرة أمان Apple — iOS 26.6.1)


السبب الجذري

تقوم vfs_attr_pack_internal بالتكرار عبر خريطة البت للسمات المطلوبة وتكتب كل سمة في مخزن المتصل المؤقت بشكل تسلسلي. وهي لا تتحقق مما إذا كان إزاحة الإخراج الجارية قد تجاوزت bufsize قبل كتابة الفتحة 51 (SETXATTR_SLOT).

بالنسبة لملف باسم مكوّن من 16 حرفًا، يكون إجمالي الإخراج الصالح للسمات هو 0x1a4 (420) بايت. تبدأ الفتحة 51 عند الإزاحة 0x198 (408 بايت). عندما يوفّر المتصل مخزنًا أصغر من 0x198 + 8، تكتب النواة 8 بايت بعد نهاية المخزن:

root@kitploit:~
; vfs_attr_pack_internal (المسار المتأثر، 26.6 / 23G71)
; كتابة الفتحة 51 — لا يوجد فحص لحدود قبل التخزين
str  x_attr_data, [buf + 0x198]   ; خارج الحدود إذا كان bufsize < 0x198 + 8

خريطة بت السمات

أقنعة السمات الصالحة التي تم التحقق منها عبر فحص على الجهاز (getattrlist على اسم ملف مكوّن من 16 حرفًا، iOS 26.6):

الحقلالقناع
commonattr0xffe7ffff (البتان 19 و20 غير صالحين على هذه النواة)
fileattr0x0000363f
forkattr0xffffe003

مع هذه الأقنعة على اسم ملف مكوّن من 16 حرفًا، يكون إجمالي الإخراج = 0x1a4 بايت. يحدث الخروج عن الحدود عند الفتحة 51 (buf+0x198) كلما كان bufsize < 0x1a0.


ملاحظات الاستغلال على iOS 26

على iOS 26، تمنع عزل KHEAP_TEMP الكتابة خارج الحدود من إتلاف تخصيصات الكومة المجاورة بشكل مفيد مباشرةً من مساحة المستخدم. يُصنَّف الخطأ على أنه كومة النواة فقط في هذا البحث:

  • من مساحة المستخدم: الكتابة خارج الحدود تصيب مكدس/كومة المستخدم الخاصة بالمُستدعي — يمكن ملاحظتها ولكنها غير قابلة للاستغلال لتصعيد الامتيازات دون بدائية إضافية.
  • من سياق النواة (بعد بدائية كتابة النواة من CVE-2026-64788): كتابة مؤشر موقّع بـ PAC في مخزن نواة عبر إزاحة خارج الحدود، ثم تشغيل vfs_attr_pack_internal من موقع استدعاء مُتحكَم به.

في سلسلة كسر حماية iOS 26.6، يُستخدم هذا الخطأ في المرحلة النهائية لكتابة مؤشر مُزيّف بـ PACIA في تخصيص نواة مجاور لمخزن المُستدعي المؤقت.


سلوك إثبات المفهوم (PoC)

يوضح poc_getattrlist_oob.c حدود الخروج عن الحدود بثلاث استدعاءات:

ينشئ إثبات المفهوم اسم ملف مكوّنًا من 16 حرفًا (/var/root/aaaaaaaaaaaaaaaa) كهدف الاختبار، وينفّذ جميع استدعاءات getattrlist() الثلاثة، ويطبع رموز الإرجاع. سيُظهر سجل انهيار النواة (إذا تم تشغيله) خطأً عند buf+0x198.


المتطلبات

  • iOS 26.6 (23G71) أو إصدار أقدم
  • صلاحية كتابة إلى /var/root/ (لإنشاء ملف الاختبار المكوّن من 16 حرفًا؛ يمكن تعديل المسار إلى أي موقع قابل للكتابة)
  • لا توجد امتيازات مطلوبة

البناء

root@kitploit:~
# ملف C ثنائي مستقل — لا حاجة لأطر عمل
clang -arch arm64 -o poc poc/poc_getattrlist_oob.c

# للجهاز:
clang -arch arm64 -isysroot $(xcrun --sdk iphoneos --show-sdk-path) \
      -o poc poc/poc_getattrlist_oob.c
codesign -s "Apple Development" poc

الجدول الزمني

التاريخالحدث
2026-08-17إصدار iOS 26.6.1 مع الإصلاح
2026-08-17نشر اعتمادات Apple في نشرة الأمان

المراجع

  • نشرة أمان Apple — iOS 26.6.1
تنزيل الأداة
الاستدعاءحجم المخزنالنتيجة المتوقعة
164 بايتتكتب النواة 0x1a4 بايت → خروج عن الحدود عند buf+0x198 (344 بايت بعد النهاية)
20x198 بايتتبدأ الكتابة خارج الحدود تمامًا عند نهاية المخزن
30x1a4 بايتالحجم الصالح الدقيق → نجاح نظيف